मैं एक विधि मिलान एक pointcut साथ एक पहलू को बनाने के लिए अगर जरूरत है:Pointcut मिलान तरीकों
- सार्वजनिक है
- इसकी वर्ग @Controller (अंत में नहीं है) के साथ टिप्पणी की जाती है
- इसके पैरामीटर में से एक (कई हो सकता है) @MyParamAnnotation के साथ एनोटेट किया गया है।
मुझे लगता है कि पहली दो स्थितियां आसान हैं, लेकिन मुझे नहीं पता कि वसंत के साथ तीसरे को पूरा करना संभव है या नहीं। यदि ऐसा नहीं है, हो सकता है मैं इस पर बदल सकते हैं:
- इसके मापदंडों का एक प्रकार com.me.MyType का एक उदाहरण है (या कुछ इंटरफ़ेस लागू करता है)
क्या आपको लगता है यह संभव है इस लक्ष्य को हासिल करें? और प्रदर्शन अच्छा होगा?
धन्यवाद
संपादित: एक मिलान विधि का एक उदाहरण है। जैसा कि आप देख सकते हैं, MyMethod को एनोटेट नहीं किया गया है (लेकिन यह हो सकता है)।
@Controller
public class MyClass {
public void MyMethod (String arg0, @MyParamAnnotation Object arg1, Long arg3) {
...
}
}
संपादित: समाधान मैं अंत में इस्तेमाल किया, @Espen उत्तरों के आधार पर। जैसा कि आप देख सकते हैं, मैंने अपनी स्थितियों को थोड़ा बदल दिया: कक्षा को वास्तव में @ नियंत्रक होने की आवश्यकता नहीं है।
@Around("execution(public * * (.., @SessionInject (*), ..))")
public void methodAround(JoinPoint joinPoint) throws Exception {
...
}
यह अच्छा लग रहा है, लेकिन यह वही नहीं है जो मैं ढूंढ रहा हूं। मैंने अधिक सटीक होने के लिए अपना प्रश्न संपादित किया। धन्यवाद। – sinuhepop
मुझे इसे सरल बनाने के लिए एक विधि मिली है। मैंने अपना प्रश्न संपादित किया, लेकिन आप सभी क्रेडिट! धन्यवाद। – sinuhepop
अच्छा संपादन! आपको इस तरह के प्रश्नों को देखने में खुशी हुई;) – sinuhepop