Hibernate 4.0及以后的配置如下:
我这里使用的是hibernate-release-4.3.1.Final
一、二级缓存:
1、先配置hibernate.cfg.xml
<property name="hibernate.cache.use_second_level_cache">true</property>
<property name="hibernate.cache.region.factory_class">org.hibernate.cache.ehcache.EhCacheRegionFactory</property>/*Hibernate 3.3 配置如下:
<property name="hibernate.cache.use_second_level_cache">true</property>
<property name="cache.provider_class">org.hibernate.cache.EhCacheProvider</property>
*/
2、在下载的hibernate架包里拷贝一个ehcache.xml文件到src文件下
3、给需要缓存的实体类使用@Cache注解(由hibernate扩展提供)
4、导入相应架包hibernate-ehcache-4.3.1.Final.jar、ehcache-core-2.4.3.jar(原来ehcache使用了commons logging这里使用的还是log4j,所以不需要到导入commons logging架包了)
二、查询缓存:
1、先配置hibernate.cfg.xml
<property name="cache.use_query_cache">true</property>
2、查询中设置setCacheable
session.createQuery("from Teacher").setCacheable(true).list();