स्प्रिंग दो अलग-अलग सत्यापन विधियों का समर्थन करता है: स्प्रिंग सत्यापन और जेएसआर -303 सेम सत्यापन। दोनों का उपयोग एक वसंत सत्यापनकर्ता को परिभाषित करके किया जा सकता है जो बीन सत्यापनकर्ता सहित अन्य प्रतिनिधियों को सौंपता है। अब तक सब ठीक है।
लेकिन जब वास्तव में सत्यापन का अनुरोध करने के तरीकों की व्याख्या करते हैं, तो यह एक और कहानी है। मैं इस तरह से एनोटेट कर सकता हूं
@RequestMapping(value = "/object", method = RequestMethod.POST)
public @ResponseBody TestObject create(@Valid @RequestBody TestObject obj, BindingResult result) {
या इस तरह
@RequestMapping(value = "/object", method = RequestMethod.POST)
public @ResponseBody TestObject create(@Validated @RequestBody TestObject obj, BindingResult result) {
इधर, @Valid है javax.validation.Valid , और @Validated है org.springframework.validation.annotation.Validated । बाद के लिए डॉक्स कहते हैं
जेएसआर -303 के मान्य के वेरिएंट, सत्यापन समूहों के विनिर्देश का समर्थन करते हैं। स्प्रिंग के JSR-303 समर्थन के साथ सुविधाजनक उपयोग के लिए डिज़ाइन किया गया, लेकिन JSR-303 विशिष्ट नहीं।
जो बहुत मदद नहीं करता है क्योंकि यह बिल्कुल नहीं बताता है कि यह कैसे अलग है। अगर सब पर। लगता है दोनों मेरे लिए बहुत अच्छा काम कर रहे हैं।