如果你用find方法去查询数据库,find方法对数据库只写不读,就是不能充分利用缓存,可以采用iterator来取数据

解决方案 »

  1.   

    错了 find方法对缓存只写不读
      

  2.   

    myth822(枫红一刀) 
    谢谢你的解答,我确实是用find()来查询数据库的,难到就是因为这个原因而引起内存益出的吗?如果我2次find()方法的hql语句是一模一样的,那第二次查出来的结果还会放入内存?
      

  3.   

    这个我还没有试过,但是根据find方法对缓存只写不读的原则,应该会写入内存,你可以看看当时的内存快照,而且一级缓存是有限的,如果大量的find而不去evict,就会出现内存溢出!
      

  4.   

    myth822(枫红一刀) 
    多谢你的答复,我注意以下。