spring @Transactional没有使用hibernate在db中更新

时间:2017-09-08 15:45:27

标签: java spring hibernate

我正在使用带有基于注释的配置的hibernate-5的spring-4。 在我的应用程序中,我有一个dao函数,它将通过sessionorupdate()保存/更新会话对象。 从服务层我调用dao函数两次:1)插入一个新对象和2)更新同一个对象与一些属性更改一次。 我的服务功能在@Transactional。

问题: 我能够第一次插入,但之后它不会更新相同的对象。 但是如果我在dao方法中使用@Transactional(但是它的方法不正确),它会更新。

我给出了一个示例示例(与我的实际代码相同),如下所示。

@Service
public class TransactionService{
public boolean calculate(){
  Object obj = new Object
  insertOrUpdate(obj);
  obj.setNewProperty();
  insertOrUpdate(obj);
}

@Transactional
 public void insertOrUpdate(Object obj){
   dao.saveOrUpdate(obj);
 }
}
你可以帮我解决这个问题。 谢谢,

0 个答案:

没有答案