Spring配置Hibernate二级缓存


<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
<prop key="hibernate.show_sql">true</prop>
<prop key="hibernate.generate_statistics">true</prop>
<prop key="hibernate.cache.use_query_cache">true</prop>
<prop key="hibernate.cache.use_second_level_cache">true</prop>
<prop key="hibernate.cache.provider_class">org.hibernate.cache.EhCacheProvider</prop>
<prop key="hibernate.cache.configurationResourceName">ehcache.xml</prop>
</props>
</property>



ehcache.xml 配置

   <defaultCache 
maxElementsInMemory="10000"
eternal="false"
timeToIdleSeconds="120"
timeToLiveSeconds="120"
overflowToDisk="true"
/>


maxElementsInMemory属性用于指定缓存中最多可放多少个对象。
eternal属性指定缓存是否永久有效。
timeToIdleSeconds属性指定缓存多久未被使用便清理掉。
timeToLiveSeconds属性指定缓存的生命长度。
diskPersistent属性指定缓存是否被持久化到硬盘中,保存路径由<diskStore>标签指定。


log4j 配置

log4j.category.net.sf.ehcache debug,FrameWorkEhCache



log4j.appender.FrameWorkEhCache org.apache.log4j.DailyRollingFileAppender
log4j.appender.FrameWorkEhCache.File ${system.logPath}/FrameWorkEhCache.log
log4j.appender.FrameWorkEhCache.DatePattern yyyy-MM-dd'.log'
log4j.appender.FrameWorkEhCache.layout org.apache.log4j.PatternLayout
log4j.appender.FrameWorkEhCache.layout.ConversionPattern [%c]-[%p] %m%n
log4j.appender.FrameWorkEhCache.append false



Java代码


public <E> List<E> getAll(String queryString) {
// CL_TODO Auto-generated method stub
HibernateTemplate template = this.getHibernateTemplate();
template.setCacheQueries(true);
List<E> l = template.find(queryString);
template.setCacheQueries(false);
return l;

}



hbm文件

<cache usage="read-write"/>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值