session four stations

本文详细介绍了ORM中对象的四种状态:临时、删除、持久化及游离状态的特点与转换条件。探讨了不同状态下对象与数据库之间的关系,以及如何通过操作使对象在这些状态间进行转换。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

临时状态 在使用主键的情况下  oid通常为null
不处于session的缓存中 
在数据库中没有对应的记录
     在以下情况下,Java 对象进入临时状态 
当通过new语句刚创建一个Java对象 就处于临时状态,此时不和数据库中的任何记录对应 
删除状态 oid不为null 
从一个session实例的缓存中删除 session.delete();
session已经计划将其从数据库删除 session在清理缓存时,会执行sql delete语句删除数据库中对应记录
一般情况下 应用程序不该再使用被删除的对象
持久化状态 oid 不为空
位于session  
在清理缓存时 会根据持久化对象的属性变化,来同步更新数据库
游离状态:oid 不为null
session关闭 session中的对象就没有了可调用对象 在对象设置为空时 不可调用
evict() clear() close()
判断对象是否是临时 判断oid为null若为null 则必为临时对象
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值