查询oracle数据库中的一张表,在DataGrip中执行sql查询3万条数据大概需要1秒左右,但是通过mybatis查询时时间很长在8-10秒。
优化方式:在select标签中增加fetchSize属性,将值设置为20000,此时查询时间缩短到了500毫秒,效果明显,fetchSize的大小还是要根据实际情况来设置。
第一次使用fetchSize参数,查阅文档了解到通过JDBC取数据时,默认是10条数据取1次,即fetch size的默认值为10(oracle的文档中fetchSize的默认值是10),增加这个数字可以减少客户端与oracle的交互,减少响应时间,网上有建议这个数字不要超过100,要不然对中间件的内存消耗增大