SpringBoot 开发小技巧 - 打印 Mybatis 中的 sql 语句

发布于 2024-08-30 23:38:35 字数 1326 浏览 28 评论 0

我们平常在开发 SpringBoot+Mybatis 项目时,有时会需要打印 sql 的执行语句

使用

application.yml

如果项目使用的时 yml 配置,则:

mybatis:
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

logging:
level:
com:
xxxxx:
dao: debug

application.properties

如果项目使用的时 properties 配置,则:

mybatis.configuration.log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
logging.level.com.xxxxx.dao=debug

注意包名路径应为 mybatis 对应的方法接口所在的包,而不是 mapper.xml 所在的包

即可在控制台中打印 sql 语句:

==>  Preparing: SELECT user_change_bind_log_id,user_id,last_bind,bind,bind_type,log_time FROM user_change_bind_log WHERE user_id=? AND bind_type=? AND log_status=0 ORDER BY log_time DESC LIMIT ? 
==> Parameters: 100023(Integer), device(String), 10(Integer)

注意上线时需要去除打印,可以用 application-xx 实现

推荐使用 idea 插件

MyBatis Log Plugin

这款插件可以把 Mybatis 输出的 SQL 日志还原成完整的 SQL 语句,就不需要我们去手动转换了(如何配置,百度一下)

Free MyBatis plugin

非常好用的 MyBatis 插件,对 MyBatis 的 xml 具有强大的提示功能,同时可以关联 mapper 接口和 mapper.xml 中的 sql 实现

  • 可以通过 Mapper 接口中方法左侧的箭头直接跳转到对应的 xml 实现中去
  • 也可以从 xml 中 Statement 左侧的箭头直接跳转到对应的 Mapper 接口方法中去
  • 还可以通过 Alt+Enter 键组合直接生成新方法的 xml 实现

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

0 文章
0 评论
22 人气
更多

推荐作者

我们的影子

文章 0 评论 0

素年丶

文章 0 评论 0

南笙

文章 0 评论 0

18215568913

文章 0 评论 0

qq_xk7Ean

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文