我需要检测一个对象是否是短暂的...如果不是,我想通过Hibernate进行更新。
通常,我通过检查id是否已设置来实现此操作,但我担心这不是线程安全的,因为我有另一个线程正在保存对象,而且可能会出现id未设置但Hibernate已经在保存对象的情况。
如何以线程安全的方式实现这一点?
谢谢。
public void updateIfNotNew(PersistentObject a){
//if another object is in the process of saving....this update will not get persisted
if (a.id!=null){
session.update(a);
}
}