Spring注解事务不支持 protect private 方法的原因
AbstractFallbackTransactionAttributeSource中getTransactionAttribute方法调用了其本身的computeTransactionAttribute方法,如下图,其中allowPublicMethodsOnly方法由子类AnnotationTransactionAttributeSource实现,该子类方法中默认是true,所以当你加了事务注解的方法不是public时,该方法直接返回null
接下来是AopUtils.canApply方法
由于canApply方法返回false所以没有添加对应的事务Advisor