Hibernate中对事务的学习心得

Hibernate中对事务的管理是默认交给JDBC来管理的。,
所以当执行以下代码的时候:
session=sessionFactory.openSession()
Transaction tx=session.beginTransaction()
    ....
    tx.commit()
就等于:

Connection dbcon=getConnection()
dbcon.setAutoCommit(False)

dbcon.commit()
所以hibernate并没有做更多的事,只是将jdbc进行了封装。
所以我们从sessionFactory.openSession()的时候,autocommit就已经设置为了false
所以无论怎么执行save方法,只要不commit,或flush 就不会对数据库产生影响。


数据库加锁,一般使用LockMode.UPGRADE,保证在统计(查询)执行过程中,记录不被其他用户更新

posted on 2007-09-14 10:48 刘铮 阅读(123) 评论(0)  编辑  收藏


只有注册用户登录后才能发表评论。


网站导航:
 
<2025年6月>
25262728293031
1234567
891011121314
15161718192021
22232425262728
293012345

导航

统计

留言簿(1)

文章分类(141)

文章档案(147)

搜索

最新评论