(1) 查询缓存是针对普通结果集的缓存,对实体对象的结果集只缓存id列表。
(2)如果当前关联的表发生修改,则查询缓存的生命周期结束,与session无关。
(3)查询缓存默认是关闭的,必须显示启用
A:在hibernate.cfg.xml文件中启用查询缓存
<property name="hibernate.cache.use_query_cache">true</property>
B:在程序用显示启用(调用Query的方法)
query.setCacheable(true);
(4)查询缓存是以依赖于二级缓存的,需要打开二级缓存。