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)
  • 相关阅读:
    PyCharm 2017.1.3版本破解
    Python 字典
    Python 列表和元组
    总结2016,展望2017
    使用MATLAB对图像处理的几种方法(下)
    使用MATLAB对图像处理的几种方法(上)
    忍不住想,我为什么要来大城市?
    学习技术的心得
    Net中的常见的关键字
    面向对象的JS(一)
  • 原文地址:https://www.cnblogs.com/webster1/p/6164839.html
Copyright © 2011-2022 走看看