简单记录一下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的映射文件哦!
祝您生活愉快!
初学整理的资料,如有错误的地方,还请大佬指点!