本文共 441 字,大约阅读时间需要 1 分钟。
N久没用过hibernate的了,今天搞起来,遇到个缓存问题,2级缓存配置是肯定没得问题的,但是发现sql还是会输出,查看了一番这句话很重要:
Hibernate的二级缓存策略,是针对于ID查询的缓存策略,对于条件查询则毫无作用。为此,Hibernate提供了针对条件查询的Query缓存。
还有几句话:
*****如果不设置“查询缓存”,那么hibernate只会缓存使用load()方法获得的单个持久化对象,如果想缓存使用findall()、list()、Iterator()、createCriteria()、createQuery()等方法获得的数据结果集的话,就需要设置
hibernate.cache.use_query_cache true 才行 <prop key="hibernate.cache.use_query_cache">true</prop> ***********并且产生query等对象的时候还要调用query的setCacheable才可以。。
转载地址:http://avini.baihongyu.com/