मैंने इन विषयों पर spring2.5 पर कुछ पुस्तकें पढ़ी हैं, लेकिन अभी भी @initBinder का उपयोग करने के लिए अवधारणाओं को नहीं पकड़ सकते हैं। क्या कोई भी किसी भी संदर्भ को साझा कर सकता है या समझा सकता है कि मैं वेब एप्लिकेशन पर किस स्थिति का उपयोग कर सकता हूं? संपत्ति एडिटर उससे कैसे संबंधित है?वसंत initBinder और webbindinginitializer उदाहरण
उत्तर
ठीक है, मैं वास्तव में किताबों से बेहतर नहीं रख सकता हूं, लेकिन अगर आपके नियंत्रक के पास @ इंटबिंडर के साथ एनोटेटेड कोई सार्वजनिक विधि है, तो इन अनुरोधों को संसाधित करने से पहले इन अनुरोधों को कंटेनर द्वारा बुलाया जाएगा, ढांचे द्वारा वेबडाटाइंडर का उपयोग किया जा रहा है।
ऐसा करने का सबसे आम कारण यह है कि जब आप अपने मॉडल पर अनुरोध पैरामीटर को बाध्य करने का प्रयास करते हैं, तो उदाहरण के लिए यदि आपके मॉडल में कस्टम डेटाटाइप हैं जो वसंत बॉक्स से बाहर नहीं हो सकता है। आप WebDataBinder के विरुद्ध अपने PropertyEditors को पंजीकृत करते हैं। एक छोटा सा उदाहरण होगा यदि आप अपने मॉडल में जोडाटाइम लाइब्रेरी का उपयोग करते हैं, और आप जोडा डेटटाइम ऑब्जेक्ट पर टाइमस्टैम्प स्ट्रिंग को बांधना चाहते हैं।
स्प्रिंग 2.0 के साथ, आप नियंत्रक सुपरक्लास से संरक्षित initBinder() विधि को ओवरराइड करने के लिए उपयोग करते हैं, लेकिन स्प्रिंग 2.5 इसे करने की आवश्यकता को हटा देता है, तो आप अब एनोटेशन का उपयोग कर सकते हैं।
यह वसंत 2.5.1+ की आवश्यकता होती है https://jira.springsource.org/browse/SPR-4182
क्या उल्लेख किया skaffman बगल में एक और कारण देखते हैं, अपने WebDataBinder पर एक कस्टम सत्यापनकर्ता स्थापित करने के लिए किया जाएगा। मैं आमतौर पर जेएसआर -303 बीन सत्यापन का उपयोग करता हूं, और उसके बाद एक वैधकर्ता बांधता है जो जेएसआर -303 द्वारा प्रदान नहीं किया गया अतिरिक्त सत्यापन प्रदान करता है।
अपने नियंत्रक के अंदर:
@InitBinder
protected void initBinder(WebDataBinder webDataBinder) {
Validator validator = webDataBinder.getValidator();
webDataBinder.setValidator(new UserFormValidator(validator));
}
मैं क्या कर रहा हूँ सेम सत्यापनकर्ता में ले जा रहा है, बुला कि अपने कस्टम validator के अंदर, और उसके बाद अपने कस्टम सत्यापन बुला। कुछ ऐसा:
public class UserFormValidator implements Validator {
private Validator validator;
public AuthUserFormValidator(Validator validator) {
this.validator = validator;
}
@Override
public boolean supports(Class<?> clazz) {
return UserForm.class.equals(clazz);
}
@Override
public void validate(Object target, Errors errors) {
// Run the bean validation...
validator.validate(target, errors);
// Do your custom validation on userForm here...
UserForm userForm = (UserForm) target;
// Validation on userForm...
}
}
- 1. वसंत 3.1 @ कैशेबल उदाहरण
- 2. वसंत
- 3. वसंत डिस्पैटर सर्बलेट एकाधिक उदाहरण
- 4. वसंत वेबएमवीसी और वसंत सुरक्षा
- 5. वसंत सुरक्षा oauth 2 सरल उदाहरण
- 6. वसंत MVC: SimpleFormController
- 7. वसंत और hibernate.cfg.xml
- 8. वसंत और एनोटेशन @ वैल्यू
- 9. वसंत और jquery
- 10. टॉमकैट पूल और वसंत
- 11. वसंत और AspectJ
- 12. जावा, एक्सएमएल और वसंत
- 13. टेस्टएनजी और वसंत 3
- 14. मोंगो डीबी और वसंत
- 15. वसंत और रिज़ॉल्यूशन देखें
- 16. वसंत और इंटरफेस
- 17. उत्परिवर्तन और वसंत
- 18. वसंत
- 19. वसंत और मिश्रण एसक्यूएल और नोएसक्यूएल डीबी
- 20. कोई कार्यक्षेत्र उदाहरण के साथ कोई अच्छा वसंत धागा?
- 21. वसंत सुरक्षा - कोई दृश्यमान WebSecurityExpressionHandler उदाहरण अनुप्रयोग संदर्भ
- 22. वसंत
- 23. वसंत
- 24. पहलू और वसंत पहलू-ऑटोप्रोक्सी
- 25. वसंत
- 26. बाध्यकारी वसंत: सबमिट पर enumset करने के लिए चेकबॉक्स त्रुटि
- 27. वसंत
- 28. वसंत
- 29. वसंत
- 30. वसंत