springboot整合mybatis在控制台打印sql语句的办法及MyBatis Log Plugin插件的安装与使用

Posted 社会大哥

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springboot整合mybatis在控制台打印sql语句的办法及MyBatis Log Plugin插件的安装与使用相关的知识,希望对你有一定的参考价值。

一.SpringBoot整合完Mybatis后,方法执行完后看不到sql语句,很影响我们的调试,下面就来介绍下如何在控制台打印sql:

分两种情况:

1.配置文件是application.properties类型的:

logging.level.com.example.demo.mapper=debug
mybatis.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl

注意:logging.level.com,后面的路径指的是mybatis对应的方法接口所在的包。并不是mapper.xml所在的包

2.配置文件是application.yml类型的:

logging:
  level:
    com.example.demo.mapper: debug

mybatis:
  type-aliases-package: com.example.**.entity
  mapper-locations: classpath:mapper/*.xml
  #用于mybatis在控制台打印sql日志
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

参考类:org.apache.ibatis.session.Configuration

测试是否成功:

发送请求:

查看控制台结果:

至此,发现了控制台中打印出了sql语句,但是由于避免出现SQL注入,大部分情况下都是使用#{}占位符的方式传参。所以日志打印SQL时,打印的也是占位符,

如果SQL比较复杂,参数又很多的话,要通过日志拼凑真正可执行的SQL还是件比较头痛的事情。好在IDEA有款很不错的插件(Mybatis Log Plugin)可以解决上述问题

二.MyBatis Log Plugin插件的安装与使用

插件安装:

和其他插件一样MyBatis Log Plugin插件的安装也是两种方式:在线和离线安装

离线安装:可从:http://plugins.jetbrains.com/plugin/10065-mybatis-log-plugin/versions,下载离线包。然后在Plugins设置界面,Install plugin from desk即可。

选择你现在的离线包所在路径即可。

在线安装:file-----settings-----plugins------在插件安装商店搜索MyBatis Log Plugin-----install即可,install后重启idea

点击tools发现安装成功如下图:

运行MyBatis Log Plugin,如下图,发现在run窗口旁多了一个我们添加的窗口;

重新发送刚才的请求,发现在MyBatis Log中打印出了sql:

 这样,在遇到问题的时候,直接把这段SQL拿去数据库中调试,大大提高了开发效率~~~

本文转自:https://blog.csdn.net/zhang_zhenwei/article/details/102487226

以上是关于springboot整合mybatis在控制台打印sql语句的办法及MyBatis Log Plugin插件的安装与使用的主要内容,如果未能解决你的问题,请参考以下文章

springboot整合mybatis将sql打印到日志(转)

springboot 项目整合 mybatis 打印 SQL 语句方法

springboot配置Log4j(将输出日志打印在控制台)

SpringBoot整合Log日志打印SQL问题

SpringBoot系列七:SpringBoot 整合 MyBatis(配置 druid 数据源配置 MyBatis事务控制druid 监控)

SpringBoot+MyBatis+Mysql+Durid实现动态多数据源