美文网首页
@Transaction 注意事项(二)

@Transaction 注意事项(二)

作者: congnie116 | 来源:发表于2017-09-25 20:56 被阅读0次

在service类前加上@Transactional,声明这个service所有方法需要事务管理。每一个业务方法开始时都会打开一个事务。

Spring默认情况下会对运行期例外(RunTimeException)进行事务回滚。这个例外是unchecked

如果遇到checked意外就不回滚。

如何改变默认规则:

1 让checked例外也回滚:在整个方法前加上 @Transactional(rollbackFor=Exception.class)

2 让unchecked例外不回滚: @Transactional(notRollbackFor=RunTimeException.class)

3 不需要事务管理的(只查询的)方法:@Transactional(propagation=Propagation.NOT_SUPPORTED)

注意: 如果异常被try{}catch{}了,事务就不回滚了,如果想让事务回滚必须再往外抛try{}catch{throw Exception}。

相关文章

  • @Transaction 注意事项(二)

    在service类前加上@Transactional,声明这个service所有方法需要事务管理。每一个业务方法开...

  • Bitcoin Transaction - Part One

    Transaction是什么? 我们随意看一个最简单的Transaction,看看什么是Transaction。在...

  • Transaction

    https://jeiwan.cc/posts/building-blockchain-in-go-part-4/...

  • transaction

    This transaction requires SMS code confirmation.

  • The transaction

    事务是数据库中的一组工作单元,它具有两个状态:成功或者失败,成功则一组动作全部提交,失败则全部动作被回滚。 事务主...

  • Transaction

    数据库往往要有如下要求 Concurrent database accessExecute sequence of...

  • Transaction

    事务 在实践开发中,控制数据库事务是一件非常重要的工作。将多条语句作为一个整体进行操作的功能,被称为数据库事务。M...

  • Transaction

    事务核心在于原子性,atomicy; 一致性consistency,isolation隔离性强调的是多个客户端间的...

  • 谈谈Transaction——MySQL事务处理分析

    MySQL 事务基础概念/Definition of Transaction 事务(Transaction)是访问...

  • 分布式事务-3

    JTA/JTS Java Transaction API Java事务API(Java Transaction A...

网友评论

      本文标题:@Transaction 注意事项(二)

      本文链接:https://www.haomeiwen.com/subject/tbadextx.html