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

相关推荐
Dxy12393102162 小时前
python如何通过链接下载保存视频
python·spring·音视频
Terio_my2 小时前
Java bean 数据校验
java·开发语言·python
超级大只老咪3 小时前
何为“类”?(Java基础语法)
java·开发语言·前端
我笑了OvO3 小时前
C++类和对象(1)
java·开发语言·c++·类和对象
weixin_436525075 小时前
Gitee - IDEA 主支 master 和分支 dev 的使用
java·ide·intellij-idea
sheji34165 小时前
【开题答辩全过程】以 YF精品视频动漫平台为例,包含答辩的问题和答案
java·eclipse
小蕾Java6 小时前
Java 开发工具,最新2025 IDEA 使用
java·ide·intellij-idea
是席木木啊6 小时前
Idea升级到2024版本:“marketplace plugins are not loaded”解决方案
java·ide·intellij-idea
胚芽鞘6816 小时前
博客标题:解密 IntelliJ IDEA 调试:当你的 List 不仅仅是 List
java·ide·intellij-idea
꒰ঌ 安卓开发໒꒱6 小时前
Java面试-并发面试(一)
java·jvm·面试