spring+ibatis+oracel事务不回滚

笑逸新风 发布于 2012/12/12 10:11
阅读 1K+
收藏 0
一个方法内插入两张表,第一张表成功,第二张表失败,但是事务不回滚,数据库中第一张插入成功,请问什么原因?
第二张表失败的原因,是国为,插入的字段的长度大于列设置的长度

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:aop="http://www.springframework.org/schema/aop"
       xmlns:tx="http://www.springframework.org/schema/tx"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
           http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.0.xsd
           http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.0.xsd">

    <aop:config proxy-target-class="true">
    
      <aop:advisor pointcut="execution(* com.greentrip.console.onlinefilelog.service.OnlineFileLogManager.*(..))" advice-ref="txAdvice"/>
        <aop:advisor pointcut="execution(* com.greentrip.console.card..*Manager.*(..))" advice-ref="txAdvice"/>
        <aop:advisor pointcut="execution(* com.greentrip.console.merchant..*Manager.*(..))" advice-ref="txAdvice"/>
        <aop:advisor pointcut="execution(* com.greentrip.console.commons.*Dao.*(..))" advice-ref="txAdvice"/>

   
    </aop:config>
    <tx:advice id="txAdvice" transaction-manager="sqlMapTransactionManager">
        <tx:attributes>
            <tx:method name="save*" propagation="REQUIRED" rollback-for="java.lang.Exception"/>
           <tx:method name="add*" propagation="REQUIRED" />
            <tx:method name="remove*"/>
            <tx:method name="*" read-only="true"/>
        </tx:attributes>
    </tx:advice>
    
</beans>


public boolean saveCashAdd(OnlineFileLog onlineFileLog, List detailList, Map parameter) 
    {
     boolean isSuccess = true;
     for(int i = 0; i < detailList.size(); i++)
     getSqlMapClientTemplate().insert("cashAddDtl.insert", (CashAddDtl)detailList.get(i));      

     getSqlMapClientTemplate().insert("onlineFileLog.insert", onlineFileLog);       
     return isSuccess;
}   
加载中
0
空指针
空指针
确定在同一事物中?
0
笑逸新风

事务的传播性 propagation="REQUIRED已经配了

 

 

0
柳倾城
柳倾城

开启log4j的debug模式看事务有没开启,

另外 sqlMapTransactionManager 这个bean在另一个配置文件?

返回顶部
顶部