springboot配置mybatis debug的sql日志输出

文章目录

前置

你使用:

  • springboot
  • java
  • mybatis
  • log4j2 日志

配置

在 src/main/resources/log4j2.xml 中配置 MyBatis Mapper 包的日志级别为 DEBUG,并指定输出目标(控制台或文件)

xml 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">
  <Appenders>
    <!-- 控制台输出 -->
    <Console name="Console" target="SYSTEM_OUT">
      <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss} [%t] %-5level %logger{36} - %msg%n"/>
    </Console>
  </Appenders>

  <Loggers>
    <!-- 根日志级别 -->
    <Root level="INFO">
      <AppenderRef ref="Console"/>
    </Root>

    <!-- MyBatis Mapper 包的 SQL 日志(DEBUG 级别) -->
    <Logger name="com.example.mapper" level="DEBUG" additivity="false">
      <AppenderRef ref="Console"/>
    </Logger>

	<!-- MyBatis 核心日志(DEBUG) -->
        <Logger name="org.mybatis" level="DEBUG" additivity="false">
            <AppenderRef ref="Console"/>
        </Logger>

        <!-- JDBC 底层日志(TRACE,可选) -->
        <Logger name="java.sql" level="TRACE" additivity="false">
            <AppenderRef ref="Console"/>
        </Logger>
  </Loggers>
</Configuration>

additivity="false" 表示不将日志传递给父级 Logger(避免重复输出)

输出样例

复制代码
DEBUG [main] com.example.mapper.UserMapper - ==>  Preparing: SELECT * FROM users WHERE id = ?
DEBUG [main] com.example.mapper.UserMapper - ==> Parameters: 1(Long)
DEBUG [main] com.example.mapper.UserMapper - <==      Total: 1

建议

实际开发中,生产/开发/测试环境,不同的环境对应各自的 log4j2.xml

开发测试环境你可以配置上这个,方便快速定位问题,生产环境不建议开启,开也是临时开启为了排查线上问题

相关推荐
半夏陌离36 分钟前
SQL 拓展指南:不同数据库差异对比(MySQL/Oracle/SQL Server 基础区别)
大数据·数据库·sql·mysql·oracle·数据库架构
叫我阿柒啊37 分钟前
从Java全栈到前端框架:一次真实面试的深度复盘
java·spring boot·typescript·vue·database·testing·microservices
旋转的油纸伞1 小时前
SQL表一共有几种写入方式
数据库·sql
isyoungboy1 小时前
SQL高效处理海量GPS轨迹数据:人员gps轨迹数据抽稀实战指南
数据库·sql
练小杰2 小时前
【Mysql-installer-community-8.0.26.0】Mysql 社区版(8.0.26.0) 在Window 系统的默认安装配置
数据库·sql·mysql·adb·配置文件·mysql安装·关系型数据库
Lris-KK3 小时前
【Leetcode】高频SQL基础题--1164.指定日期的产品价格
sql·leetcode
愿你天黑有灯下雨有伞4 小时前
一种基于注解与AOP的Spring Boot接口限流防刷方案
java·spring boot·后端
知识浅谈4 小时前
Redis哨兵模式在Spring Boot项目中的使用与实践
spring boot·redis·bootstrap
lozhyf5 小时前
能发弹幕的简单视频网站
java·spring boot·后端
十八旬6 小时前
苍穹外卖项目实战(day-5完整版)-记录实战教程及问题的解决方法
java·开发语言·spring boot·redis·mysql