mybatis log4j 在日志中打印sql_SpringBoot整合MyBatis+详细打印执行SQL语句

6ddf72e98725c695513951892be61a86.png

图片来源网路

为啥写这篇文章呢,有人可能会说springBoot的mybatis的starter都有了写这篇文章不是多此一举吗?难道是真的吗?其实我一开始也是使用mybatis的starter的,但是当我需要配置一个让mybatis可以将执行sql语句打印出来的配置时,难到了我,所以才想和大家分享一下springBoot整合MyBatis的方法,如果大家有更好地方法,欢迎讨论。首先看一下项目的目录结构

工程的目录结构

93ce84f13da6ceed9ad2fb8297838535.png

SpringBoot整合Mybatis的思路

1.设置数据源DataSource,我们使用@ConfigurationProperties来加载yml里数据源的配置

2.配置SqlSessionFactory在里面配置加载的xml配置文件和数据源

3.使用@MapperScan来扫描加载DAO层接口

4.在yml中配置相关参数

5.mybatis与数据库对应的文件生成可以参照之前写的还在手写Mybatis的xml文件,那你就OUT了

代码实现

1.引入相关jar

org.mybatis.spring.boot mybatis-spring-boot-starter 1.3.2mysql mysql-connector-java 6.0.6com.alibaba druid 1.0.29org.projectlombok lombok 1.16.18

2.定义一个类,继承DruidDataSource,负责数据源的属性加载和初始化数据源

//为代码清晰去除相关引用@ConfigurationProperties(prefix = DataSourceSettings.PREFIX)@Datapublic class DataSourceSettings extends DruidDataSource { public static final String PREFIX = "druid.dataSource"; private String mapperLocations;}

3.设置扫描mapper的路径和初始化SqlSessionFactoryBean

//为代码清晰去除相关引用@Configuration@MapperScan(basePackages = {"com.example.demo.mapper"})@EnableConfigurationProperties(DataSourceSettings.class)public class DataSourceAutoConfiguration {//DataSourceSettings继承DruidDataSource,所以也是数据源 @Autowired DataSourceSettings settings;//SqlSessionFactoryBean相关配置 @Bean public SqlSessionFactoryBean sqlSessionFactory(ApplicationContext applicationContext) throws IOException { SqlSessionFactoryBean sqlSessionFactory = new SqlSessionFactoryBean();//配置数据源 sqlSessionFactory.setDataSource(settings);//日志主要为打印SQL语句 Properties properties = new Properties(); properties.setProperty("logImpl
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值