AOP_2.使用cglib中的Proxy技术实现

在上篇的基础上创建CglibProxyFactory

 

在AOPTest类中添加方法

 

AOP中的概念
 
1. Aspect(切面)
指横切性关注点的抽象即为切面,它与类相似,只是两者的关注点不一样,类是对物体特征的抽象,而切面横切性关注点的抽象.
例子中:业务bean方法 就是切面,当然切面也可以是字段,或者其它,意思也就是从那里下手
 
2. joinpoint(连接点)
所谓连接点是指那些被拦截到的点。在spring中,这些点指的是方法,因为spring只支持方法类型的连接点,实际上joinpoint还可以是field或类构造器)
例子中:被拦截的点是一个连接点,那么例子中的连接点是业务bean方法,每个拦截到的都是一个连接点
3. Pointcut(切入点)
所谓切入点是指我们要对那些joinpoint进行拦截的定义.
例子中:也可以说是一个描述吧,“拦截所有的业务bean 方法”就是切入点,只是个定义
4. Advice(通知)
所谓通知是指拦截到joinpoint之后所要做的事情就是通知.通知分为前置通知,后置通知,异常通知,最终通知,环绕通知
例子中:见CglibProxyFactory类中的注释位置
5. Target(目标对象)
 代理的目标对象  例子中:PersonServiceBean就是目标对象
6. Weave(织入)
指将aspects应用到target对象并导致proxy对象创建的过程称为织入.
7. Introduction(引入)
在不修改类代码的前提下, Introduction可以在运行期为类动态地添加一些方法或Field.
总结:
以上两种实现AOP编程是Spring AOP的核心,Spring AOP创建代理对象的时候,会检查目标对象是否实现某个接口,如果实现了某个接品就会用JDK中的Proxy技术,反之则用cglib 中的Proxy技术。 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值