我使用ehcache 2.5.2库成功设置了hibernate 3.6.2以使用二级缓存。
我可以在日志和统计信息中看到实体填充二级缓存,并且我想要缓存的查询被缓存。
当我在hbm.xml文件中使用XML配置时,所考虑的类具有
<cache usage="read-write"/>
子元素。
定义了以下属性:
hibernate.cache.use_second_level_cache=true
hibernate.cache.use_query_cache=org.hibernate.cache.EhCacheProvider
hibernate.cache.use_query_cache=true
但是,hibernate不会缓存它生成的查询以执行实体或集合的延迟加载。我可以在postgresql日志中看到它们一遍又一遍地使用相同的参数执行。
是否有要执行的配置?
答案 0 :(得分:2)
您只需确保使用@Cache
注释来映射您的类和关系。
您可以在此处详细了解:
http://docs.jboss.org/hibernate/core/3.6/reference/en-US/html_single/#performance-cache-mapping