快盘下载:好资源、好软件、快快下载吧!

快盘排行|快盘最新

当前位置:首页软件教程电脑软件教程 → mybatis日志打印大杀器

mybatis日志打印大杀器

时间:2022-09-30 13:32:09人气:作者:快盘下载我要评论

文章目录

前言MybatisLogFormat选项一选项二缺点 Mybatis Log Free总结

前言

各位精通CRUD的老司机;相信大家在工作中mybatis或者mybatisplus使用的肯定是比较多的;那么大家或多或少都应该对下面的行为感到熟悉。我们排查问题的时候;从日志中复制出来的SQL参数位置都是使用?占位的;我们需要将一个一个的参数手动赋值到?的位置;随后该SQL才能放到数据库中正确执行。对于这样的操作;一次两次尚可接受;多了就会让人对于这种机械性的操作很是反感。那么;对于这个问题有没有比较好的解决方案呢?答案还真有;今天就给大家推荐两款不错的IDEA插件;这两款插件笔者也都使用过。

注;通常mybaits日志打印大概如下图示;一行是?占位的SQL;一行是各个参数值
mybatis日志打印大杀器

MybatisLogFormat

这款插件可在IDEA的插件市场中搜索到并直接安装。使用的时候直接选中SQL行以及参数行;就是上面图示中红框圈出来的两行;鼠标点击右键;此时会弹出来一个对话框。

选项一

点击这个选项;会在右下角弹出一个小框;同时有个copy的按钮供你点击;一点击参数化的SQL就被复制到了你的剪切板;不过不是美化之后的格式。
mybatis日志打印大杀器

update ;t_student; set ;name; = case when ;id; = 1 then 张三 when ;id; = 2 then 李四 when ;id; = 3 then 王五 when ;id; = 4 then 赵六 end, ;age; = case when ;id; = 1 then 40 when ;id; = 2 then 34 when ;id; = 3 then 55 when ;id; = 4 then 76 end where ;id; in ( 1 , 2 , 3 , 4 )

选项二

点击这个选项;参数化后的SQL直接被复制到你的剪切板;而且是美化之后的格式。

UPDATE ;t_student;
SET ;name; = CASE 
	WHEN ;id; = 1 THEN 张三
	WHEN ;id; = 2 THEN 李四
	WHEN ;id; = 3 THEN 王五
	WHEN ;id; = 4 THEN 赵六
END, ;age; = CASE 
	WHEN ;id; = 1 THEN 40
	WHEN ;id; = 2 THEN 34
	WHEN ;id; = 3 THEN 55
	WHEN ;id; = 4 THEN 76
END
WHERE ;id; IN (1, 2, 3, 4)

缺点

好像对字符串的支持不太完美;没有给字符串值加上 ’ 号;需要我们自己补全否则会报错。

Mybatis Log Free

这款插件可在IDEA的插件市场中搜索到并直接安装。使用的时候先在console控制台鼠标点击右键;在弹出的对话框中选择Mybatis Log Plugin选项;此时会出现Mybatis Log的专属控制台;之后程序运行中的参数化SQL就会直接打印在专属控制台中。
mybatis日志打印大杀器
mybatis日志打印大杀器
我们运行测试程序;观察出现在控制台中的SQL。

mybatis日志打印大杀器
由此可见;参数化SQL被正确打印;而且对于不同字段类型处理正确;比如字符串值自动用 ’ 进行包裹;SQL可直接放到数据库中执行;非常完美。

总结

Mybatis Log Free插件和MybatisLogFormat插件都能起到类似的作用;简化我们的工作。Mybatis Log Free插件似乎对于参数的处理更准确一点;当然也可能是我不太会用MybatisLogFormat插件;所以我现在就是使用Mybatis Log Free插件多一些。自测Mybatis Log Free插件对于mybatisplus同样适用。

网友评论

快盘下载暂未开通留言功能。

关于我们| 广告联络| 联系我们| 网站帮助| 免责声明| 软件发布

Copyright 2019-2029 【快快下载吧】 版权所有 快快下载吧 | 豫ICP备10006759号公安备案:41010502004165

声明: 快快下载吧上的所有软件和资料来源于互联网,仅供学习和研究使用,请测试后自行销毁,如有侵犯你版权的,请来信指出,本站将立即改正。