我现在碰到这么个难题:
用Hibernate去跟数据库打交道,但有时一次查询就会查出来几十上百万条数据,但我只是循环去读取这些数据,这导致我一次就需要耗费大量内存来存放这些数据,影响性能。当然,我可以通过对查询语句做限制来减少一次查询的量,从而节省内存,但这样会导致我在写查询语句时变的很复杂,因为数据并非平均分布。我希望的行为是:查询语句还是一条,但查询结果每次给n条(n可以配置),当n条读完后,hibernate能自动或通过接口调用再补充n条,直到所有的结果都读取完毕为止。这样,内存就不会一次被占用很多。请问各位大侠,不知道我希望的行为是不是已有解决方案了,或者有其它更合适的解决方案?请赐教,多谢!