SpringBoot3整合mybatis
一、添加mybatis的依赖
<!--mybatis-->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>3.0.3</version>
</dependency>
<!--MySQL数据库-->
<dependency>
<groupId>com.mysql</groupId>
<artifactId>mysql-connector-j</artifactId>
<scope>runtime</scope>
</dependency>
二、通过XML配置
- 编写 mybatis-config.xml 核心配置文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<settings>
<!--开启mybatis的标准日志-->
<setting name="logImpl" value="STDOUT_LOGGING"/>
<!--开启数据库字段到Java实体类属性的映射-->
<setting name="mapUnderscoreToCamelCase" value="true"/>
<!--开启全局懒加载-->
<setting name="lazyLoadingEnabled" value="true"/>
</settings>
<typeAliases>
<!--为Pojo包中的所有实体类取别名-->
<package name="com.gdb.springbootmybatis.pojo"/>
</typeAliases>
<mappers>
<!--sql映射⽂件创建好之后,需要将该⽂件路径配置到这⾥-->
<package name="com.gdb.springbootmybatis.mapper"/>
</mappers>
</configuration>
三、通过yum或properties文件配置
MyBatis
的配置项,在applicaion
文件中"mybatis"
开头进行设置。- 常用设置:
# XXXmapper.xml 文件的位置 mybatis.mapper-locations=com/gdb/springbootmybatis/mapper/*.xml # 设置输出日志 mybatis.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl # 延迟加载 mybatis.configuration.lazy-loading-enabled=true #驼峰命名 mybatis.configuration.map-underscore-to-camel-case=true # 别名机制 mybatis.type-aliases-package=com.gdb.springbootmybatis.pojo
四、常用注解
1.@Mapper
- ① 使用
@Mapper
将XXXMapper
接口交给Spring
进行管理。 - ② 为这个
XXXMapper
接口生成一个动态代理实现类,让别的类进行引用。
2.@MapperScan
- 当我们的一个项目中存在多个
Dao
层接口的时候,此时我们需要对每个接口类都写上@Mapper
注解,非常的麻烦,此时可以使用@MapperScan("Mapper接口层路径")
注解来解决这个问题。让这个接口进行一次性的注入,不需要再写@Mapper
注解。 @MapperScan
注解写在SpringBoot
的启动类(配置类)上。
注意:接口不可以定义重名方法,即不支持方法重载。
五、配置连接池
1.配置druid连接池
-
① 添加依赖
<!--德鲁伊连接池配置--> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>1.2.21</version> </dependency>
-
② 设置数据源
spring: datasource: type: com.alibaba.druid.pool.DruidDataSource
- 和 druid 连接池相关的参数设置在
spring.datasource.druid.
可以选择进行响应的设置
- 和 druid 连接池相关的参数设置在
-
③ 启动控制台输出如下,表示配置成功
2024-03-17T23:56:10.035+08:00 INFO 18444 --- [nio-8800-exec-1] com.alibaba.druid.pool.DruidDataSource : {dataSource-1} inited