zoukankan      html  css  js  c++  java
  • 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>

  • 相关阅读:
    iOS 绕过https证书验证 请求数据
    RN import ** from ** 用法
    蓝牙开发笔记
    golang笔记
    python3 md5
    python3 zip压缩
    nginx应用
    zipimport.ZipImportError: can't find module 'encodings'
    python3 模块安装列表
    cmd笔记
  • 原文地址:https://www.cnblogs.com/2nao/p/6583034.html
Copyright © 2011-2022 走看看