首页 > 编程语言 > 详细

Spring声明式事务无法管理new Thread线程解决方案

时间:2017-07-31 14:14:38      阅读:482      评论:0      收藏:0      [点我收藏+]
new Thread(new Runnable() {
				@Override
				public void run() {
					// spring无法处理thread的事务,声明式事务无效
					DefaultTransactionDefinition def = new DefaultTransactionDefinition();
					def.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRED);
					PlatformTransactionManager txManager = ContextLoader.getCurrentWebApplicationContext().getBean(PlatformTransactionManager.class);
					TransactionStatus status = txManager.getTransaction(def);
					
					try {
						processEachPlan(learn);
						txManager.commit(status); // 提交事务
					} catch (Exception e) {
						Logger.info("异常信息:" + e.toString());
						txManager.rollback(status); // 回滚事务
					}
				}
			}).start();


本文出自 “13165304” 博客,请务必保留此出处http://13175304.blog.51cto.com/13165304/1952201

Spring声明式事务无法管理new Thread线程解决方案

原文:http://13175304.blog.51cto.com/13165304/1952201

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!