2011-02-09 61 views
3

我有一個Hibernate二級緩存啓用的場景,我想緩存一個實體,每天創建1000個實例並保留8年,但查詢只處理最近2天。我想避免創建一個歷史記錄表,因爲對於歷史查詢的罕見情況,代碼取決於日期。是否可以限制特定實體的Hibernate二級緩存大小?

在Hibernate中,Infinispan作爲Level-2提供程序可以非常明確地配置Hibernate應該用於實體Foo的具有特定屬性(驅逐策略,大小等)的特定緩存嗎?

回答

1

是的。在Hibernate中,你可以有N個緩存「區域」,它們可以有不同的配置,可以是某些實體特有的。配置本身依賴於提供者(Infinispan,在你的情況下)。請參閱本文檔上的Infinispan配置的詳細信息:

http://community.jboss.org/wiki/usinginfinispanasjpahibernatesecondlevelcacheprovider#Advanced_Configuration

看看如何覆蓋默認爲實體/集合的例子。在那裏,您可以設置驅逐策略,壽命和保存在緩存中的實體數量。

相關問題