Сопоставление pointcut с конкретными аргументами - PullRequest
1 голос
/ 29 ноября 2011

Весной я хочу выражение, которое соответствует методу с конкретными аргументами.

Сейчас у меня есть это выражение

     execution(* delete(..))

Но я хочу сопоставить конкретные аргументы, так как существует 4удалите методы в интересующем меня классе.

Я хочу что-то вроде этого

       execution(* delete(com.xyz.A, com.xyz.B,java.lang.String )

Это то, что я написал и не работает.Я что-то упустил?

Ответы [ 2 ]

0 голосов
/ 29 ноября 2011

Я делаю это следующим образом:

@Pointcut("target(com.xyz.ClassName) && execution(* myMethod(com.xyz.A, com.xyz.B,java.lang.String))")

Надеюсь, это поможет.

0 голосов
/ 29 ноября 2011

Синтаксис выглядит правильно. Я полагаю, вам не хватает закрывающей скобки.

@Pointcut("execution(* delete(com.xyz.A, com.xyz.B,java.lang.String))")

Причина, по которой это, вероятно, не так очевидно, заключается в том, что она является частью String вашей аннотации Pointcut (при условии, что вы используете подход, основанный на аннотациях), и поэтому, если выбранная вами IDE не проверяется Pointcut аннотаций, это не бросит большой волнистый красный цвет в ваше лицо.

...