1.代理的选择:在spring中,框架会根据目标类是否实现了接口来决定采用哪种动态代理的方式。
2.相关术语:2.1.Joinpoint(连接点)--service接口中的方法都是连接点,
连接的是我们的业务和增强方法(通知)的点
或者说 能被拦截要被增强的点都是连接点
2.2.Pointcut切入点 service接口中被增强的方法
2.3.Advice通知:提取出来的公共代码,增强的方法
通知的类型:前置通知,后置通知,异常通知,最终通知,环绕通知。
2.4.Target(目标对象):被代理对象
2.5.Weaving(织入):创建代理对象的过程(增强的过程)
2.6 Aspect切面:(公共代码(通知方法)和业务层(切入点方法)之间建立的关系就是切面,
可以通过Spring框架来配置该切面.
2.7.Proxy(代理):代理对象
通俗讲, AOP思想就是把中间的非主流程的代码(比如:验证、事务管理、缓存、日志记录等), 横向抽取出来
放在一个公共的类中, 也就是通知.通知+切入点就是切面.可以通过Spring框架来配置该切面.
Spring框架可以为我们做的:
Spring框架监控切入点方法的执行。一旦监控到切入点方法被运行,使用代理机制,动态创建目标对象的代
理对象,根据通知类别,在代理对象的对应位置,将通知对应的功能织入,完成完整的代码逻辑运行。
Spring中AOP的一些小细节
最新推荐文章于 2024-07-25 11:59:12 发布