Hibernate二级缓存

今天在项目中应用了Hibernate的二级缓存,现在将其应用过程做一个简单的总结:

一、关于Hibernate中的缓存:

Hibernate的一级缓存是Session级别的缓存,是事务管理范围的缓存,直接由Hibernate管理。当一个session做了一个查询操作,那么就会把查询的结果放在一级缓存中,只要同一个session在短时间内再做同一个查询操作,无需再次连接数据库,直接从一级缓存中取出数据。一级缓存的物理介质是内存,由于内存存储的数据有限,所以可以使用session 的evit()方法来显示的清空缓存中特定的对象。

二:Hibernate二级缓存的配置(以Ehcache这个缓存插件为例)

Hibernate 的二级缓存是SessionFactory级别的缓存,属于进程或集群范围的缓存,这一级别的缓存可以通过配置来实现。项目中使用了Ehcache这个缓存插件。下面是这个插件的一个使用:

1、首先需要导入第三方Jar包ehcache-1.5.0.jar,依赖于这两个包backport-util-concurrent 和 commons-logging。

2、在hibernate.cfg.xml文件中开启二级缓存一级配置二级缓存技术提供商

3、配置类级别的二级缓存:

<class-cache usage="read-write" class="xxx"/>(xxx这里写类的全名)

4、在src目录下添加ehcache.xml配置文件:


配置文件信息如下可以复制ehcache-1.5.0.jar包下的这个文件里面的信息,信息如下:


将eternal设置为true,将数据缓存为永久性。

5、测试

查看控制台打印的select语句信息,即可判断二级缓存是否成功。

此篇文章属于自己的一点小总结,不好的地方很多,只能再接再厉,希望以后写得越来越好。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值