Hibernate二级缓存的问题

本身摸索hibernate的二级缓存的问题先放出hibernate的二级缓存的配置的hibernate.cfg.xml同时还应该在src底下在配置ehcache.xml文件: java

<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
          "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
          "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

<!-- Generated by MyEclipse Hibernate Tools.                   -->
<hibernate-configuration>

	<session-factory>
		<property name="dialect">
			org.hibernate.dialect.MySQLDialect
		</property>
		<property name="connection.url">
			jdbc:mysql://192.168.0.140:3306/wfnms
		</property>
		<property name="connection.username">wfnms</property>
		<property name="connection.password">wfnms</property>
		<property name="connection.driver_class">
			com.mysql.jdbc.Driver
		</property>
		<property name="myeclipse.connection.profile">Mysql</property>
		<property name="show_sql">true</property>
		<!-- 
		<mapping resource="com/hibernate/Test.hbm.xml" />
		 -->

		<!-- 开启二级缓存 --> 
		<property name="hibernate.cache.use_second_level_cache">true</property> 
		
		<!-- 设置缓存提供者 --> 
		<property name="hibernate.cache.provider_class">org.hibernate.cache.EhCacheProvider</property> 
		<mapping resource="com/hibernate/Test.hbm.xml"/>
		<!-- 指定缓存的类,和缓存的策略 -->
		<class-cache class="com.hibernate.Test" usage="read-only"/>
	
	</session-factory>

</hibernate-configuration>

 

ehcache.xml文件:
defaultCache标签中的各属性: mysql

maxElementsInMemory:能够缓存的对象的最大数; sql

eternal:是不是永久缓存; 缓存

timeToIdleSeconds:指定缓存多久没有被使用就清理掉; session

timeToLiveSeconds:指定缓存的生命长度; app

diskPersistent:指定缓存是否被持久化到硬盘中,保存的路径由<diskStore/>指定 eclipse

<ehcache> 
<diskStore path="java.io.tmpdir"/> 
<defaultCache maxElementsInMemory="10000" 
eternal="false" overflowToDisk="true" timeToIdleSeconds="120" 
timeToLiveSeconds="120" diskPersistent="false"/>
</ehcache>
相关文章
相关标签/搜索