hibernate 乐观锁

在这里插入图片描述

乐观锁采用的原理就是在表里边加version版本控制,web

<versionname=“version”
column=“VERSION”
type=“integer”
/>session

例子:svg

建立两个session:ui

Session session1=SessionFactory.openSession();hibernate

Session session2=SessionFactory.openSession()版本控制

对同一个数据进行操做:xml

Entity entity1=new Entity();blog

Entity entity2=new Entity();图片

entity1=session1.load(Entity.class,id);事务

entity1.setName(“name1”);

entity1.setName(“name1”);
Transaction tran1 = session1.beginTransaction();
session1.close();

entity2.setName(“name2”);
Transaction tran2= session2.beginTransaction();
session2.close();

运行到后边的tran2提交时会报异常:org.hibernate.StaleObjectStateException异常。
之因此报这个异常,就是由于咱们在Entity里边增长了version,第一个事务提交以后version=version+1=2,而第二个事务提交时,version=1<2,就会 报这个异常,数据过期

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