更新時(shí)間:2021-06-28 16:16:17 來源:動(dòng)力節(jié)點(diǎn) 瀏覽1597次
springboot基礎(chǔ)mybatis還是很簡(jiǎn)單的,比之前springmvc集成mybatis要少很多配置,只要大家按照步驟一步一步來,幾分鐘就能實(shí)現(xiàn)。具體做法如下:
在pom文件中添加4個(gè)依賴
<!-- 添加mybatis依賴 -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.5</version>
</dependency>
<!--添加mysql驅(qū)動(dòng)-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.47</version>
<scope>runtime</scope>
</dependency>
<!--添加數(shù)據(jù)庫連接池 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.1.16</version>
</dependency>
<!--代碼簡(jiǎn)化工具-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.8</version>
<scope>provided</scope>
</dependency>
</dependencies>
相關(guān)配置
在application.yml配置數(shù)據(jù)源和mybatis相關(guān)配置配置數(shù)據(jù)源配置mapper文件路徑配置mapper別名
server:
port: 8089 # 配置端口
servlet:
context-path: /moyundong # 配置項(xiàng)目名稱
# 配置數(shù)據(jù)源
spring:
datasource:
type: com.alibaba.druid.pool.DruidDataSource
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/springbootdata
username: root
password: root
# 配置mybatis
mybatis:
mapper-locations: classpath:com/mapper/*.xml # mybatis的路徑,我們放到resources下的com/mapper文件夾下面
type-aliases-package: com.moyundong.entity # 默認(rèn)別名就是實(shí)體類名,或者類名首字母小寫 SysUser | sysUser
創(chuàng)建數(shù)據(jù)庫表
CREATE TABLE `sys_user` (
`id` varchar(64) NOT NULL COMMENT '主鍵id',
`username` varchar(100) DEFAULT NULL COMMENT '登錄賬號(hào)',
`password` varchar(255) DEFAULT NULL COMMENT '密碼',
`birthday` datetime DEFAULT NULL COMMENT '生日',
`email` varchar(100) DEFAULT NULL COMMENT '電子郵件',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用戶表';
創(chuàng)建實(shí)體類
在com.moyundong.entity包下創(chuàng)建SysUser實(shí)體類,這個(gè)實(shí)體類與數(shù)據(jù)庫表sys_user是對(duì)應(yīng)的,sys_user的首字母大寫,去掉下劃線,并且下劃線后面的首字母也要大寫,這樣sys_user表對(duì)應(yīng)的實(shí)體類就是SysUser了。
@Data
public class SysUser {
private String id;
private String username;
private String password;
private Date birthday;
private String email;
}
創(chuàng)建dao接口
在com.moyundong.dao目錄下創(chuàng)建相關(guān)dao,首先我們創(chuàng)建一個(gè)BaseDao,里面可以寫一些公共基礎(chǔ)方法。為了演示,我只寫了兩個(gè)方法,一個(gè)保存,一個(gè)查詢。
public interface BaseDao<T> {
void save(T t);
List<T> findAll();
}
再創(chuàng)建我們的SysUserDao,他繼承了BaseDao,就不用再寫save和findAll方法了,如果還有其它dao,都可以繼承BaseDao
public interface SysUserDao extends BaseDao<SysUser> {
}
創(chuàng)建mapper配置文件
在resource/com/mapper目錄下創(chuàng)建SysUserMapper.xml文件,主要定義了save和findAll兩個(gè)方法,內(nèi)容如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.moyundong.dao.SysUserDao">
<insert id="save" parameterType="sysUser">
INSERT INTO sys_user VALUES (#{id},#{username},#{password},#{birthday},#{email})
</insert>
<select id="findAll" resultType="SysUser">
SELECT id,username,password,birthday,email from sys_user
</select>
</mapper>
創(chuàng)建service接口
在com.moyundong.service包下創(chuàng)建SysUserService接口
public interface SysUserService {
void save(SysUser sysUser);
List<SysUser> findAll();
}
創(chuàng)建service實(shí)現(xiàn)類
在com.moyundong.service包下創(chuàng)建SysUserServiceImpl類,實(shí)現(xiàn)了SysUserService接口,并且注入了sysUserDao實(shí)例
@Service
@Transactional
public class SysUserServiceImpl implements SysUserService {
@Autowired
private SysUserDao sysUserDao;
@Override
public void save(SysUser sysUser) {
sysUser.setId(UUID.randomUUID().toString());
sysUserDao.save(sysUser);
}
@Override
public List<SysUser> findAll() {
return sysUserDao.findAll();
}
}
創(chuàng)建controller
在com.moyundong.controller包下創(chuàng)建SysUserController,里面有兩個(gè)方法,save和findAll,并且注入了sysUserService實(shí)例
@RestController
@RequestMapping("sysUser")
public class SysUserController {
@Autowired
private SysUserService sysUserService;
@RequestMapping("save")
public String save(SysUser sysUser){
sysUserService.save(sysUser);
return "添加成功";
}
@RequestMapping("findAll")
public Object findAll(){
return sysUserService.findAll();
}
}
啟動(dòng)類中掃描dao
入口類Test04Application加上 MapperScan("com.moyundong.dao")注解來掃描dao包
@SpringBootApplication
@MapperScan("com.moyundong.dao")
public class Test04Application extends SpringBootServletInitializer {
public static void main(String[] args) throws UnknownHostException {
SpringApplication.run(Test04Application.class, args);
}
}
測(cè)試
啟動(dòng)Test04Application運(yùn)行項(xiàng)目。
本節(jié)項(xiàng)目目錄結(jié)構(gòu)如下:
以上就是動(dòng)力節(jié)點(diǎn)小編介紹的"springboot整合mybatis",希望對(duì)大家有幫助,想了解更多可查看SpringBoot學(xué)習(xí)視頻,如有疑問,請(qǐng)?jiān)诰€咨詢,有專業(yè)老師隨時(shí)為您服務(wù)。
相關(guān)閱讀
0基礎(chǔ) 0學(xué)費(fèi) 15天面授
有基礎(chǔ) 直達(dá)就業(yè)
業(yè)余時(shí)間 高薪轉(zhuǎn)行
工作1~3年,加薪神器
工作3~5年,晉升架構(gòu)
提交申請(qǐng)后,顧問老師會(huì)電話與您溝通安排學(xué)習(xí)
初級(jí) 202925
初級(jí) 203221
初級(jí) 202629
初級(jí) 203743