springboot 整合 mybatis
Mybatis github地址 htttps://github.com/mybatis
springboot 官方starter:mybatis-spring-boot-starter
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.4</version>
</dependency>
1.配置模式
-
全局配置文件
-
SqlSessionFactory:自动配置好了
-
SqlSession:自动配置了 SqlSessionTemplate 组合了 SqlSession
-
@Import(AutoConfiguredMapperScannerRegistrar.class)
-
Mapper:只要我们写的操作 Mybatis 的接口标注了 @Mapper 注解,就会被自动扫描进来。
@EnableConfigurationProperties(MybatisProperties.class) @AutoConfigureAfter({DataSourceAutoConfiguration.class,MybatisLanguageDriverAutoConfiguration.class}) public class MybatisAutoConfiguration{} @ConfigurationProperties(prefix = "mybatis") public class MybatisProperties{}
yaml 配置相关
# 配置 mybatis 的规则
mybatis:
# config-location: classpath:mybatis/mybatis-config.xml # 全局配置文件的位置
mapper-locations: classpath:mybatis/mapper/*.xml # mapper接口映射文件的位置
configuration: # 他和全局配置文件只能存在一个
map-underscore-to-camel-case: true
可以不写全局配置文件,所有权据配置文件的配置项都放在 configuration配置项中即可
<!-- 全局配置 -->
<configuration>
<settings>
<!-- 开启驼峰命名规则 -->
<setting name="mapUnderscoreToCamelCase" value="true"/>
</settings>
</configuration>
配置 private Configuration configuration; mybatis.configuration 下的所有,就是相当于全局配置文件的值。
步骤
- 导入mybatis官方starter
- 编写mapper接口,标注@Mapper接口
- 编写sql映射文件并绑定mapper接口
- 在 application.yaml 中编写 Mapper 配置文件的位置,以及指定全局配置文
- 件的信息(建议配置在 mybatis.configuration)
2. 注解模式
了解
用注解的方式编写sql查询
3.混合模式
注解+映射文件
可以在启动类上标注 @MapperScan(“com.test.mapper”) 来扫描包下的所有mapper,不建议。