在 foodie-dev-api 的 Application 类中可以指定 @EnableTransactionManagement 注解来开启事务的管理
为何不使用 @EnableTransactionManagement 就能使用事务呢?
@SpringBootApplication -> @EnableAutoConfiguration -> AutoConfigurationImportSelector.class
进入 getAutoConfigurationEntry 方法
进入 getCandidateConfigurations 方法
找到 spring.factories 文件
找到 org.springframework.boot.autoconfigure.transaction.TransactionAutoConfiguration
进入 TransactionAutoConfiguration 类,这里为 Spring 事务去启动自动装配
第 90 行和第 98 行使用的注解就是 @EnableTransactionManagement,并且事务的管理是基于 spring aop