AOP中几个关键的概念
·切面一个关注点的模块化,这个关注点可能会横切多个对象。事务管理是J2EE应用中一个关于横切关注点的很好的例子。切面=com.xxx.xxx.xxx包
·连接点(Joinpoint):在程序执行过程中某个特定的点,比如某方法调用的时候或者处理异常的时候。在SpringAOP中,一个连接点总是表示一个方法的执行。
·通知(Advice):在切面的某个特定的连接点上执行的动作。其中包括了“around”,“before”和“after”等不同类型的通知(通知的类型将在后面部分进行讨论)。(在JointPoint上所采取的动作,许多AOP框架通常以interceptor来实现Advice)
·切入点(Pointcut):匹配连接点的断言。通知和一个切入点表达式关联,并在满足这个切入点的连接点上运行(例如,当执行某个特定名称的方法时)。
·在一个包下面有一个方法在执行,满足切入点表达式和通知,这个点就是切入点
·目标对象(Target Object):被一个或者多个切面所通知的对象。
·织入(Weaving):把切面连接到其它的应用程序类型或者对象上,并创建一个被通知的对象。
·通知类型:
- 前置通知(Before advice):在某连接点之前执行的通知。
- 后置通知(After returning advice):在某连接点正常完成后执行的通知。
- 异常通知(After throwing advice):在方法抛出异常退出时执行的通知。
- 最终通知(After (finally) advice):当,某个连接点退出的时候执行的通知·
- 环绕通知(Around Advice):包围一个连接点的通知,
LogHandler在hello()这个JointPoint上会调用Around Advice。
事务处理调用的Advice也是属于Around Advice