Java Hibernate:如何获取用于突出引用目的的实体?
我想从Hibernate中检索一个对象,纯粹是为了读取它的值。我该怎么做呢 获取()+逐出()+刷新() 我主要想检查值是否已更改:Java Hibernate:如何获取用于突出引用目的的实体?,java,hibernate,Java,Hibernate,我想从Hibernate中检索一个对象,纯粹是为了读取它的值。我该怎么做呢 获取()+逐出()+刷新() 我主要想检查值是否已更改: Foo foo = getModifiedFoo(); Foo oldFoo = session.get(Foo.class, foo.getId()); if (foo.getBar() != oldFoo.getBar()) { throw YouAFooException(); } session.saveOrUpdate(foo); 我猜这会给我
Foo foo = getModifiedFoo();
Foo oldFoo = session.get(Foo.class, foo.getId());
if (foo.getBar() != oldFoo.getBar()) {
throw YouAFooException();
}
session.saveOrUpdate(foo);
我猜这会给我一个“对象已经在会话中”的某种例外,所以我想知道我应该怎么做。使用
merge()
,它将分离实体的状态复制到其附加的对应实体,而不是像saveOrUpdate()那样附加分离实体
可以。如果在对象上使用版本属性,则可以避免这样做。