叙:hibernate中有一个特色,即,hibernate的持久态能自动更新数据库,不需要手动设置更新操作代码,而持久态的这一特色所依据的便是hibernate的一级缓存技术。那么之前学过了hibernate的三态,现在学习一下一级缓存;
hibernate的一级缓存
首先,要明白什么是缓存;
什么是缓存?
缓存:一种优化方式,将数据存储在本地,当使用到保存的数据时不必再向服务器或者终端进行请求数据的操作,直接读取本地数据即可。
然后现在了解一下hibernate的缓存;
hibernate缓存
hibernate的一级缓存介绍:
- Hibernate框架中提供了优化手段:缓存、抓取策略。
- Hibernate中提供了两种缓存机制:一级缓存、二级缓存;
- Hibernate的一级缓存:被称为session级别的缓存,其生命周期与session生命周期一致(一级缓存是由session中的一系列的Java集合构成),一级缓存是系统自带的不可卸载的(hibernate的二级缓存是SessionFactory级别的,如需使用需要提前配置)。
hibernate的一级缓存的结构
一级缓存中的特殊区域:快照区
快照区:就是当数据第一次保存时,会形成一个缓存区和一个快照区,此时两个区的数据相同,当在这个session未销毁时再次调用此数据进行操作后数据会保存到缓存区,当点击提交到数据库时,系统会比较缓存区的数据和对应的快照区的数据是否一致,若是缓存区与快照区的一致也就是说提交的数据和数据库中的数据一致,则不会进行更新操作,若是不同才会进行更新的操作。
hibernate的持久化类能自动更新数据库依托于hibernate的一级缓存,一级缓存的重点是快照区;;
《本章完》
原文地址:https://www.cnblogs.com/Email-qtl777777/p/9651807.html
时间: 2024-10-12 09:21:08