Hibernate的缓存
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Hibernate的缓存相关的知识,希望对你有一定的参考价值。
如果每次进行数据查询时都去数据库里面执行查询语句,当系统访问量大事,肯定对数据库的压力很大,所以说有这么个hibernate缓存技术,当进行查询时,如果数据在缓存中了hibernate就不用再去管数据库要了。
缓存就是hibernate中提供的一种进行降低数据库压力的技术,hibernate分一级缓存和二级缓存:
一级缓存是session级别的缓存,由session创建和管理,不能取消
主要存放处于托管状态以及被删除状态entity引用,主要是方便持久化操作时Hibernate内部查找entity。一级缓存的生命周期只和session有关,和事务没有关系。一个session开启多个事务,这些事务共享同一个一级缓存。
二级缓存主要有三个缓存区域:对象缓存区域、集合缓存区域、查询缓存区域,各个缓存区域分工不同
Hibernate二级缓存是应用程序级别的(全局)的缓存。对所有session都共享。
Hibernate二级缓存默认是关闭的,而且Hibernate只提供了二级缓存入口,并没有提供实现,目前第三方实现:ehcache、oscache、Jbosscache等。
以上是关于Hibernate的缓存的主要内容,如果未能解决你的问题,请参考以下文章
ssh整合hibernate 使用spring管理hibernate二级缓存,配置hibernate4.0以上二级缓存