读书人

Spring aop 札记

发布时间: 2012-10-16 09:57:37 作者: rapoo

Spring aop 笔记

好久没有写代码了,最近都忙着新项目的打包,测试,写起代码来也没有状态,所以趁机回忆一下spring aop的一些内容。

aop的几个基本概念

1、joinpoint(接入点) : 我理解为类中的某个成员函数

2、advice(通知):是接入点的执行代码,执行的具体逻辑

3、pointcut(切入点):理解为joinpoint的集合

4、aspect(方面):pointcut和advice结合起来就是aspect,代表的更多是对象间横向的关系

5、instroduct(引入):为对象引入附加的方法或属性,从而达到修改对象结构的目的。

?

aop的主要技术依赖是代理技术,spring应该使用了JDK的动态代理和CGLIB的动态代理机制,JDK的动态代理可能在1.3之前的效率不是很好,所以Spring在后续使用了CGLIB

spring中aop相关的接口

advice相关接口:

MethodBeforeAdvice(方法前通知)/AfterReturnningAdvice(方法返回通知)/MethodInterceptor(方法拦截)

?

pointcut相关接口:

Pointcut

spring提供的相关实现,StaticMethodMatcherPointcut,DynamicMethodMatcherPointcut,NameMatchMethodPointcut等等

?

aspect相关的我想应该算Advisor吧,主要是DefaultPointcutAdvisor这个类

?

?

?

读书人网 >软件架构设计

热点推荐