@Autowired
private DataSourceTransactionManager txManager;
new Thread(new Runnable() {
@Override
public void run() {
//手动启动事务
DefaultTransactionDefinition def = new DefaultTransactionDefinition();
def.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW);// 事物的传播行为
TransactionStatus status = txManager.getTransaction(def); // 获得事务状态
try{
//写自己的业务逻辑
txManager.commit(status);//手动提交事务
}catch(Exception e){
e.printStackTrace();
//线程内事务回滚
txManager.rollback(status);
}
}
}).start();