春に全体の休憩コントローラクラスのロギング

Bunthai鄧小:

私は残りのコントローラは、多くのメソッドが含まれてい

@RestController
@RequestMapping("v1/test")
public class TestRestController {

   ...... 100 methods (GET, POST, PATCH, etc)
}

どのように私は使用せずにアクセスされている方法を知ることができprint、それぞれの方法では?
それを行うための任意の方法はありますか?

アヌラーダ:

春とアスペクト指向プログラミングを使用します:

import org.aspectj.lang.JoinPoint;
import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.annotation.Before;
import org.aspectj.lang.annotation.Pointcut;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;    

@Aspect
public class SpringAspect {

    private static final Logger LOG = LoggerFactory.getLogger(SpringAspect.class);

    @Before("execution(* sample.package.path.TestRestController.*(..))")
    public void executedMethodsLogger(JoinPoint joinPoint) {
        LOG.info("[ Executed method {} ]", joinPoint.toString());
    }

}

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=6334&siteId=1