一 :依赖
<!-- mybatis -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.2</version>
</dependency>
<!-- mysql -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
二:配置
application.yml(方法一)
spring:
datasource:
url: jdbc:mysql://localhost:3306/sg_security?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true
username: root
password: root
driver-class-name: com.mysql.cj.jdbc.Driver
# 注意:mybatis配置应顶格写
mybatis:
# 配置SQL映射文件路径 (用于分包路径)
mapper-locations: classpath*:com/example/demo_project/**/mapper/*.xml
# 配置SQL映射文件路径 (resources下的 mapper)
# mapper-locations: classpath:/mapper/*.xml
# 开启驼峰命名
configuration:
mapUnderscoreToCamelCase: true
application.properties(方法二)
# 数据源
spring.datasource.url=jdbc:mysql://localhost:3306/test_db?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true
spring.datasource.username=root
spring.datasource.password=root
# 配置SQL映射文件路径 (用于分包路径)
mybatis.mapper-locations=classpath*:com/example/demo_project/**/mapper/*.xml
# 配置SQL映射文件路径 (resources下的 mapper)
# mybatis.mapper-locations=classpath:/mapper/*.xml
# 驼峰命名
mybatis.configuration.map-underscore-to-camel-case=true
#
mybatis.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
三:包扫描
方法一:
在用到的Dao接口上添加@mapper注解。
方法二:
分包写法:在启动类上添加@MapperScan(“com/example/demo_project/**/dao”)注解。
不分包写法:在启动类上添加@MapperScan(“com.example.demo_project.dao”)。
四:加载sq映射
如果不分包,不需要这步,因为采用分包,需要修改pom文件,让程序可以识别到xml文件
<build>
<!--mybatis加载配置文件-->
<resources>
<resource>
<directory>src/main/resources</directory>
</resource>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
五:事务
//启动类上注解 全局事务
@EnableTransactionManagement(proxyTargetClass = true)
//需要的service层注解
@Transactional
最后创建一个接口,测试是否整合成功。