簡體   English   中英

Spring AOP記錄器,切入點定義

[英]Spring AOP logger, pointcut definition

我正在嘗試使用Spring AOP在我的項目中引入一個記錄器,但我是AOP和AspectJ語法的新手,所以我遇到了一些麻煩......

我已經在一些教程/文檔之后定義了一個基本的方面類:

@Aspect
public class Logger {

    @Pointcut("execution(* exportdatamanager.export.ExportType.fetch(..))")
    public void fetch() {
    }

    // ...

    @AfterReturning("fetch()")
    public void fetchingResult(JoinPoint joinPoint, Object result) {
        System.out.println("TEST LOG " + result.toString());
    }
}

但是當我運行我的應用程序時,我得到了這個異常

java.lang.IllegalArgumentException: error at ::0 formal unbound in pointcut 

我做錯了什么,我想我的ApsectJ表達中出了點問題......

您能否建議我快速參考 Spring AOP支持的AspectJ語法

注意

我的ExportType接口的片段

public interface ExportType {

    List<Object> fetch() throws FetchingStrategyException;

    // ...

}

好的,我這樣解決了我的問題:

@AfterReturning(pointcut = "fetch()", returning = "results")
public void fetchingResult(JoinPoint joinPoint, List<Object> results) {
    System.out.println("TEST LOG " + results.toString());
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM