4
我正在使用guice-servlet在tomcat和hibernate下以guice-persist運行的環境。我遇到的問題是,當我在一個請求中使用em.getReference()時,加載的代理對象停留在entitymanager緩存中,並可能出現在另一個請求中,我希望從該數據庫完全加載一個對象。用guice-persist自動清除會話
我曾經在EJB3環境中使用hibernate,它是默認行爲。每個新請求都清除實體管理器緩存。對於guice-persist來清除每個請求的會話,這不是一個更安全的行爲嗎?或者至少把它作爲JpaPersistModule的設置?
在hibernate SessionImpl「autoClear」中有一個特殊的標誌,它負責EJB3的行爲。有沒有什麼辦法可以在JpaPersistModule創建新的實體管理器時啓用標誌?
請注意,您也可以調用'castedEm.clear()'獲得相同的效果 - 解決陳舊數據的問題。 – condit 2013-02-23 02:37:46