2017-04-03 32 views
1

應用程序正在使用Hibernate 3,並且需要在保存到數據庫時緩存數據。幾天後休眠緩存過期

  1. 是否可以只緩存實體的幾列而不是全部?

  2. 是否可以在幾天後設置實體的到期時間?例如,是否可以將到期時間設置爲3天,以便記錄可以在3天后自動從緩存中刪除?

我已經開始研究緩存過程,但不確定是否可以滿足上述兩個需求。

回答

0
  1. 不,這是不可能的只緩存列的子集在Hibernate的二級緩存的實體,否則Hibernate的需要組裝這種實體實例時去數據庫讀取其餘數據無論如何,從而擊敗了緩存的目的。
  2. 是的,可以設置緩存數據的到期時間。 Hibernate將其留給二級緩存提供者來管理過期和驅逐策略,因此您需要在那裏配置它(請參閱您使用的緩存提供者的文檔)。

更多詳細信息herehere