Hibernate二级缓存详解
来源:互联网 发布:表白墙网站源码 编辑:程序博客网 时间:2024/06/04 18:45
SessionFactory的内置缓存中存放了映射元数据和预定义SQL语句,映射元数据是映射文件中数据的副本,而预定义SQL语句是在 Hibernate初始化阶段根据映射元数据推导出来的。SessionFactory的内置缓存是只读的,应用程序不能修改缓存中的映射元数据和预定义 SQL语句,因此SessionFactory不需要进行内置缓存与映射文件的同步。
2.SessionFactory的外置缓存是一个可配置的插件。在默认情况下,SessionFactory不会启用这个插件。外置缓存的数据是数据库数据 的副本,外置缓存的介质可以是内存或者硬盘。SessionFactory的外置缓存也被称为Hibernate的二级缓存。
Hibernate的二级缓存的实现原理与一级缓存是一样的,也是通过以ID为key的Map来实现对对象的缓存。 Hibernate的二级缓存同一级缓存一样,也是针对对象ID来进行缓存。所以说,二级缓存的作用范围是针对根据ID获得对象的查询。
3. 在执行各种条件查询时,如果所获得的结果集为实体对象的集合,那么就会把所有的数据对象根据ID放入到二级缓存中。当Hibernate根据ID访问数据对象的时候,首先会从Session一级缓存中查找,如果查不到并且配置了二级缓存,那么会从二级缓存中查找,如果还查不到,就会查询数据库,把结果按照ID放入到缓存 删除、更新、增加数据的时候,同时更新缓存。
4. 二级缓存的适用范围
Hibernate的二级缓存作为一个可插入的组件在使用的时候也是可以进行配置的,但并不是所有的对象都适合放在二级缓存中。
在通常情况下会将具有以下特征的数据放入到二级缓存中: 很少被修改的数据。 不是很重要的数据,允许出现偶尔并发的数据。 不会被并发访问的数据。 参考数据。
而对于具有以下特征的数据则不适合放在二级缓存中: 经常被修改的数据。 财务数据,绝对不允许出现并发。 与其他应用共享的数据。
- hibernate二级缓存详解
- Hibernate二级缓存详解
- Hibernate二级缓存详解
- hibernate的二级缓存详解
- Hibernate二级缓存详解
- Hibernate二级缓存详解
- Hibernate二级缓存详解
- Hibernate二级缓存配置详解
- hibernate二级缓存详解
- Hibernate二级缓存详解
- Hibernate二级缓存详解
- Hibernate二级缓存详解
- Hibernate二级缓存详解
- Hibernate二级缓存详解
- Hibernate二级缓存详解
- Hibernate二级缓存详解
- 详解Hibernate中的二级缓存
- Hibernate二级缓存详解
- date时间转化
- VMware中的虚拟机无法连接usb设备
- 序列化和反序列化分别用于什么场合
- [LeetCode] Power of Two
- 介绍一个好用的抓取dump的工具-ProcDump
- Hibernate二级缓存详解
- 了解内部工作原理
- spring的反射机制
- 给EditText的drawableRight属性的图片设置点击事件
- Java多个线程之间处理共享数据的方式
- html中的table在android端显示
- JDK1.5技术增强(一)
- 利用Hog特征和SVM分类器进行行人检测
- MySQL索引的使用