前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >悲观锁 HibernateTest.java

悲观锁 HibernateTest.java

作者头像
Hongten
发布2018-09-18 09:57:52
3790
发布2018-09-18 09:57:52
举报
文章被收录于专栏:HongtenHongten

HibernateTest.java

代码:

/**  *  */ package com.b510.examplex;

import java.util.List;

import org.hibernate.LockMode; import org.hibernate.Query; import org.hibernate.Session; import org.hibernate.Transaction;

/**  *  * @author XHW  *  * @date 2011-7-8  *  */ public class HibernateTest {

 /**   * @param args   */  public static void main(String[] args) {   HibernateTest test = new HibernateTest();   test.testLockMode();  }

 public void testLockMode() {   Session session = HibernateSessionFactoryUtil.getSessionFactory()     .openSession();   session.beginTransaction();   Query query=session.createQuery("from Guestbook gb");  //设置为“悲观锁”   悲观地认为每次读读取或修改数据库数据时,其他的事务也在并发访问相同的数据          <具有很强的排他性>   query.setLockMode("gb", LockMode.UPGRADE);   List<Guestbook> list=query.list();   session.getTransaction().commit();   for(Guestbook gb:list){    System.out.println(gb.getId());    System.out.println(gb.getName());    System.out.println(gb.getTitle());    System.out.println(gb.getEmail());   }  }

}

运行效果:

没有加“悲观锁”的效果:

sql语句:

log4j:WARN No appenders could be found for logger (org.hibernate.cfg.Environment). log4j:WARN Please initialize the log4j system properly. Hibernate:    select         guestbook0_.id as id2_,         guestbook0_.name as name2_,         guestbook0_.email as email2_,         guestbook0_.phone as phone2_,         guestbook0_.title as title2_,         guestbook0_.content as content2_,         guestbook0_.created_time as created7_2_     from         users.guestbook guestbook0_ 1 Hongten hello world! hongtenzone@foxmail.com

现在加入“悲观锁”

sql语句:

log4j:WARN No appenders could be found for logger (org.hibernate.cfg.Environment). log4j:WARN Please initialize the log4j system properly. Hibernate:     select         guestbook0_.id as id2_,         guestbook0_.name as name2_,         guestbook0_.email as email2_,         guestbook0_.phone as phone2_,         guestbook0_.title as title2_,         guestbook0_.content as content2_,         guestbook0_.created_time as created7_2_     from         users.guestbook guestbook0_ for update 1 Hongten hello world! hongtenzone@foxmail.com

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2011-07-08 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档