当咱们在排查bug ,须要看执行的完整sql 时,在 console能够拿到如图的sql git
而后手工一个一个的替换问号占位符后,去MySQL 执行,看sql有木有什么问题。若是sql简单,那比较好说, 若是是个复杂sql,手动替换N个问号占位符,这种痛相信你们都经历过。 今天介绍的 mybatis-log-plugin 插件正是解决了这样的痛点。github
intellij 常见的安装插件步奏安装便可,省略,详情自行搜索。sql
<appender name="stdout" class="ch.qos.logback.core.ConsoleAppender"> <target>System.out</target> <encoder> <pattern>%d %p %C:%L - %m%n</pattern> <charset>utf-8</charset> </encoder> <!-- 此日志appender是为开发使用,只配置最底级别,控制台输出的日志级别是大于或等于此级别的日志信息--> <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> <level>debug</level> </filter> </appender> <root level="debug"> <appender-ref ref="stdout" /> </root>
其中下面 pattern 定义了符合 mybatis-log-plugin 要求的输出格式windows
<pattern>%d %p %C:%L - %m%n</pattern>
logback root 节点 设置为 debug level,由于 mybatis 的sql 日志在 debug level才会输出mybatis
在intellij console 选中要恢复的sql 如图: 而后选择
app
最后在 MyBatis Sql Log console 看到最终已替换参数的sql(以下图),直接拿去排查问题,告别手动替换的痛(巴适鼓掌,很是方便)插件
并且你每执行一次 sql调用, MyBatis Sql Log console 都会输出替换后的sql,今后排查问题的效率 飞了起来。debug
感谢 mybatis-log-plugin 做者, github 连接:https://github.com/kookob/mybatis-log-plugin3d