【问题标题】:Making Transactional deletes in Spring Data?在 Spring Data 中进行事务性删除?
【发布时间】:2016-08-02 19:07:14
【问题描述】:

我有一个使用“Spring 数据”的应用程序。

我想确保 both 删除(下面的代码)或 回滚 发生。

如何确保下面显示的.delete() 方法是transactional

@Service
public class databaseService{

    //some code


  public void deleteRows(){

    carRepository.delete(car);
    personRepository.delete(person);

    }   

}

【问题讨论】:

    标签: java spring hibernate transactions spring-data


    【解决方案1】:

    看看@Transactional注解。

    【讨论】:

    • 研究的时候看到了,是不是直接加到我上面的方法里?可以举个例子吗
    • 是的,你应该在上面的方法中添加它。它通常应该在您的应用程序的服务层完成,这里似乎就是这种情况。但请务必不要使用嵌套事务,根据我的经验,它会导致一些奇怪的行为。
    • 有时候一个服务调用另一个服务。当它们都是事务性的时,我遇到了一些麻烦,因为一个调用将它自己的事务包装在被调用的事务周围,基本上以嵌套事务结束。根据 SGBD,当您需要回滚时,这可能会产生一些奇怪的结果。
    猜你喜欢
    • 2015-05-04
    • 1970-01-01
    • 2013-12-09
    • 2021-05-07
    • 2011-07-03
    • 1970-01-01
    • 2019-12-20
    • 2021-10-22
    • 2011-08-06
    相关资源
    最近更新 更多