更新時間:2021-06-28 16:16:17 來源:動力節點 瀏覽1484次
springboot基礎mybatis還是很簡單的,比之前springmvc集成mybatis要少很多配置,只要大家按照步驟一步一步來,幾分鐘就能實現。具體做法如下:
在pom文件中添加4個依賴
<!-- 添加mybatis依賴 -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.5</version>
</dependency>
<!--添加mysql驅動-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.47</version>
<scope>runtime</scope>
</dependency>
<!--添加數據庫連接池 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.1.16</version>
</dependency>
<!--代碼簡化工具-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.8</version>
<scope>provided</scope>
</dependency>
</dependencies>
相關配置
在application.yml配置數據源和mybatis相關配置配置數據源配置mapper文件路徑配置mapper別名
server:
port: 8089 # 配置端口
servlet:
context-path: /moyundong # 配置項目名稱
# 配置數據源
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 # 默認別名就是實體類名,或者類名首字母小寫 SysUser | sysUser
創建數據庫表
CREATE TABLE `sys_user` (
`id` varchar(64) NOT NULL COMMENT '主鍵id',
`username` varchar(100) DEFAULT NULL COMMENT '登錄賬號',
`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='用戶表';
創建實體類
在com.moyundong.entity包下創建SysUser實體類,這個實體類與數據庫表sys_user是對應的,sys_user的首字母大寫,去掉下劃線,并且下劃線后面的首字母也要大寫,這樣sys_user表對應的實體類就是SysUser了。
@Data
public class SysUser {
private String id;
private String username;
private String password;
private Date birthday;
private String email;
}
創建dao接口
在com.moyundong.dao目錄下創建相關dao,首先我們創建一個BaseDao,里面可以寫一些公共基礎方法。為了演示,我只寫了兩個方法,一個保存,一個查詢。
public interface BaseDao<T> {
void save(T t);
List<T> findAll();
}
再創建我們的SysUserDao,他繼承了BaseDao,就不用再寫save和findAll方法了,如果還有其它dao,都可以繼承BaseDao
public interface SysUserDao extends BaseDao<SysUser> {
}
創建mapper配置文件
在resource/com/mapper目錄下創建SysUserMapper.xml文件,主要定義了save和findAll兩個方法,內容如下:
<?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>
在com.moyundong.service包下創建SysUserService接口
public interface SysUserService {
void save(SysUser sysUser);
List<SysUser> findAll();
}
創建service實現類
在com.moyundong.service包下創建SysUserServiceImpl類,實現了SysUserService接口,并且注入了sysUserDao實例
@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();
}
}
創建controller
在com.moyundong.controller包下創建SysUserController,里面有兩個方法,save和findAll,并且注入了sysUserService實例
@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();
}
}
啟動類中掃描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);
}
}
測試
啟動Test04Application運行項目。
本節項目目錄結構如下:
以上就是動力節點小編介紹的"springboot整合mybatis",希望對大家有幫助,想了解更多可查看SpringBoot學習視頻,如有疑問,請在線咨詢,有專業老師隨時為您服務。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習