在线等待 Spring + ibatis 事务问题。

开源螺丝钉 2012-05-11 10:16:59

public boolean insertTxTest() {
try {// 添加异常捕获 事务不能回滚 name 是主键,不添加异常捕获 事务正常回滚。
UserBean userBean = new UserBean();
userBean.setName("张三");
userBean.setPw("123456");
getSqlMapClientTemplate().insert("tx.insert",userBean);
getSqlMapClientTemplate().insert("tx.insert",userBean);
return true;
} catch (Exception e) {
e.printStackTrace();
}
return false;
}


<!-- 事务处理器 -->
<bean
class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
<property name="beanNames">
<list>
<value>txTestDao</value>
</list>
</property>
<property name="interceptorNames">
<list>
<value>transactionInterceptor</value>
</list>
</property>
</bean>
<bean id="transactionInterceptor"
class="org.springframework.transaction.interceptor.TransactionInterceptor">
<property name="transactionManager" ref="transactionManager" />
<property name="transactionAttributes">
<props>
<prop key="*">PROPAGATION_REQUIRED,-Exception</prop>
</props>
</property>
</bean>


现在问题是怎么在添加 异常捕获 情况下 事务也正常回滚。
谢谢
...全文
67 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
游一游走一走 2012-05-11
  • 打赏
  • 举报
回复
我只知道"添加 异常捕获 情况下"spring没法回滚的,还是在action层捕获异常吧
boolean result=false;
try{
result=insertTxTest();
}catch (Exception e) {
e.printStackTrace();
}

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧