周·煜 2010-08-08 01:27
浏览 196
已采纳

【spring + hibernate】 事物无法回滚问题 再发

事物配置:
Java代码

<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">   
   <property name="sessionFactory">   
    <ref bean="sessionFactory"/>   
   </property>   
</bean>   

<!--事物的传播特性  -->   
<tx:advice id="transactionAdvice" transaction-manager="transactionManager">   
   <tx:attributes>   
        <tx:method name="save*"   />   
        <tx:method name="*" read-only="true"  />   
       </tx:attributes>   
    </tx:advice>   
<aop:config>   
  <aop:pointcut id="transactionOperation" expression="execution(* com.base.service..*.*(..))" />   
  <aop:advisor  advice-ref="transactionAdvice" pointcut-ref="transactionOperation" />   
</aop:config>  






tx:attributes


/tx:attributes
/tx:advice

<aop:config> 



/aop:config

Java代码
server 层为事物边界

public void saveGame(GameClassEntity o) {

this.GameDao.saveGame(o);

}

server 层为事物边界

public void saveGame(GameClassEntity o) {
this.GameDao.saveGame(o);
}

Dao 层的方法 不管你抛什么异常 打死也不回滚! 极度郁闷ing

Java代码
public void saveGame(GameClassEntity o){

this.save(o);

throw new RuntimeException("测试异常");

}

public void saveGame(GameClassEntity o){
this.save(o);
throw new RuntimeException("测试异常");
}

展开全部

  • 写回答

1条回答 默认 最新

  • oyj7454103 2010-08-08 02:01
    关注

    1.0 数据库表是否支持事物回滚 mysql--> innoDB
    2.0 既然事物让spring管理 就不要自己再去 try catch 了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
编辑
预览

报告相同问题?

手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部