上面一篇文章,我们说完了hibernate的搭建,接下来,我们来配置一下,二级缓存。
二级缓存指的是是SessionFactory级别的缓存,是属于进程范围的缓存。
第一步,我们仍然需要导入相关的jar包,如下勾选的ehcache-core-2.4.3.jar:
这里的ehcache-core-2.4.3.jar包,在我们进行hibernate的搭建的时候就已经放进去了,这里只是重新提一下,需要大家注意,当在使用二级缓存的时候,不要忘记了这个jar包。
第二步,由于hibernate的核心已经被spring给接管了,所以我们需要在spring的配置文件applicationContext.xml中配置二级缓存,如下:
其中代码放置到配置会话工厂的bean中,代码如下:
<!-- 配置二级缓存 -->
hibernate.cache.use_second_level_cache=true
hibernate.cache.use_query_cache=false
hibernate.cache.provider_class=net.sf.ehcache.hibernate.EhCacheProvider
hibernate.cache.region.factory_class=org.hibernate.cache.ehcache.EhCacheRegionFactory
第三步,在src目录下新建一个ehcache.xml文件:
ehcache.xml文件内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<ehcache>
<diskStore path="D:\cache" />
<defaultCache maxElementsInMemory="1000" eternal="false" overflowToDisk="true"
timeToIdleSeconds="120"
timeToLiveSeconds="180"
diskPersistent="false"
diskExpiryThreadIntervalSeconds="60" />
<cache name="com.ssh.po.Person" maxElementsInMemory="100" eternal="false"
overflowToDisk="true"
timeToIdleSeconds="300"
timeToLiveSeconds="600"
diskPersistent="false"/>
</ehcache>
第四步,对于要进行二级缓存的实体类,进行配置
:
其中代码如下:
<!-- 配置二级缓存 -->
<cache usage="read-write" region="com.ssh.po.Person"/>
至此,二级缓存配置完毕。