2015-12-18 4 views

ответ

1

Из раздела весенних документов 10.2.3 в link это совершенно ясно, и исполнение используется для обозначения pointcut.

execution(modifiers-pattern? ret-type-pattern declaring-type-pattern?name-pattern(param-pattern) throws-pattern?) 
  1. модификаторы-модель - видимость Метода (публичный, защищенный, частный, *) RET-типа модель - типа возвращаемого значения метода
  2. объявляя-типа модель - пакет или класс (экс : com.app.service. * - применяется ко всем классам этого пакета, com.app.service.UserService - относится только к классу UserService, * - all)
  3. имя-шаблон - имя метода (например: set * - все сеттеры)
  4. param-pattern - параметры метода (.. - любое количество параметров, java.lang.String - meth od принимает параметр String.
  5. throws-pattern - метод, бросающий это исключение.

В вашем случае

expression="execution(* com.my.application.service..*Manager.*(..))"/> 

вы обозначая этот Pointcut ко всем методам, чьи имя_класс концов с менеджером в пакете com.my.application.service & его суб-пакеты.