理解:当两个用户同时对数据进行操作时这个数据会被先访问的线程锁定,次线程会等待。直到主线程结束后次线程才能做访问或修改。
实现方法:LockMode.UPGRADE
例子代码:
Session session = HibernateSessionFactory.getSession();
session.beginTransaction();
Lock lock = (Lock)session.load(Lock.class, 1,LockMode.UPGRADE);
lock.setMobile(lock.getMobile()+10);
session.update(lock);
session.getTransaction().commit();
HibernateSessionFactory.closeSession();
优缺点:数据准确,并发性不好(依赖数据库存取机制)
实现方法:LockMode.UPGRADE
例子代码:
Session session = HibernateSessionFactory.getSession();
session.beginTransaction();
Lock lock = (Lock)session.load(Lock.class, 1,LockMode.UPGRADE);
lock.setMobile(lock.getMobile()+10);
session.update(lock);
session.getTransaction().commit();
HibernateSessionFactory.closeSession();
优缺点:数据准确,并发性不好(依赖数据库存取机制)