浅析Hibernate的一级缓存和二级缓存
来源:互联网 发布:矩阵奖金制度 编辑:程序博客网 时间:2024/06/17 01:41
首先,本人是个程序小白,但是通过资料对Hibernate的缓存机制有一定的了解,故写下这篇博客以此加深记忆,文中有许多不对的地方,还望大佬指正!
Hibernate作为一个持久层框架,对数据库频繁的进行存取操作,但是频繁的对数据库操作其效率却不太高,而Hibernate正好就提供了这么一个缓存机制来提高性能和小效率,Hibernate的缓存机制分为一级缓存和二级缓存,一级缓存是session级别的缓存,何为session级别的缓存?此Session是指每次与数据库进行会话交互的session,属于事务范围的缓存,每次进行数据库操都会持久化对象时,该对象就会加入到缓存中,比如执行session.save方法执行后,该对象就会被加入到缓存中,以后即使程序中不再引用该对象,只要缓存不清空,该对象仍然处于生命周期中。当试图get()、 load()对象时,会判断缓存中是否存在该对象,有则返回,此时不查询数据库。没有再查询数据库.
二级缓存
SessionFactory 的缓存可以分为两类:
内置缓存: Hibernate 自带的, 不可卸载. 通常在 Hibernate 的初始化阶段, Hibernate 会把映射元数据和预定义的 SQL 语句放到 SessionFactory 的缓存中, 映射元数据是映射文件中数据的复制, 而预定义 SQL 语句时 Hibernate 根据映射元数据推到出来的. 该内置缓存是只读的.
外置缓存(二级缓存): 一个可配置的缓存插件. 在默认情况下, SessionFactory 不会启用这个缓存插件. 外置缓存中的数据是数据库数据的复制, 外置缓存的物理介质可以是内存或硬盘
- 浅析Hibernate的一级缓存和二级缓存
- hibernate一级缓存和二级缓存的区别
- hibernate一级缓存和二级缓存的区别
- hibernate一级缓存和二级缓存的区别
- Hibernate一级缓存和二级缓存的区别
- hibernate一级缓存和二级缓存的区别
- hibernate一级缓存和二级缓存的区别
- hibernate一级缓存和二级缓存的区别
- hibernate一级缓存和二级缓存的区别
- hibernate一级缓存和二级缓存的区别
- hibernate一级缓存和二级缓存的区别
- hibernate一级缓存和二级缓存的区别
- hibernate一级缓存和二级缓存的区别
- Hibernate 一级缓存和二级缓存的注意事项
- hibernate一级缓存和二级缓存的区别
- hibernate一级缓存和二级缓存的区别
- hibernate一级缓存和二级缓存的区别
- hibernate一级缓存和二级缓存的区别
- USB 作为一种通用的串行通信规范,为何在电子通信里不能完全代替 RS-232 串口?
- 我们物联网专业的嵌入式实习-day06(开发智能家居系统-网络编程)
- iOS Mac下服务器搭建
- POJ 3087.Shuffle'm Up
- highcharts boxplot 各个箱子的填充色(fillColor)
- 浅析Hibernate的一级缓存和二级缓存
- 数学之美中的马尔科夫链
- kernel对D状态(TASK_UNINTERRUPTIBLE)task在120s不被调度的检测
- leetcode-17-Letter Combinations of a Phone Number
- SQL怎样求一行结果的和
- tast_struct结构体
- 情感计算是人机交互核心?谈深度学习在情感分析中的应用
- markdown中实现首行缩进的两种方法
- Pipeline Scheduling UVA