zoukankan      html  css  js  c++  java
  • 【转】spring 事物通过<tx 标签配置

    解释一下execution(* com.hisun.mvc.service.*.*(..))"中几个通配符的含义:

    第一个 * —— 通配 任意返回值类型
    第二个 * —— 通配 包com.hisun.mvc.service下的任意class
    第三个 * —— 通配 包com.hisun.mvc.service下的任意class的任意方法
    第四个 .. —— 通配 方法可以有0个或多个参数

    综上:包com.hisun.mvc.service下的任意class的具有任意返回值类型、任意数目参数和任意名称的方法

    <tx:advice/> 有关的设置

    这一节里将描述通过 <tx:advice/> 标签来指定不同的事务性设置。默认的 <tx:advice/> 设置如下:

    • 事务传播设置是 REQUIRED

    • 隔离级别是 DEFAULT

    • 事务是 读/写

    • 事务超时默认是依赖于事务系统的,或者事务超时没有被支持。

    • 任何 RuntimeException 将触发事务回滚,但是任何 checked Exception 将不触发事务回滚

    这些默认的设置当然也是可以被改变的。 <tx:advice/> 和 <tx:attributes/> 标签里的 <tx:method/> 各种属性设置总结如下:

    属性 是否需要? 默认值 描述
    name  

    与事务属性关联的方法名。通配符(*)可以用来指定一批关联到相同的事务属性的方法。 如:'get*''handle*''on*Event'等等。

    propagation REQUIRED 事务传播行为
    isolation DEFAULT 事务隔离级别
    timeout -1 事务超时的时间(以秒为单位)
    read-only false 事务是否只读?
    rollback-for  

    将被触发进行回滚的 Exception(s);以逗号分开。 如:'com.foo.MyBusinessException,ServletException'

    no-rollback-for  

     被触发进行回滚的 Exception(s);以逗号分开。 如:'com.foo.MyBusinessException

  • 相关阅读:
    快慢指针
    成绩排序
    简单排序
    个人作业——软件工程实践总结作业
    团队作业——项目验收与总结博客(麻瓜制造者)
    Beta阶段总结博客(麻瓜制造者)
    “福大易宝”宣传文案
    Beta冲刺(5/5)(麻瓜制造者)
    Beta冲刺(4/5)(麻瓜制造者)
    个人作业——软件工程实践总结作业(待续)
  • 原文地址:https://www.cnblogs.com/flord/p/5848579.html
Copyright © 2011-2022 走看看