मैं अपने वसंत एमवीसी आधारित एप्लिकेशन में लॉगिंग गतिविधियों के लिए पहलू का उपयोग कर रहा हूं। मैं अपने आवेदन में किसी भी नियंत्रक को परिभाषित करने के लिए @controller एनोटेशन का उपयोग कर रहा हूं। मैं दो अलग-अलग पैकेज में दो अलग-अलग नियंत्रक कहनाएकाधिक पैकेजों के लिए सिंगल पॉइंटकट निर्दिष्ट करने के लिए
- com.package1 नियंत्रक 1 वर्ग शामिल है, के नाम के रूप में AController
- com.package2 नियंत्रक 2 वर्ग शामिल हैं, की यह BController
मैं
<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" />
का उपयोग करके नियंत्रकों के एक विशेष पैकेज के लिए पहलू लागू करने में सक्षम हूँ मेरा प्रश्न अधिक है कि एक अलग पैकेज निर्दिष्ट करने का तरीका है मैं एन अभिव्यक्ति (* पैकेज 1। ।। (..)) **।
अभी मैं प्रत्येक पैकेज के लिए एक अलग पॉइंटकट घोषित कर रहा हूं और पहलू में एक अलग aop:before
और प्रत्येक पॉइंटकट के लिए aop:after
प्रविष्टि। लेकिन मुझे लगता है कि यह एकाधिक पैकेज पॉइंटकट को परिभाषित करने का आदर्श तरीका होना चाहिए।