Mybatis Log 控制台输出打印SQL语句

4,523 阅读1分钟

前言

业务中有个需求,就是要把一个数据库中的数据按照特定条件转移到另一个数据库中,需要保留运行的SQL语句进行后期的测试与再利用。一个个编写很麻烦且浪费时间,希望能在执行的时候就能在控制台输出SQL语句,然后我再进行复制粘贴(CV工程师)。

Mybatis Log

原本有一个插件叫Mybatis log plugin可以很好的满足我们的需求,可是现在它收费了。我找到了一个它的替代品:Mybatis Log。

这是它的GitHub网址,可进行参考:github.com/Link-Kou/in…

2020.2 以上版本都支持 。

下载安装

首先到它的gitHub上下载jar包:

在这里插入图片描述

然后到我们的IDEA中,选择File——》Settings——》plugins——》install plugin from Disk... 请添加图片描述 选择我们下载的jar包就可以使用了。

使用

首先我们要开启日志。我使用的是Mybatis-plus,在yml中开启了Mybatis-plus的日志。

mybatis-plus:
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl #开启sql日志

在IDEA又下角会有Mybatis Log的图标,项目启动后也可以在控制台右键选择打开。 请添加图片描述 当你有项目中有SQL语句执行时,就会自动打印到Mybatis Log中,而且是格式化好的,SQL语句中的?也会被替换成参数。 在这里插入图片描述

使用中出现的bug

这款软件在我使用中有两个bug,在此说明并提出解决方法。

1、打印的SQL自带-- ==>,无法去除。 在这里插入图片描述

解决方法:把复制后的代码放到word或者NotePad++中进行Ctrl+F替换。

2、点击Mybatis Log左上角的Filter过滤器时,IDEA界面会变暗。

我使用的IDEA是2021.3版本的,点击Filter后IDEA界面会变暗变灰,解决方法是重启IDEA。