spring boot 集成 mybatis

2333

记录一下

一)、添加依赖包

<!-- java 连接 mysql 的驱动包 --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> <version>8.0.13</version> </dependency> <!-- 这里使用的是 druid 数据库连接池 --> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>1.1.10</version> </dependency> <!-- 添加 mybatis 依赖包 --> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.0.1</version> </dependency>

二)、增加配置

#================================== # mysql连接配置 #================================== # 使用 druid 连接池 spring.datasource.type=com.alibaba.druid.pool.DruidDataSource spring.datasource.druid.driver-class-name=com.mysql.cj.jdbc.Driver spring.datasource.druid.url=jdbc:mysql://xxx.xxx.xxx.xxx:3307/blog?serverTimezone=Asia/Shanghai&useSSL=false&characterEncoding=utf8 spring.datasource.druid.username= xxxxxx spring.datasource.druid.password= xxxxx #================================== # mybatis 配置 #================================== mybatis.config-location=classpath:mybatis/mybatis-config.xml mybatis.mapper-locations=classpath:mybatis/mapper/*Mapper.xml mybatis.type-aliases-package=com.isyxf.redis.entity #================================== # 返回数据配置 #================================== # 全局配置时间戳返回格式 spring.jackson.date-format=yyyy-MM-dd HH:mm:ss # 设置时区 spring.jackson.time-zone=GMT+8 # 全局配置接口不返回值为 null 字段,也可以通过给实体添加注解:@JsonSerialize(include=JsonSerialize.Inclusion.NON_NULL) spring.jackson.default-property-inclusion=non_null

在上面的 mybatis 配置中, MyBatis 的解析程序会将 mybatis-config.xml 文件配置的信息解析到 Configuration 类对象里面,然后利用 SqlSessionFactoryBuilder 读取这个对象为我们创建 SqlSessionFactory。

①、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> <setting name="mapUnderscoreToCamelCase" value="true"/> </settings> <!-- 设置类别名 --> <typeAliases> <typeAlias alias="Integer" type="java.lang.Integer" /> <typeAlias alias="Long" type="java.lang.Long" /> <typeAlias alias="HashMap" type="java.util.HashMap" /> <typeAlias alias="LinkedHashMap" type="java.util.LinkedHashMap" /> <typeAlias alias="ArrayList" type="java.util.ArrayList" /> <typeAlias alias="LinkedList" type="java.util.LinkedList" /> <typeAlias type="java.lang.String" alias="String"/> <typeAlias alias="Date" type="java.util.Date"/> </typeAliases> </configuration>

②、添加对应的 mapper、entity、dao 类型文件包

③、完成以上,需要在启动类里加上注解用于给出需要扫描的mapper文件路径@MapperScan(“com.example.mapper”)

配置问题

在配置之前我们先查看一些差异的问题

参考文章