我用jsf的<h:datatable>标签来一次性输出大量数据(有一万多条)产生内存溢出错误,该如何解决!,我尝试过用数组,ArrayList,还有Result,当读取小批量数据时不会产生错误,但大批量读取数据时就是发生溢出错误.不知有何好的解决办法.

解决方案 »

  1.   

    当内存中一次性装入上万条数据时,发生内存泄露是理所当然的,你可以在分页方面想想办法,不要一次性读取大量数据,可一次读取指定条数数据(500条或1000条?大多数情况下并不需要一次读取全部数据,用户也不可能喜欢通过翻上千页来找到数据,可以提供查询功能实现用户的要求),或游标方式分页读取数据库应能解决楼主问题
      

  2.   

    你一次性输出的记录越多,需要的内存就越多,迟早会溢出的。
    还是采用分页处理吧
      

  3.   

    分页吧!一次性取多少条然后接着取!