zoukankan      html  css  js  c++  java
  • 编程式事务



    <bean id="dbAtcBean" class="com.utils.DbAtcBean">
    <property name="txManager" ref="txManager" />
    <property name="txDefinition">
    <bean
    class="org.springframework.transaction.support.DefaultTransactionDefinition">
    <property name="propagationBehaviorName" value="PROPAGATION_REQUIRES_NEW" />
    </bean>
    </property>
    </bean>

    try {
    dbAtcBean.beginwork(ctx);
    insertCdDtl(ctx);
    } catch (Exception e) {
    dbAtcBean.rollBackWork(ctx);
    e.printStackTrace();
    }
    dbAtcBean.commitwork(ctx);

    /**
    * 数据库事务管理bean
    * @author Administrator
    *
    */
    public class DbAtcBean {
    private String TRANSACTIONSTATUS = "TRANSACTIONSTATUS";
    private TransactionDefinition txDefinition;
    private PlatformTransactionManager txManager;

    public TransactionDefinition getTxDefinition() {
    return txDefinition;
    }

    public void setTxDefinition(TransactionDefinition txDefinition) {
    this.txDefinition = txDefinition;
    }

    public PlatformTransactionManager getTxManager() {
    return txManager;
    }

    public void setTxManager(PlatformTransactionManager txManager) {
    this.txManager = txManager;
    }

    public void commitwork(Context cxt) {

    TransactionStatus aa = cxt.getVariable(TRANSACTIONSTATUS);
    if(null!=aa && !aa.isCompleted()){
    txManager.commit(aa);
    }

    }

    public void rollBackWork(Context cxt) {
    TransactionStatus aa = cxt.getVariable(TRANSACTIONSTATUS);
    if(null!=aa && !aa.isCompleted()){
    txManager.rollback(aa);
    }
    }

    public void beginwork(Context cxt) {
    TransactionStatus aa = txManager.getTransaction(txDefinition);
    cxt.setVariable(TRANSACTIONSTATUS, aa);
    }

    }

    群交流(262200309)
  • 相关阅读:
    [源码解析] 消息队列 Kombu 之 基本架构
    拿破仑,技术大牛晋级管理之后的困境
    Dyno-queues 分布式延迟队列 之 辅助功能
    Dyno-queues 分布式延迟队列 之 生产消费
    Dyno-queues 分布式延迟队列 之 基本功能
    DOM和BOM的区别
    Navigator对象
    expr命令
    ReactRouter的实现
    History对象
  • 原文地址:https://www.cnblogs.com/webster1/p/6164839.html
Copyright © 2011-2022 走看看