@@ Transactional交易仅适用于少数例外情况

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了@@ Transactional交易仅适用于少数例外情况相关的知识,希望对你有一定的参考价值。

我正在尝试使所有未检查的异常的事务失败,除了特定的未检查的异常(在我的情况下-DuplicateKeyException)。如何使用Spring框架的@Transactional注释实现此自定义?

谢谢!

答案

尝试noRollbackFor选项

@Transactional(noRollbackFor=DuplicateKeyException.class)
另一答案

这样做吧:

public void driverMethod()
try
   BeforeException()

catch(DuplicateKeyException e)
   AfterException()


@Transactional(propagation = Propagation.REQUIRES_NEW)
private BeforeException()


@Transactional(propagation = Propagation.REQUIRES_NEW)
private AfterException()

以上是关于@@ Transactional交易仅适用于少数例外情况的主要内容,如果未能解决你的问题,请参考以下文章

Spring @Transactional 属性是不是适用于私有方法?

仅适用于某些域的代理

使用 Spring @Transactional 管理 Hibernate 事务

FBSDKShareLinkContent 不适用于 iOS 上的少数链接

MySQL事务处理特性的实现原理

Excel--数据对比方法