Spring mendukung dua metode validasi yang berbeda: validasi Spring dan validasi kacang JSR-303. Keduanya dapat digunakan dengan mendefinisikan validator Spring yang didelegasikan ke delegator lain termasuk bean validator. Sejauh ini baik.
Tetapi ketika memberi anotasi metode untuk benar-benar meminta validasi, itu cerita lain. Saya bisa memberi anotasi seperti ini
@RequestMapping(value = "/object", method = RequestMethod.POST)
public @ResponseBody TestObject create(@Valid @RequestBody TestObject obj, BindingResult result) {
atau seperti ini
@RequestMapping(value = "/object", method = RequestMethod.POST)
public @ResponseBody TestObject create(@Validated @RequestBody TestObject obj, BindingResult result) {
Di sini, @Valid adalah javax.validation.Valid , dan @Validated adalah org.springframework.validation.annotation.Validated . Dokumen untuk yang terakhir mengatakan
Varian Valid JSR-303, mendukung spesifikasi grup validasi. Didesain untuk penggunaan yang nyaman dengan dukungan JSR-303 Spring tetapi tidak spesifik JSR-303.
yang tidak banyak membantu karena tidak memberi tahu persis bagaimana perbedaannya. Jika sama sekali. Keduanya tampaknya bekerja dengan baik untuk saya.