spring 事务回滚

问题描述

@Transactionalpublic Map routSave(RoutFormBean routbean) throws Exception{ Map result=new HashMap();StringBuffer sb=new StringBuffer();sb.append("delete from WfNrouteTbl where nrountePk.dnp_kbn='");sb.append(routbean.getDnp());sb.append("' and nrountePk.dep='");sb.append(routbean.getDiv());sb.append("' and nrountePk.rtno=");sb.append(routbean.getRtno());commonService.updateByHql(sb.toString());if (1==1){ throw new Exception("asdfa");}}如上事务中、事务不会回滚 如果改成throw new RuntimeException("asdfa");则事务会回滚为什么?

解决方案

spring 默认的是针对发生运行时异常回滚,对检查异常不会滚,这是spring的特性,可以配置的

时间: 2025-01-02 03:10:44

spring 事务回滚的相关文章

spring事务回滚只能配在service层吗。为什么我想在Test中添加事务不能进行回滚呢

问题描述 spring事务回滚只能配在service层吗.为什么我想在Test中添加事务不能进行回滚呢 <tx:advice id="txAdvice2" transaction-manager="txManager"> <tx:attributes> <tx:method name="inserttwo*" propagation="REQUIRED"/> </tx:attribut

spring 事务 回滚-spring @Transactional 事务不能回滚

问题描述 spring @Transactional 事务不能回滚 在spring的配置文件里配置如下: <!-- enable the configuration of transactional behavior based on annotations --> <tx:annotation-driven transaction-manager="txManager"/> <!-- a PlatformTransactionManager is sti

spring 事务回滚问题

问题描述 我有2个DAO分别是IndepotOrderDao和InDepotRecordDao都继承JdbcDaoSupportpublicclassIndepotOrderDaoImplextendsJdbcDaoSupport{saveInDepotOrder(IndepotOrderindepotOrder){sql="insertintoindepotOrder(name)value(?)";Object[]args={"orderName"};this.g

Spring 事务回滚失败

问题描述 applicationContext.xml中配置:......<aop:config><aop:pointcut id="servicesPointcut" expression="execution(* *.impl.service.*.*(..))" /><aop:advisor advice-ref="txAdvice" pointcut-ref="servicesPointcut&quo

spring的事务回滚策略为自定义异常

问题描述 spring的事务回滚策略为自定义异常 我配置的回滚策略如下 BusinessException是个自定义异常,继承了RuntimeException,按道理来说spring应该是捕捉到这个异常类或这个异常类的子类才进行的回滚,但是为什么抛出RuntimeException以后事务还是会回滚? 解决方案 http://shaohan126448.iteye.com/blog/1536879 解决方案二: spring异常与事务回滚Spring异常抛出触发事务回滚策略异常类型 &&

ThinkPHP实现事务回滚示例代码_php实例

ThinkPHP的事务回滚示例如下: $m=D('YourModel');//或者是M(); $m2=D('YouModel2'); $m->startTrans();//在第一个模型里启用就可以了,或者第二个也行 $result=$m->where('删除条件')->delete(); $result2=m2->where('删除条件')->delete(); if($result && $result2){ $m->commit();//成功则提交

spring 注解事务回滚问题

问题描述 spring 注解事务回滚问题 ,错误异常是数据库表主键不可重复,控制台报了违反了表的约术,但是SPring却不回滚..项目能正常运行.用的是注解. 解决方案 看看这里http://my.oschina.net/xuqiang/blog/97633

插入多条数据回滚-hibernate 手动控制事务回滚失败

问题描述 hibernate 手动控制事务回滚失败 spring配置: 5201005100 <bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean"> <property name="dataSource" ref="dataSource" />

在Java的JDBC使用中设置事务回滚的保存点的方法_java

新的JDBC3.0保存点的接口提供了额外的事务控制.他们的环境中,如Oracle的PL/ SQL中的大多数现代的DBMS支持保存点. 当设置一个保存点在事务中定义一个逻辑回滚点.如果发生错误,过去一个保存点,则可以使用rollback方法来撤消要么所有的改变或仅保存点之后所做的更改. Connection对象有两个新的方法,可帮助管理保存点: setSavepoint(String savepointName): 定义了一个新的保存点.它也返回一个Savepoint 对象. releaseSav