已检查异常的Spring事务

时间:2015-07-06 17:44:31

标签: spring-data spring-transactions

我正在努力使用Spring Service组件中的一个方法,该方法应该是事务性的。该方法调用同一个类中定义的另外两个方法,它们都使用扩展JpaRepository的Spring存储库来持久化数据(因此可能抛出未经检查的异常),但是一个方法(methodB)也在做一些文件系统可能抛出已检查异常的操作。使此方法具有事务性的正确性是什么?到目前为止,我有这个:

    @Service
    public class MyServiceImpl implements MyService {
      @Transactional
      public void doStuff() {
        methodA();
        try {  
          methodB();
        } catch (Throwable t) {
          throw new RuntimeException();
        }
      }

      public void methodB() throws MyCheckedExcpetion() {
        // some stuff
      }
      public void methodA() {
        // some stuff
      }
    }

有更好的方法吗?

0 个答案:

没有答案