Java:使用spring-boot + mybatis如何打印SQL日志?

1、pom.xml引入mybatis-spring-boot

XML 复制代码
<dependency>
  <groupId>org.mybatis.spring.boot</groupId>
  <artifactId>mybatis-spring-boot-starter</artifactId>
  <version>2.1.4</version>
</dependency>

2、application.yaml添加log实现

XML 复制代码
mybatis:
  configuration:
    logImpl: org.apache.ibatis.logging.slf4j.Slf4jImpl

除了slf4j外还有其它的日志库可以用,支持的日志库可以在org.apache.ibatis.logging下找到。

3、logback.xml添加appender

XML 复制代码
<logger name="com.example.dao" level="debug" additivity="false">
   <appender-ref ref="fileAppender" />
</logger>

如果底层使用的是logback,则需要添加以上配置。

其中com.example.dao是*.mapper.xml文件中namespace的前缀。这样mapper文件中namespace凡是以com.example.dao开头的,都会转出到文件中。

*.mapper.xml文件举例如下:

XML 复制代码
<mapper namespace="com.example.dao.apiDao">

   <select id="queryList" resultType="...">
      select * from api_info
   </select>

</mapper>

每个SQL都会生成一个StatementLog,它是在org.apache.ibatis.mapping.MappedStatement中创建的。

4、输出的结果

==> Preparing: select * from api_info

==> Parameters:

<== Total: 10

相关推荐
独断万古他化5 分钟前
【SSM开发实战:博客系统】(三)核心业务功能开发与安全加密实现
spring boot·spring·mybatis·博客系统·加密
rannn_11122 分钟前
【苍穹外卖|Day4】套餐页面开发(新增套餐、分页查询、删除套餐、修改套餐、起售停售)
java·spring boot·后端·学习
qq_124987075326 分钟前
基于JavaWeb的大学生房屋租赁系统(源码+论文+部署+安装)
java·数据库·人工智能·spring boot·计算机视觉·毕业设计·计算机毕业设计
短剑重铸之日32 分钟前
《设计模式》第十一篇:总结
java·后端·设计模式·总结
若鱼19191 小时前
SpringBoot4.0新特性-Observability让生产环境更易于观测
java·spring
觉醒大王1 小时前
强女思维:着急,是贪欲外显的相。
java·论文阅读·笔记·深度学习·学习·自然语言处理·学习方法
努力学编程呀(๑•ี_เ•ี๑)1 小时前
【在 IntelliJ IDEA 中切换项目 JDK 版本】
java·开发语言·intellij-idea
码农小卡拉1 小时前
深入解析Spring Boot文件加载顺序与加载方式
java·数据库·spring boot
向上的车轮1 小时前
为什么.NET(C#)转 Java 开发时常常在“吐槽”Java:checked exception
java·c#·.net
Dragon Wu1 小时前
Spring Security Oauth2.1 授权码模式实现前后端分离的方案
java·spring boot·后端·spring cloud·springboot·springcloud