在 Java + MyBatis 中,打印 SQL 日志常见有几种方式,下面按「最常用 → 进阶」给你总结。
MyBatis 支持多种日志实现,默认会自动查找:
mybatis-config.xml
<settings>
<setting name="logImpl" value="STDOUT_LOGGING"/>
</settings>
✅ 效果:
==> Preparing: SELECT * FROM user WHERE id = ?
==> Parameters: 1(Integer)
<== Total: 1
application.yml
logging:
level:
com.example.mapper: debug
或 logback.xml
<logger name="com.example.mapper" level="DEBUG"/>
✅ 会打印:
mybatis-config.xml
<settings>
<setting name="logImpl" value="LOG4J2"/>
</settings>
log4j2.xml
<Logger name="com.example.mapper" level="debug"/>
mybatis:
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
或
logging:
level:
com.xxx.mapper: debug
logging:
level:
org.apache.ibatis: DEBUG
org.mybatis: DEBUG
@MapperScan必须 DEBUG 级别
| 场景 | 推荐 |
|---|---|
| 学习 / 测试 | STDOUT_LOGGING |
| Spring Boot | SLF4J + DEBUG |
| 生产环境 | 关闭或只开 ERROR |
如果你用的是 Spring Boot / MyBatis-Plus / XML / 注解,可以告诉我,我给你更精确的配置。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。