有一個查詢是要一次性把一個項目中所有涉及的sequest
out文件都找出來,顯示在界面。數千個算是少的,但顯示第一次后,如果刷新,就會出現OutOfMemory。根據深入淺出Hibernate里面提
到,因為Hibernate把所有查詢到的記錄都放在session中,導致內存不夠。于是在ProjectAction的execute中,在
Session session = HibernateUtil.currentSession();
后面加上:
session.flush();
session.clear();
這后面再查詢,就沒有問題了。一個簡單的解決辦法吧,對效率的影響有多少就不知道了。