前言
最近项目组压力测试发现一个BUG,某个分页查询sql在数据量变大之后,在数据库执行正常,在mybatis执行很慢。
一、方案一${index}替换#{index}
代码如下(示例):文章来源:https://www.toymoban.com/news/detail-637840.html
#{参数} 换成 '${参数}'
这样替换之后,确实变快了,但是${}的写法不能防sql注入。
二、方案二#{index,jdbcType=NVARCAHR}替换#{index}
代码如下(示例):
#{参数} 换成 #{参数,jdbcType=NVARCAHR}
这样替换之后,也变快了,也能防sql注入。
总结
以上就是本次BUG的解决过程,原因猜测可能是数据量增长后,执行sql需要花费更多时间确定参数类型,后续有发现再更新。文章来源地址https://www.toymoban.com/news/detail-637840.html
到了这里,关于sql在数据库执行正常在mybatis中执行很慢的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!