AspectJ - 除一个包外的所有类的切点
创始人
2024-09-20 02:00:48
0

要在AspectJ中创建一个切点,只匹配一个包以外的所有类,可以使用withincode!操作符来实现。下面是一个示例代码:

import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Pointcut;

@Aspect
public class MyAspect {
    @Pointcut("withincode(* com.example..*.*(..)) && !withincode(* com.example.package.*.*(..))")
    public void myPointcut() {}
    
    // 添加其他切面逻辑
    
    // 在需要使用切点的地方,引用 myPointcut() 方法即可
}

在上述代码中,withincode指示AspectJ匹配在某个方法的内部执行的代码。com.example..*.*(..)表示匹配com.example包及其子包中的所有类和方法。!withincode(* com.example.package.*.*(..))则通过!操作符来排除com.example.package包中的类和方法。

要使用切点,请在需要的地方引用myPointcut()方法。例如,可以在通知注解(如@Before、@After)中使用切点:

import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Before;
import org.springframework.stereotype.Component;

@Aspect
@Component
public class MyAspect {
    @Before("com.example.aspect.MyAspect.myPointcut()")
    public void beforeAdvice() {
        System.out.println("Before advice executed!");
    }
}

通过这种方式,切点myPointcut()将只匹配除com.example.package包以外的所有类和方法。

相关内容

热门资讯

透视方案!aa poker透视... 透视方案!aa poker透视软件,aapoker透视方法(透视)一贯是有透视神器(哔哩哔哩)1、首...
透视课程!德州透视竞技联盟,w... 透视课程!德州透视竞技联盟,wepoker有辅助功能吗(透视)都是是真的挂(哔哩哔哩)1、很好的工具...
透视大纲!aapoker脚本怎... 透视大纲!aapoker脚本怎么用,aapoker如何设置胜率(透视)本来是有脚本app(哔哩哔哩)...
透视教程书!wepoker私人... 透视教程书!wepoker私人局辅助挂,菠萝德普辅助器免费版在哪里(透视)其实是有挂(哔哩哔哩)所有...
透视课程!aapoker辅助插... 透视课程!aapoker辅助插件工具,aapoker辅助插件工具(透视)切实有脚本脚本(哔哩哔哩)1...
透视妙招!德州局透视脚本免费版... 透视妙招!德州局透视脚本免费版下载手机版,aapoker真的假的(透视)本来有挂(哔哩哔哩)1、下载...
透视方式!德州透视竞技联盟,约... 透视方式!德州透视竞技联盟,约局吧德州真的存在透视吗(透视)一贯有脚本方法(哔哩哔哩)一、约局吧德州...
透视阶段!aa poker透视... 透视阶段!aa poker透视软件,aapoker透视插件(透视)好像真的是有脚本挂(哔哩哔哩)1、...
透视步骤!wpk俱乐部怎么作必... 透视步骤!wpk俱乐部怎么作必弊,wpk辅助是什么(透视)确实真的是有透视软件(哔哩哔哩)1)wpk...
透视诀窍!大菠萝辅助器,哈糖大... 透视诀窍!大菠萝辅助器,哈糖大菠萝挂(透视)确实真的是有脚本方法(哔哩哔哩)在进入大菠萝辅助器软件靠...