缓存就是把以前从数据库中查询出来和使用过的对象保存在内存中,
当以后要使用某个对象时,首先查询缓存中是否有这个对象,
如果有则使用缓存中的对象,如果没有则去查询数据库,
并将查询出来的对象保存在缓存中,以便下次使用,
而Hibernate中一级缓存session的作用不够明显,
通常用Hibernate的二级缓存,Hibernate的二级缓存是全局缓存。
借助第三方缓存:
比如ehcache、oscache.....
首先需要打开二级缓存,比如用ehcache:
<!-- 打开二级缓存 -->
<property name="hibernate.cache.use_second_level_cache">true</property>
<!-- 引入二级缓存支持 -->
<property name="hibernate.cache.provider_class">org.hibernate.cache.EhCacheProvider</property>
<!-- 用查询缓存 -->
<property name="hibernate.cache.use_query_cache">true</property>
时间: 2024-11-05 15:13:13