博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Mybatis批量跟新,XML不同写法的效率比较
阅读量:4098 次
发布时间:2019-05-25

本文共 1899 字,大约阅读时间需要 6 分钟。

写法一:

XML

BEGIN
UPDATE v_cqms_qcsample c SET CQMS_FLAG = '1' where 'XN_' || ID = #{item.ID,jdbcType = VARCHAR}
;END;

service部分代码:

long t1 = System.currentTimeMillis();qcsampleMapper.updateFlagList(qcsampleList);long t2 = System.currentTimeMillis();System.out.println(t2-t1);

执行结果:59645

这种写法的形式是把所有的sql写好后,一起提交给数据库去执行,实际也是一个个子sql更新语句。

方法二

XML:

UPDATE v_cqms_qcsample c SET CQMS_FLAG = '1' WHERE
('XN_' || ID = (#{item.ID,jdbcType = VARCHAR}))

后台打印的sql语句:

UPDATE v_cqms_qcsample c SET CQMS_FLAG = '1' WHERE ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?)) or ('XN_' || ID = (?))

执行结果(同样的49条语句):35681

总的说来,后面执行一条sql语句的效率远高于多条sql语句的执行。还有需要说明的是,这里只是简单的执行啦两种情况,并没有去深究底层原理。为了更灵活的使用mybatis,建议去仔细学习了解mybatis标签,相信会对数据库的操作更得心应手。

 

我是简单,一个爱学习,爱分享的精神小伙。

 

转载地址:http://purii.baihongyu.com/

你可能感兴趣的文章
C++虚函数原理
查看>>
MySQL的索引
查看>>
今天,Python信息量很大!
查看>>
Flash 已死,Deno 当立?
查看>>
编程差的程序员,90%都是吃了数学的亏!骨灰级开发:方法不对,努力也白费...
查看>>
编程差的程序员,90%都是吃了数学的亏!骨灰级开发:方法不对,努力也白费...
查看>>
都无代码了,还要程序员吗?
查看>>
程序员:凭自己能力吃饭,有什么理由瞧不起?
查看>>
面试想拿 10K,HR 说我只配7k?
查看>>
副业过万的程序员都知道的网站有哪些
查看>>
那些人生“开挂”的程序员,都在干什么?
查看>>
影响科学圈的那些计算机代码
查看>>
乐视视频 App 图标改为“欠 122 亿”,网友:我在别家分红包,却在你家随份子!...
查看>>
乔布斯18岁求职信拍卖价22.24万美元,值吗?
查看>>
为何程序员总喜欢写技术博客,看完恍然大悟...
查看>>
假如计算机是中国人发明的,那代码应该这么写
查看>>
科技公司最爱的 50 款开源工具,你都用过吗?
查看>>
触目惊心:比特币到底消耗了多少能源?
查看>>
面试官:简历上敢写技术精通?那我就不客气了!
查看>>
如何判断一家互联网公司要倒闭了?
查看>>