首页 / HIBERNATE / Hibernate事务
Hibernate事务
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Hibernate事务,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含869字,纯文字阅读大概需要2分钟。
内容图文
![Hibernate事务](/upload/InfoBanner/zyjiaocheng/1222/334b9a46c1074dc09601fba0551da1a4.jpg)
Hibernate事务控制
在实际生产中,每个业务逻辑都是由一系列对数据库访问完成的,这一系列的数据访问可能包括删除一些数据,然后再插入一些数据,
这里的删除和插入的动作不可分割,要么全部执行,要么都不执行,这就需要事务。
事务具备4个特性:原子性(Atomicity),一致性(Consistency),隔离性(Isolation)和持续性(Durability)
从编程角度来看,Hibernate事务是由Session对象开启的;但是从底层的实现来看,Hibernate事务由TransactionFactory来产生的。
在编写应用程序时无须手动操作TransactionFactory产生事务,这是因为SessionFactory底层以及封装了TransactionFactory。但是
SessionFactory对象的创建代价很高,它是线程安全的对象,它可以被所有的线程共享。
通常,SessionFactory会在应用程序启动时创建,一档创建了SessionFactory它将不会轻易关闭,只有当应用退出时才关闭SessionFacotry。
Session对象是轻量级,非线程安全的。在进行一次业务操作时,会创建,使用和关闭Session。但是Session在创建后,并不会立即打开与数
据库之间的连接,只有在需要进行数据库操作时,Session才会获取JDBC连接。因此打开和关闭Session并不会对性能造成很大的影响。所以,对于
程序的性能关键还是在于对于数据库的操作部分,即数据库事务。所以数据库事务应尽可能的短,从而降低数据库锁定造成资源争用。
Hibernate的所有持久化操作都必须在Session中进行。
Hibernate建议采用每个请求对应一个Session的模式————通常一个请求表示需要执行的一个完整业务功能。
对于一些大批量的数据处理,推荐使用DML风格的HQL语句完成。
原文:http://www.cnblogs.com/liaojie970/p/4805835.html
内容总结
以上是互联网集市为您收集整理的Hibernate事务全部内容,希望文章能够帮你解决Hibernate事务所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。