設置多個Java應用程序共享一個通用實體模塊(實體類+ Hibernate XML映射)。目前,實體未啓用緩存(映射內沒有<cache.../>
元素)。使用一個Hibernate映射的多個二級緩存設置
大多數應用程序都是編輯單個實體的過程,因此它無法緩解二級緩存。現在
,新的應用程序實現其
- 應該使用相同的實體映射
- 但必須使用二級和查詢緩存。
如何配置緩存?
一些觀察:
我不能添加
<cache.../>
元素的映射,因爲這樣會破壞不配置這樣的緩存,哪些不是我的影響下,其他應用:Second-level cache is not enabled for usage [hibernate.cache.use_second_level_cache | hibernate.cache.use_query_cache]
- 我找不到一種方法來激活一個實體進行緩存之外的映射。在
ehcache.xml
實體沒有幫助 - 即使我可以改變所有其他應用程序,並添加
<cache.../>
到實體映射設置緩存區,這是行不通的設置hibernate.cache.use_second_level_cache=false
雖然是這麼說的禁用緩存http://docs.jboss.org/hibernate/core/3.3/reference/en/html/session-configuration.html,表3.5
謝謝,一定是盲目的,但我真的試圖找到這樣的配置選項。 對於那些喜歡編程式彈簧配置的人來說, 'LocalSessionFactoryBean',對應的方法是'setEntityCacheStrategies(Properties entityCacheStrategies)' http://static.springsource.org/spring/docs/2.5.x/api/org/springframework/orm/hibernate3/LocalSessionFactoryBean.html# setEntityCacheStrategies(java.util.Properties) – rainer198