Używam Aspect do rejestrowania czynności w mojej aplikacji na bazie sprężyny mvc. Używam adnotacji @controller do definiowania dowolnego kontrolera w mojej aplikacji. Mam dwie inny kontroler w dwóch różnych pakietu powiedzeniaJak określić pojedyncze cięcie punktowe dla wielu paczek
- com.package1 zawiera kontroler 1 klasa, nazwijmy go jako AController
- com.package2 zawiera kontroler 2 klasę, nazwijmy go jako BController
jestem w stanie zastosować się do jednego konkretnego aspektu pakietu sterowników za pomocą
<aop:config>
<aop:pointcut id="pointcut1"
expression="execution(* package1.*.*(..))"
id="policy1" />
<aop:aspect ref="aspect1" order="1">
<aop:before pointcut-ref="pointcut1" method="before" arg-names="joinPoint" />
<aop:after-returning returning="returnValue" arg-names="joinPoint, returnValue" pointcut-ref="pointcut1" method="after" />
</aop:aspect>
</aop:config>
<bean id="aspect1" class="com......aspectclass" />
Moje pytanie brzmi: jak określić więcej niż jeden pakiet i inny n wyrażenie (* pakiet1. .. (..)) **.
W tej chwili deklaruję jeden oddzielny skrót dla każdej paczki i jeden aspekt osobnego wpisu aop:before
i i aop:after
dla każdego cięcia punktowego. Ale myślę, że powinien to być idealny sposób na zdefiniowanie wielu pakietów punktów.