JavaWeb框架复习笔记-Hibernate(实体类的状态和hibernate的缓存机制)

实体类分为三种状态

1.瞬时态
这个状态和id没有联系同时和session没有关联,例如添加操作

2.持久态
这个和id有关联,例如查询操作,删除操作,都是先查询id值,说明已经存在数据库了

3.托管态
对象有id值,和session没有关联,例如我们通过新建对象的方式并利用setter方式修改对象

Hibernate的缓存机制

一级缓存机制
该机制有三个特点,分别是
1.默认打开

2.使用范围在session内,即session的创建到关闭过程

3.缓存中的数据必须是持久态的

验证一级缓存机制的存在
在这里插入图片描述
然后我们看底层sql语句的输出过程
在这里插入图片描述
我们可以看见只执行了一次sql查询就得到了两条记录。

一级缓存的执行过程
在这里插入图片描述
一级缓存的特性
持久态数据会自动更新(不用调用update方法)
在这里插入图片描述
在这里插入图片描述
执行原理如下图(图来自黑马程序员)
在这里插入图片描述

二级缓存机制
1.这个机制现在已经不适用了,给redis替代了

2.是默认不打开的,要配置才行

3.它的使用范围是sessionFactory内

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值