码迷,mamicode.com
首页 > Web开发 > 详细

hibernate死锁

时间:2015-07-23 20:07:30      阅读:152      评论: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
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!