Hibernate 2次キャッシュの問題
2383 ワード
hibernateの2次キャッシュの問題を自分で模索してhibernateの2次キャッシュの配置のhibernateを先に放出する.cfg.xmlは同時にsrcの下でehcacheを構成すべきである.xmlファイル:
ehcache.xmlファイル:defaultCacheラベルの各プロパティ:
maxElementsInMemory:キャッシュできるオブジェクトの最大数;
eternal:永続キャッシュかどうか;
timeToIdleSeconds:キャッシュがどのくらい使用されていないかを指定してクリーンアップします.
timeToLiveSeconds:キャッシュのライフ長を指定します.
diskPersistent:キャッシュがハードディスク(HDD)に永続化されるかどうかを指定します.保存するパスはで指定します.
<?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ラベルの各プロパティ:
maxElementsInMemory:キャッシュできるオブジェクトの最大数;
eternal:永続キャッシュかどうか;
timeToIdleSeconds:キャッシュがどのくらい使用されていないかを指定してクリーンアップします.
timeToLiveSeconds:キャッシュのライフ長を指定します.
diskPersistent:キャッシュがハードディスク(HDD)に永続化されるかどうかを指定します.保存するパスは
<ehcache>
<diskStore path="java.io.tmpdir"/>
<defaultCache maxElementsInMemory="10000"
eternal="false" overflowToDisk="true" timeToIdleSeconds="120"
timeToLiveSeconds="120" diskPersistent="false"/>
</ehcache>