3.2 创建代理对象
这里是重点!敲黑板!!!
- 先获取 louzai 类的所有切面列表;
- 创建一个 AOP 的代理对象。
3.2.1 获取切面列表
这里有 2 个重要的方法,先执行 findCandidateAdvisors(),待会我们还会再返回 findEligibleAdvisors()。
依次返回,重新来到 findEligibleAdvisors()。
进入 canApply(),开始匹配 louzai 的切面。
这里是重点!敲黑板!!!
这里只会匹配到 Louzai.testSuccess() 方法,我们直接进入匹配逻辑。
如果匹配成功,还会把事务的属性配置信息放入 attributeCache 缓存。
我们依次返回到 getTransactionAttribute(),再看看放入缓存中的数据。
再回到该小节开头,我们拿到 louzai 的切面信息,去创建 AOP 代理对象。
3.2.2 创建 AOP 代理对象
创建 AOP 代理对象的逻辑,在上一篇文章(Spring AOP)讲解过,我是通过 Cglib 创建,感兴趣的同学可以关注公众号「楼仔」,翻一下楼仔的历史文章。




















