spring中的interceptor和aop中的advice 有啥关系?

具体是拦截的动作 还是后续的行为,具体该如何理解

阅读 8.4k
1 个回答
Advice
  +-- AfterAdvice
    +-- AfterReturningAdvice
    +-- ThrowsAdvice
  +-- BeforeAdvice
    +-- MethodBeforeAdvice
  +-- Interceptor
    +-- MethodInterceptor

上面是spring代码中Advice继承层次的一个部分快照。从这个就可以看出Interceptor和Advice的关系。Advice是AOP编程中某一个方面(Aspect)在某个连接点(JoinPoint)所执行的特定动作,这个连接点(JoinPoint)可以是自定义的;而Spring中的Interceptor更多关注程序运行时某些特定连接点(属性访问,对象构造,方法调用)时的动作。确切的说,Interceptor的范围更窄一些。具体的差异,请看Spring的javadoc。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题