对于Hibernate二级缓存和查询缓存的总结

来源:互联网 发布:战舰少女台服网络连接 编辑:程序博客网 时间:2024/05/17 23:43

1.Hibernate的二级缓存是针对类和集合级别配制的。它是一种全局性的静态配制,这一点与抓取策略不同,抓取策略基本上都会针对不同的请求动态地设定。因此,@Cache只会出现在两个地方:类上,或类中的集合字段。注意:对类的单端实体字段加@Cache是无意义的,该单端实体是否进入二级缓存取决于该实体类是否声明为可缓存!对于集合字段配制缓存是有意义的。配制集合为可以缓存并不会导致集合的所有元素进入二级缓存,而是缓存了集合元素的ID。集合元素是否被缓存依然取决于元素类本身有没有声明为可缓存。这一点已经做过验证。

 

2.留心集合级别的缓存配制!

 

3.查询缓存缓存的是对象的ID。集合缓存也是如此。类缓存才是缓存的对象实例。