Spring Boot配置使用Mybatis

本文介绍SpringBoot环境下MyBatis的配置方法,包括数据源、SQL会话工厂、参数设置、Mapper配置及插件使用等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、开发、测试环境datasource差异化配置
1、使用spring boot的application-dev.properties、application-defualt.properties方式配置,都是使用spring boot的“spring.profiles.active”进行配置
a)在gradle.build中传入“spring.profiles.active”参数,将dev传给boogRun
b)在gradle.build中传入“spring.profiles.active”参数,即spring.profiles.active=dev
2、使用gradle的文件移动功能来实现同一个文件的不同差异化配置
3、自己写一个差异化变量替换的插件来进行打包

二、spring boot的Mybatis配置
1、配置数据源datasource
a)通过xml配置来手动加载
b)通过application-xxx.properties配置来让spring boot自动加载

2、spring boot配置mybatis
都是使用spring boot的MybatisAutoConfiguration在启动过程中注册mybatis组件

3、mybatis配置sqlSessionFactory,如datasource等
a)spring boot自动注入的mybatis默认使用自动加载的datasource
b)通过xml文件手动加载datasource,如<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
c)使用MyBatisConfig等javaBean手动配置,如SqlSessionFactoryBean sqlsession = new SqlSessionFactoryBean(); sqlsession.setDataSource(dataSource);

4、mybatis配置相应参数
a)直接通过application.properties中配置,如mybatis.configuration.mapUnderscoreToCamelCase=true
b)在application.properties里通过指定mybatisConfig.xml位置来注入,如<setting name="mapUnderscoreToCamelCase" value="true" />
c)在MyBatisConfig的javaBean里通过Configuration来注入,如org.apache.ibatis.session.Configuration configuration=new org.apache.ibatis.session.Configuration(); configuration.setMapUnderscoreToCamelCase(true);

5、mybatis配置mapper
a)application.properties中配上mapper的bean或xml位置,如mybatis.mapper-locations=classpath:mapper/*.xml
b)通过MyBatisConfig手动配置mapper的beanxml位置,如sqlsession.setMapperLocations(resolver.getResources("classpath:mybatis-mapper/*.xml"));
c)mybatisConfig.xml文件中指定mapper的bean或xml位置,如<property name="mapperLocations" value="mapper/*.xml"></property>

6、mybatis配置generator
a)?在application.properties中配上mapper的bean或xml位置,待研究
b)?通过MyBatisConfig手动配置mapper的beanxml位置,待研究
c)?mybatisConfig.xml文件中指定mapper的bean或xml位置,待研究


7、mybatis使用通用Mapper插件
在SqlSessionFactoryBean中增加通用Mapper插件,即将MapperScannerConfigurer和SqlSessionFactoryBean进行绑定,如mapperScannerConfigurer.setSqlSessionFactoryBeanName("sqlSessionFactory");,通用Mapper插件的MapperScannerConfigurer继承了mybatis自带的MapperScannerConfigurer方法,在其基础上增加了一些便捷的新功能。
a)在MybatisAutoConfiguration自动加载后执行MapperScannerConfigurer,指定mapper的BasePackage和MybatisBaseMapper
b)?通过MyBatisConfig手动配置,待研究
c)?application.properties中配置,待研究
d)mybatisConfig.xml文件中配置,待研究


8、mybatis使用分页PageHelper插件
在SqlSessionFactoryBean中增加分页PageHelper插件,即将某Configurer功能和SqlSessionFactoryBean进行绑定,sqlsession.setPlugins(new Interceptor[]{pageHelper});
a)?在MybatisAutoConfiguration自动加载后执行某方法类,待研究
b)?通过MyBatisConfig手动配置,待研究
c)?在application.properties中配置,待研究
d)?在mybatisConfig.xml文件中配置,待研究

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值