Java AOP学习

先说说我对几个概念的理解

通知(Advice):横切操作时具体的操作。
切入点(Pointcut):描述什么时候需要进行横切操作,即在哪些地方需要加入通知,但是切入点不关心具体的通知是什么。
通知者(Advisor):由于通知者是通过切入点来创建的(切入点作为创建一个通知者实例时的参数),切入点可以对目标类和目标方法进行详细的描述,所以通知者告诉代理哪些类的哪些方法需要进行横切操作,从而对需要实现横切的方法进行灵活的定制。我把通知者理解为切入点和通知的绑定(通知作为创建通知者实例时的另一个参数),它描述了哪些类的哪些方法需要进行哪些横切操作(即哪个通知)。

再说说代理,代理的作用就是透明的为我们提供获得了通知的目标类(具体的使用方法看一下例子就明白了,非常简单)。这个目标类可以是我们自己写的任何类或者其他第三方类。我们在调用通过代理得到的目标类中的方法时就会触发某个通知,从而完成横切操作。

最后是我总结的实现横切的一般步骤
简单的切入:
1,创建某个通知的实例(spring提供五种通知)
2,创建代理的的实例
3,将通知加入代理
4,通过代理获取目标类实例
5,调用目标类的方法。


可对需要横切的方法进行具体定制的切入:
1,创建切入点实例(Spring提供了七种可对目标类和目标方法进行定制的切入点实现)
2,通过切入点和通知创建通知者实例
3,将通知者加入代理
4,通过代理获取目标类实例
5,调用目标类的方法。

实现Spring IoC容器的访问,可以通过如下两个接口完成
1.BeanFactory:开发者借助于配置文件实现对JavaBean的配置和管理.
2.ApplicationContext:构建在BeanFactory基础上,既继承于它,除了具有BeanFactory的功能外,还添加其他的功能
.3区别:BeanFactory 延迟载入所有的Bean,至到getBean()被调用时才被创建。
ApplicationContext 在上下文启动后预载入所有的单实例Bean
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值