202010-10 Spring事务失效场景原理及解决方案 1.事务失效-自身调用(通过REQUIRES、REQUIRES_NEW传播属性):自身调用即调该类自己的方法。同类OrderServiceImpl中doSomeThing()方法不存在事务,该方法去调用本类中的存在事务注解的insertAndUpdateOrderInfo()方法。但是insertAndUpdateOrderInfo()其实是无法保证预想的事务性。示列验证:OrderServiceImpl.insertAndUpdateOrderInfo方法中upateData(updateParam)发生异常时,insertData(insertParam)未发生回滚说明:自... 继续阅读 >
202010-10 Spring事务失效的几种原因 数据库引擎不支持事务在MySQL数据库中有几种引擎(InnoDB,MyISAM,Memory等等),仅仅InnoDB支持事务,如果数据库底层都不支持事务的话,那么再怎么折腾都是白搭.@transactional加在private方法上@Transactional只能加在public方法上,如果需要在private方法中加入事务,可以使用Aspect配transactionManager使用.本类方法调本类另一个方法例如:@ServicepublicclassUserServiceImplimplementsUserService{@Transactionalpublicvoi... 继续阅读 >