Hibernate学习(六):session.delete以及对象状态转换图-阿里云开发者社区

开发者社区> 余二五> 正文

Hibernate学习(六):session.delete以及对象状态转换图

简介:
+关注继续查看

delelte方法从某种程度上来说和update方法很类似,特别是对传入实例的要求,只要所传入实例的OID在数据库中有对应的记录即可,否则Hibaernate就会抛出异常。我们还是从对象能够处于的3个状态来一一阐述。

1.传入实例是临时状态。一般来说这是不规范的操作,当然你必须要人为的给它指定OID,而且这个OID必须和数据库中的一条记录对应。

2.传入实例是游离状态。前面我们说过,游离状态与临时状态的最大区别就是在数据库中可能存在一条记录与之对应,因此如果这个游离的实例不存在与之对应的数据库记录,Hibernate就会抛出异常。

3.传入实例是持久化状态。嘿嘿,这种情况就不用说了吧。

总之,对于游离状态而言,delete方法从数据库中删除与它对应的记录(前提是有这条记录,否则异常);对于持久化对象而言,delete方法从数据库中删除与它对应的对象,并且把它从session的缓存中删除,此时状态变为临时状态。

下图简单的展示了对象的状态变化图:

图中各个方法的详细说明可以在Hibernate发布包中的api文档中找到,这里就不赘述了,^_^










本文转自 646676684 51CTO博客,原文链接:http://blog.51cto.com/2402766/615926,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Android开发学习之使用Toolbar实现不同的Fragment使用不同颜色的标题栏与状态栏
Android开发学习之使用Toolbar实现不同的Fragment使用不同颜色的标题栏与状态栏                                            先看效果图。
2307 0
LESS学习笔记1
个人理解:less是一个可以写函数的css
429 0
干货|如何让机器向“时尚达人”学习?阿里做了个“实用”的图像数据集
阿里资深算法专家雷音带领的团队,有个非常特别的名字,叫做“图像与美”。雷音希望,未来AI产品对衣服的理解不只限于照片和文字,还可以理解衣服本身,进而理解时尚穿搭之道、理解流行风向。
908 0
生产中的 Serverless 机器学习流水线
本文定义了生产环境中对机器学习流水线的要求,提供了基于阿里云函数工作流 (FnF),函数计算 (FC) 结合容器服务 K8s 实现 Serverless ML Pipeline 的解决方案。通过分析得出结论:该方案可以提高研发效率,优化运维和经济成本,帮助 ML 更快产生商业价值。
3390 0
javaWeb初识 ServletContext全局对象,过滤器,监听器
ServletContext全局对象: import javax.servlet.ServletConfig; import javax.servlet.ServletContext; import javax.
697 0
+关注
20382
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载