关于hibernate数据查询的问题
List all = thj03_dao.findEntity(Str_select);
Iterator it = all.iterator();
while ((it.hasNext())){
THJ03 thj03 = (THJ03)it.next();
...........................要显示的字段...........
}
请问像hibernate这样的查询,查询数据量大的话会出现
内存溢出,请问有办法解决咩
------解决方案--------------------while ((it.hasNext())){
THJ03 thj03 = (THJ03)it.next();
...........................要显示的字段...........
加一行
thj03 = null;
}
------解决方案--------------------减少查询量才行,比如分页:只查询当前页面显示的数据;一般来说应用中都不会是很大的查询结果;
如果业务需求不能更改,一定要查大量数据的话,可考虑直接用sql和加大虚拟机内存
------解决方案--------------------同意楼上
------解决方案--------------------第一种办法,采用索引分段处理。例如一次处理1000条,这样效率也高,执行速度会快很多。
第二,优化你的查询。尽量在查询中完成所有条件的过滤,保证取得的结果集是最小的。
------解决方案--------------------优化查询比较好