Spring声明式事务无法管理new Thread线程解决方案
newThread(newRunnable(){@Overridepublicvoidrun(){//spring无法处理thread的事务,声明式事务无效DefaultTransactionDefinitiondef=newDefaultTransactionDefinition();def.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRED);PlatformTransactionManagertxManager=ContextLoader.getCurrentWebApplicationContext().getBean(PlatformTransactionManager.class);TransactionStatusstatus=txManager.getTransaction(def);try{processEachPlan(learn);txManager.commit(status);//提交事务}catch(Exceptione){Logger.info("异常信息:"+e.toString());txManager.rollback(status);//回滚事务}}}).start();
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。