2010-09-22 68 views
0

在線程/會話生存期間管理第一級緩存中的持久化實體的正確方法是什麼?實際上,每個線程(會話)中只有一個或兩個持久實例應始終存在,以便在保存之前從其他(臨時)實體引用它們。在NHibernate一級緩存中管理實體

因爲我需要一段時間來清除會話緩存每一次(否則它被填滿和痛苦的緩慢),有什麼我不知道是 - 我應該:

  1. 逐出會話中的所有實體,除了我需要的東西?
  2. 清除整個會話,並重新加載必要的實體?
  3. 創建一個新的會話並重新加載必要的實體?

回答

2

我想你應該關閉前一個會話並打開一個新會議。如果您想要緩存的對象在每個會話中都需要加載,那麼您應該使用二級緩存。