通知和顾问

通知(Advice):是Spring提供的一种切面(aspect)。但其功能过于简单:只能将切入面织入到目标类的所有目标方法中,无法完成将切面织入到制定的目标方法中(即切入点)

顾问(Advisor):是spring提供的另一种切面。器可以完成更多复杂的切面织入功能。PointcoutAdvisor是顾问的一种。可以指定的切入点。顾问将通知包装,会根据不通的通知类型,在不同的时间点,将切面织入到不同的切入点。

PointcutAdvisor接口有两个较为常用的实现类:

>>NameMatchMethodPointcutAdvisor 名称匹配方法切入点顾问

>>RegexpMethodPointcutAdvisor 正则表达式匹配方法切入点顾问

通知:只控制AOP切入的时间,并没有控制aop切入点的权利

顾问:既有AOP切入时间的权利还有控制切入点的权利

因为顾问包装了通知,通知只是顾问中的一个属性,所以通风有的权利顾问都有,而顾问有的通知不一定有

猜你喜欢

转载自blog.csdn.net/sunboylife/article/details/80214607