原因: 同一个类内这样调用的话,只有第一次调用了动态代理生成的ProxyClass,之后一直用的是不带任何切面信息的方法本身 解决办法 将需要事务的方法放到另一个类中。 例子 @Component public class A { @Resource private B b; @Async public void test()