# spring-apo **Repository Path**: liblw/spring-apo ## Basic Information - **Project Name**: spring-apo - **Description**: aop例子,按照tag分阶段 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2017-10-03 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # spring-apo aop例子,按照tag分阶段 如果不适用数据库,那么把spring-jpa-data去掉 测试类需要和源码在一个父目录下,否则需要额外配置,比较麻烦,所以最佳实践是放在一个目录里面 总结: aop是如何把advice动态代理到每个类的方法中的 1. 分解aspect的每个advice 2. 对于每个类进行判断是否有advice的pc指向它 3. 有指向说明有代理,那么生成动态代理,把与该类有关所有的advice都包含进去 4. 调用方法时对这些advice进行判断,看是否需要,需要的放入chain中进行调用