1.给maven中引入依赖包
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-ehcache</artifactId>
<version>5.3.7.Final</version>
</dependency>
2.在hibernate.cfg.xml中开启二级缓存
<!-- 开启二级缓存 -->
<property name="hibernate.cache.use_second_level_cache">true</property>
<!-- 开启查询缓存 -->
<property name="hibernate.cache.use_query_cache">true</property>
<!-- EhCache驱动 -->
<property name="hibernate.cache.region.factory_class">or
3.在实体类的映射中配置
<!-- 注解式开发 -->
<class-cache usage="read-write" class="entity.Dict"/>
<!-- xml配置方式 -->
<class table="t_sys_dict" name="entity.Dict">
<cache usage="read-write"/>
.......
</class>
4.注意
/**
* 二级缓存查询单个和所有的区别
* 1.查询单个的时候hibernate会使用配置好的二级缓存
* 2.查询多条记录的时候hibernate也不会默认使用配置的
* 需要自己手动开启 query.setCacheable(true);
* 这里推荐实体类里加一个属性来控制是不是使用二级缓存
* query.setCacheRegion("entity.Dict");//指定缓存策略,名字必须实体类的完整类名
*/