AOP Советы вокруг RequestMapping - PullRequest
       7

AOP Советы вокруг RequestMapping

1 голос
/ 15 ноября 2011

Как я могу создать Pointcut вокруг моих методов, аннотированных @RequestMapping?

У меня есть определенный Pointcut, который я бы хотел немного ограничить:

@Pointcut("execution(public * company.controllers.AbstractController+.*(..))")
public void methodPointcut() { }

ЭтоМожно ли в дальнейшем ограничить это только методами, аннотированными с помощью @RequestMapping?

Я попытался добавить && @annotation в конец Pointcut, но это не совсем правильно Pointcut.

Ответы [ 2 ]

2 голосов
/ 15 ноября 2011

Вы можете указать аннотации в pointcut:

@Pointcut("execution(@RequestMapping public * company.controllers.AbstractController+.*(..))")
public void methodPointcut() { } 

Это то, что вы уже пробовали?

1 голос
/ 15 ноября 2011

Я думаю, что это было проще всего сделать с двумя Pointcuts.

@Pointcut("execution(public * company.controllers.AbstractController+.*(..))")
public void methodPointcut() {}

и

@Pointcut("within(@org.springframework.web.bind.annotation.RequestMapping *)")
public void requestMapping() {}

Тогда просто делаем:

@ Before ("methodPointcut () && requestMapping ()")

...