怎么为扩展特定类的所有类指定单个切入点
原学程将引见若何为扩大特定类的一切类指订单个切进面的处置办法,这篇学程是从其余处所瞅到的,而后减了1些海外法式员的疑问与解问,愿望能对于您有所赞助,佳了,上面开端进修吧。
成绩描写
我有去自分歧包的多个类,它们扩大了1个类Super。
我想创立1个AOP切进面,它与扩大Super的一切类中的一切办法相婚配。
我曾经测验考试过了:
@Around("within(com.mypackage.that.contains.super..*)")
public void aroundAllEndPoints(ProceedingJoinPoint joinPoint) throws Throwable {
LOGGER.info("before Proceed ");
joinPoint.proceed();
LOGGER.info("after Proceed");
}
但是它没有起感化。
有甚么修议吗?
推举谜底
切进面应为:
within(com.mypackage.Super+)
个中com.mypackage.Super
是完整限制的基类称号,+
表现"一切子类"。这实用于Spring AOP。在AspectJ中,这将婚配太多衔接面,而不只仅是办法履行。上面是另外一个同时实用于Spring AOP以及AspectJ的切进面:
execution(* com.mypackage.Super+.*(..))
佳了闭于怎样为扩大特定类的一切类指订单个切进面的学程便到这里便停止了,愿望趣模板源码网找到的这篇技巧文章能赞助到年夜野,更多技巧学程不妨在站内搜刮。