代码之家  ›  专栏  ›  技术社区  ›  Roman

如何获取Spring事务管理器实例?

  •  3
  • Roman  · 技术社区  · 14 年前

    我使用注释来标记应该在事务中执行的方法。

    但是,在一个地方我需要做 transactionManager.rollback() 手动,不带注释。我怎样才能得到 transactionManager 反对?

    2 回复  |  直到 14 年前
        1
  •  12
  •   axtavt    14 年前

    如果要回滚当前事务,可以使用

        TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
    

    请注意,它不会立即回滚事务-它设置“仅回滚”状态,因此事务将在尝试提交时回滚。


    TransactionTemplate ,如中所述 10.6 Programmatic transaction management .

    你还可以获得 PlatformTransactionManager ,但自 是一种建议的程序化事务去种族化方法。

    另见:

        2
  •  0
  •   Konstantin    14 年前