Hibernate Filters打破了二级缓存

时间:2010-02-08 11:55:44

标签: hibernate caching filter

我已经映射了一个集合,它可以在L2Cache中缓存。只要我对集合应用过滤器,就不会使用L2Cache。我不能在集合中使用where子句,因为我需要它比这更动态。任何人都有任何想法??

1 个答案:

答案 0 :(得分:0)

我的一位同事遇到的问题听起来与此类似。他发现如果禁用延迟加载,默认情况下会使用连接查询一次检索包含实体和包含的集合。但是,不会缓存连接查询。

他的解决方案是通过在映射中设置fetch="select"来切换到子选择查询。然后两个查询都独立缓存。