简单记录一下spring boot 整合mybatis的步骤
1、创建Maven工程,不需要转war包(spring boot有内置的tomcat,可以直接运行jar包)
2、使用spring boot三步法:
(1)添加parent(继承原因,它能直接管理大部分需要的依赖j的ar包版本,能避免版本冲突,从而不需要parent工程了)
(2)添加初步依赖(这里添加spring boot和整合mybatis的初步依赖)
(3)创建启动类(启动类要额外加注解@MapperScan(basePackages = "com.xxxx.dao" 目的是扫描这个包中的dao接口)
)
3、前面几步完成后,需要创建application.yml文件(也可以是properties文件,但必须是application开头的文件名):
(1)需要配置当前使用环境
(2)在开发环境中配置tomcat端口号(默认8080)
(3)在开发环境中配置注册驱动的相关信息
(4)如果没有采用在resources目录中创建跟dao相同路径的方式,而是直接在resources根目录下创建mappers包存放mapper映射文件的话,需要配置指定mapper文件路径
下面来看具体代码实现:
1、创建Maven工程,不需要转war包(spring boot有内置的tomcat,可以直接运行jar包)
2、使用spring boot三步法:
(1)添加parent(继承原因,它能直接管理大部分需要的依赖j的ar包版本,能避免版本冲突,从而不需要parent工程了)
(2)添加初步依赖(这里添加spring boot和整合mybatis的初步依赖)
(3)创建启动类(启动类要额外加注解@MapperScan(basePackages = "com.xxxx.dao" 目的是扫描这个包中的dao接口)
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.itheima</groupId>
<artifactId>spring-boot-demo04</artifactId>
<version>1.0-SNAPSHOT</version>
<!--版本控制-->
<parent>
<artifactId>spring-boot-starter-parent</artifactId>
<groupId>org.springframework.boot</groupId>
<version>2.3.4.RELEASE</version>
</parent>
<!--spring boot整合web初始依赖-->
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!--spring boot 整合mybatis的初始依赖-->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.0.1</version>
</dependency>
<!--整合mysql初始依赖-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<!--spring boot 整合测试依赖-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
</dependency>
</dependencies>
</project>
启动类(创建在src\main\java\com\xxxx 路径下即可):
//固定注解
@SpringBootApplication
//mybatis扫描dao接口的注解
@MapperScan(basePackages = "com.xxxx.dao")
public class SpringbootApplication {
public static void main(String[] args) {
//固定方法,传两个参数,第一个是这个启动类的字节码文件,第二个是主方法传递过来的
SpringApplication.run(SpringbootApplication.class,args);
}
}
3、前面几步完成后,需要创建application.yml文件(也可以是properties文件,但必须是application开头的文件名):
(1)需要配置当前使用环境
(2)在开发环境中配置tomcat端口号(默认8080)
(3)在开发环境中配置注册驱动的相关信息
(4)如果没有采用在resources目录中创建跟dao相同路径的方式,而是直接在resources根目录下创建mappers包存放mapper映射文件的话,需要配置指定mapper文件路径
#配置环境:/dev:开发环境/pro:上线环境/test:测试环境
spring:
profiles:
active: dev
#---分割,等同于另一个yml文件
---
#配置tomcat端口号
server:
port: 8080
#当前是哪个环境的配置
spring:
profiles: dev
#注册驱动
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://localhost/abc111?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC
username: root
password: xxxx
#指定dao.xml的路径
mybatis:
mapper-locations: classpath:mappers/*Dao.xml
这样,spring boot整合mybatis就完成了,其它什么配置都不需要了,如果想要测试环境是否成功的话,按照这个配置,直接在test中创建测试类,就可以测试了。挂一个测试类吧
@SpringBootTest
@RunWith(SpringRunner.class)
public class TestT {
@Autowired
private ServiceImpl service;
@Test
public void findTest(){
User user = service.findById(1);
System.out.println(user);
}
}
记得要写pojo和service以及dao和mapper的映射文件哦!
祝您生活愉快!
初学整理的资料,如有错误的地方,还请大佬指点!