一般说来!游离对象与临时对象的区别在于:前者是由持久化对象转变过来的,因此可能在数据库中还存在对应的记录,而后者在数据库中没有对应的记录。
问题:
当一个对象(有oid)通过方法调用传过来我怎么知道这个对象是游离对象还是临时对象,怎么知道他是否由持久化对象转变而来,怎么知道数据库有没有记录(不可能去查一遍,查的话状态就变成另一种了),谢谢大家!
hibernate 临时对象和游离对象的如何辨别
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
3条回答 默认 最新
- iteye_13500 2010-04-07 10:19关注
其实仔细辨别应该是hibernate内部的事情,个人觉得hibernate内部应该有几个Map分别保留各种状态的对象,当然,这部分实现是要看hibernate源码的。
通常的区分方式应该是看对象里有没有oid,游离状态的对象是一定有oid的,但是初始状态的对象(你说的临时对象)有可能没有oid,因为这个oid可能是有数据库或是别的方式产生的。
关键还是看你的目的,为什么要区分这两种状态,区分的目的是什么?
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 keil的map文件中Image component sizes各项意思
- ¥30 BC260Y用MQTT向阿里云发布主题消息一直错误
- ¥20 求个正点原子stm32f407开发版的贪吃蛇游戏
- ¥15 划分vlan后,链路不通了?
- ¥20 求各位懂行的人,注册表能不能看到usb使用得具体信息,干了什么,传输了什么数据
- ¥15 Vue3 大型图片数据拖动排序
- ¥15 Centos / PETGEM
- ¥15 划分vlan后不通了
- ¥20 用雷电模拟器安装百达屋apk一直闪退
- ¥15 算能科技20240506咨询(拒绝大模型回答)