TransactionRequiredException:执行和更新/删除查询

时间:2021-03-26 06:38:32

标签: java spring spring-boot

嗨,我正在使用 spring boot 并且即使在使用 @Transactional 之后也得到上述异常。调用结构如下,

@Service
class A {

  @Transactional
  public void methodA() {
    dao.daoMethod();
  }
}

@Service
class Dao {
  public void daoMethod{
    repo.updateQuery();
  }
}

@Repository
class Repo {
@Modifying
@Query("Update table....")
void updateQuery();
}

我不明白为什么即使我正在创建交易也会收到异常。

1 个答案:

答案 0 :(得分:0)

你不需要@Transactional,因为你已经使用了@Service。 你的结构应该是这样的:

@Repository
class Dao {
  public void daoMethod{
    repo.updateQuery();
  }
}

你为什么要从另一个服务调用一个服务?