最近小弟在公司的要求下把项目的 SQL 适配到其他数据库上。 之前没搞过 Java,听同事稍微的讲了一下。 经了解项目是 SQL 用 MyBatis ,现在项目下有好多的 Mapper.xml 的 SQL 模板文件。 请问大家这 Mapper 怎么能把生成出来的 SQL 打印出来。 有什么好的办法我想学习一下
简单版: 配置里面加 mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl 可以打印出 sql 模板和参数 复杂版: https://github.com/p6spy/p6spy
看你们使用的什么日志实现。因为 Log4j 有安全漏洞,所以大概是三四年前之后,基本上都让换成 logback+slf4j 的日志打印方式了。 这里又有分叉,一个是 logback 配置里没有配置日志打印 level 的,这个的话一般在 application.yml 或者 application.properties 里可以设置。 另外一种是在 logback-spring.xml 里进行配置。这里又有分叉了,好多种可以修改打印日志级别的情况,说两个比较常规的,一个在该文件里找标签里包含 ch.qos.logback.core.ConsoleAppender 或者带 console 的,去看日志打印级别是否是 INFO ,修改为 DEBUG 即可。一个是标签里的打印级别。 还有一种情况就是 mybatis 配置的日志实现
其实我是想直接把 SQL 给弄出来,不想去执行,因为还有一个要求是写个文档,领导要看,我要是执行的来说,里面有好多的判断啥的,得处理好多得查询条件。 @wymisgod @liuzhedash @qq135449773