• Spring事务管理的回滚


    1.Spring对事务的控制,默认情况下只对继承自RuntimeException和Error的非检查型异常进行回滚

        继承自Exception的检查型异常默认不回滚

    2.非检查型异常可以不用捕获,检查型异常必须try语句块处理或者声明抛给上级,才可以

    3.如果异常被try{}catch{}了,事务将不回滚,如果想让事务回滚,必须抛出个非检查型异常

    3.spring中的事务配置文件可以修改默认的回滚与否

       <!-- 配置事务的通知 -->
        <tx:advice id="txAdvice" transaction-manager="transactionManager">
            <tx:attributes>
                <tx:method name="save*" propagation="REQUIRED" rollback-for="java.lang.Exception"/>
                <tx:method name="insert*" propagation="REQUIRED" no-rollbackfor="java.lang.RuntimeException/>
                <tx:method name="update*" propagation="REQUIRED" />
                <tx:method name="delete*" propagation="REQUIRED" />
                
                <tx:method name="get*" read-only="true" />
                <tx:method name="*" propagation="REQUIRED" />
            </tx:attributes>
        </tx:advice>

  • 相关阅读:
    模拟赛QAQ
    复习计划
    luogu P1080 国王游戏
    [NOIP2012T3]开车旅行
    luogu P1967 货车运输
    同余方程组的扩展欧几里得解法
    luogu P1476 休息中的小呆
    GRYZY #13. 拼不出的数
    GRYZY- #10. 财富
    GRYZY #8. 公交车
  • 原文地址:https://www.cnblogs.com/2nao/p/6583034.html
Copyright © 2020-2023  润新知