当前位置: 代码迷 >> J2SE >> spring 注解事务的有关问题
  详细解决方案

spring 注解事务的有关问题

热度:337   发布时间:2016-04-24 01:33:11.0
spring 注解事务的问题
这是配置文件:

<!-- 事务管理器 -->
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource" />
</bean>
   
  <!-- 开启基于注解的事务配置 -->
  <tx:annotation-driven transaction-manager="transactionManager" proxy-target-class="true" />

部分java 代码:

@Transactional(readOnly = false, propagation = Propagation.REQUIRED , rollbackFor = { CPlatformServiceException.class })
public int modShopRemoteUpgrade(long id, String versionId, String updateTime, String updateContent,String softWarePath) {



int affCnt = shopRemoteUpgradeDao.updateRemoteUpgrade( id, versionId, updateTime, updateContent,softWarePath);


TShgjVersion version=new TShgjVersion();
shopRemoteUpgradeDao.insertRemoteUpgrade(version);


return affCnt;

}
蓝色部分可以修改数据
红色部分我故意让其报错 ,而且抛出CPlatformServiceException.class异常

我此时把注解部分的 rollbackFor = { CPlatformServiceException.class }给去掉
我的目的就是不让程序回滚,
此时操作程序,按理说,
蓝色部分的数据应该会被修改的。但是,我经过测试发现,蓝色部分的数据还是没有改过来,这应该不符合我的要求的,请求帮助。

------解决方案--------------------
看传智播客的视频吧,会有帮助的
  相关解决方案