Java 在Spring数据中进行事务性删除?
我有一个使用“Spring数据”的应用程序 我想确保执行两个删除(下面的代码),或者执行回滚 如何确保下面显示的Java 在Spring数据中进行事务性删除?,java,spring,hibernate,transactions,spring-data,Java,Spring,Hibernate,Transactions,Spring Data,我有一个使用“Spring数据”的应用程序 我想确保执行两个删除(下面的代码),或者执行回滚 如何确保下面显示的.delete()方法是事务性的 @Service public class databaseService{ //some code public void deleteRows(){ carRepository.delete(car); personRepository.delete(person); } } 看看@Trans
.delete()
方法是事务性的
@Service
public class databaseService{
//some code
public void deleteRows(){
carRepository.delete(car);
personRepository.delete(person);
}
}
看看@Transactional注释。我在研究时看到过它,我是否只是将它添加到上面的方法中?你能举个例子吗?是的,你应该在上面的方法中加上它。它通常应该在应用程序的服务层完成,这里似乎就是这样。不过,请确保不要使用嵌套事务,这会导致我的经验中出现一些奇怪的行为。有时候一个服务调用另一个服务。当它们都是transactionnal时,我遇到了一些麻烦,因为调用的一个将自己的事务包装在被调用的一个事务周围,基本上以嵌套事务结束。根据SGBD,当您需要回滚时,这可能会产生一些奇怪的结果。