如果程序的SQL本身资源计划已经调到最优,但后台的查询语句依旧慢的可怜,这个可以检查一下数据库连接池的配置是否可以进行以下优化:
关键是优化结果集遍历这一块:(1000);
1、基于jdbc的后台查询慢,可以尝试设置fetchSize的大小以限制每次从数据库获取结果集的大小:
String sql = "SELECT * FROM ABC";
PreparedStatement pstmt = (sql);
//批量从服务器接收数据
(1000);
ResultSet rs = ();
//这里对结果集的优化效率提升比较明显:批量从结果集里获取获取数据,循环获取,直到全部获取完
(1000);
2、基于mybatis的*.配置文件:
针对某些大数据量的sql查询,设置适当的fetchSize大小以此优化查询效率
<select resultType="string" parameterType="map" fetchSize="1000"> select * from ABC g
where = #{type} </select>