zoukankan      html  css  js  c++  java
  • 春天的事务管理,图解事务传播行为

    9.3.5 所需的传播行为 图最9-3 新  {      addressService.save(user.getAddress()); //将在同一个事务内执行 }赶上(RuntimeException的E)  userService.countAll());  Assert.assertEquals(1,addressService.countAll());  为如下形式: java的代码: Java的代码  尝试{      userService.save(用户);     Assert.fail();  }赶上(RuntimeException的E) {  }  Assert.assertEquals(0,userService.countAll()); Assert.assertEquals(0,  RequiresNew传播行为 图最9-5 TransactionTemplate的=  TransactionTemplate的= userService.countAll());  Assert.assertEquals(1,  新  userService.countAll()); Assert.assertEquals(1,addressService.countAll());  为如下形式: java的代码: Java的代码  尝试{      userService.save(用户);      Assert.fail();  }赶上(RuntimeException的E) {  }  Assert.assertEquals(0,userService.countAll());  Assert.assertEquals(1,  所需的+支持传播行为        图最9-7        需要+ NotSupported传播行为        图最9-9        需要+强制性传播行为        图最9-11        所需的+决不传播行为        图最9-13        需要+嵌套的传播行为 图最9-15嵌套+嵌套的传播行为 嵌套和RequiresNew的区别: 1,RequiresNew每次都创建新的独立的物理事务,而嵌套只有一个物理事务; 2,RequiresNew由于都是全新的事务,所以之间是无关联的; 3,嵌套使用JDBC 正确的事务只读设置 图最9-17 交易带的定义[......]没有被标记为 春天的事务之9.3编程式事务 226 积分:700    发表时间:10小时前最后修改:9小时前引用收藏 代理方式下的自我调用 图最9-18 修改TransactionProxyFactoryBean的配置定义,添加exposeProxy属性为真; 2,在业务方法内通过代理对象调用相应的事务方放,如 使用这种方式属于侵入式,不推荐使用,除非必要。 图9-19代理方式下的自我调用 
  • 相关阅读:
    log4j不生成日志文件的问题
    前端得到或者改变组件的值
    取list的值
    idea Library XXXXXXXX has broken classes paths
    session.save()返回值问题
    Intellij Error:Cannot build Artifact 'XXX:war exploded' because it is included into a circular dependency
    shell小结
    python操作rabbitMQ小结
    python+rabbitMQ实现生产者和消费者模式
    Python操作rabbitmq消息队列持久化
  • 原文地址:https://www.cnblogs.com/baiduligang/p/4246988.html
Copyright © 2011-2022 走看看