首页 > Web开发 > 详细

hibernate死锁

时间:2015-07-23 20:06:30      阅读:221      评论:0      收藏:0      [点我收藏+]

首先,在向数据库中批量插入数据的时候得作一个事务,然后,需要在插入数据之前把相应表中的所有数据清除。这里遇到死锁,原因是在删除数据和插入数据时发生了死锁,解决的办法是将删除数据查询加锁,代码:

String hql = + ..getName()List<NewsCrawler> newsList = .getSession().createQuery(hql).setLockMode(..getName()LockMode.).list()Session session = ..openSession()Transaction tx = session.beginTransaction()(i=i<newsList.size()i++){
    newsList.get(i).setState(BaseEnum.NewsStateEnum.)session.update(newsList.get(i))}
tx.commit()session.close()
显示UPGRADE已过期==


hibernate死锁

原文:http://my.oschina.net/u/2284472/blog/483036

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!