mybatis执行慢,sql配置中#与$

  • Post author:
  • Post category:其他


在一个项目中,使用了mybatis,在实验环境中一切正常,在正式环境中数据库量比较大,出现查询慢的情况,是特别慢,但生成的sql在pl/sql中并不慢。困扰了很久(现在也没有完全解决),后来发现是mybatis在生产内部SqlSession时特别耗时(具体原因不明)。将sql配置中部分的#改为$,生产SqlSession就很快了。

在mybatis中使用#相当于jdbc中的?,使用$相当于最直接拼写sql。使用?,不管器参数怎么变,都可以重复利用数据库对sql的分析。可能是这个sql分析过程导致SqlSession生成特别慢。

只说了现象,和初略的解决方式。做个记录,水平高了再分析原因。



版权声明:本文为iteye_19145原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。