美文网首页
Spring+Mybatis 手动控制事务

Spring+Mybatis 手动控制事务

作者: 丸_子 | 来源:发表于2016-09-27 15:52 被阅读854次
    public boolean testDelete(String jobCode) throws Exception {  
          boolean flag = false;  
          //1.获取事务控制管理器  
          DataSourceTransactionManager transactionManager = HqznContext.getBean(  
               "transactionManager", DataSourceTransactionManager.class);//这里是spring手动注入bean,也可以使用自动注入 HqznContext是一个工具类:主要用于简化spring手动注入代码  
          //2.获取事务定义  
          DefaultTransactionDefinition def = new DefaultTransactionDefinition();  
          //3.设置事务隔离级别,开启新事务  
          def.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW);  
          //4.获得事务状态  
          TransactionStatus status = transactionManager.getTransaction(def);  
          try {  
            //5.具体的数据库操作(多个)  
            BOBaseJob r = new BOBaseJob();  
            r.setJobCode("SW001");  
            r.setJobName("事务001");  
            BOBaseJobMapper.deleteByPrimaryKey(jobCode);  
            BOBaseJobMapper.insert(r);  
            flag = true;  
            transactionManager.commit(status);  
          } catch (Exception e) {  
            transactionManager.rollback(status);  
          }  
          return flag;  
       }
    

    欢迎加入QQ群:104286694

    相关文章

      网友评论

          本文标题:Spring+Mybatis 手动控制事务

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