我可以找到這樣做的唯一方法是包裝清單,這也意味着JSON輸入將不得不改變。
@RequestMapping(method = RequestMethod.POST, value = { "/doesntmatter" })
@ResponseBody
public List<...> myMethod(@Valid @RequestBody List<MyBean> request, BindingResult bindingResult) {
變爲:
@RequestMapping(method = RequestMethod.POST, value = { "/doesntmatter" })
@ResponseBody
public List<...> myMethod(@Valid @RequestBody MyBeanList request, BindingResult bindingResult) {
,我們還需要:
import javax.validation.Valid;
import java.util.List;
public class MyBeanList {
@Valid
List<MyBean> list;
//getters and setters....
}
這看起來也是可能與列出的自定義validatior,但我沒有得到那麼遠, 。
@Valid註釋是標準JSR-303 Bean驗證API的一部分,並且不是特定於Spring的構造。 Spring MVC將在綁定後驗證@Valid對象,因爲已經配置了適當的Validator。
參考:http://docs.spring.io/spring/docs/current/spring-framework-reference/html/validation.html
來源
2016-02-23 21:50:55
J0B
您可以使用此https://stackoverflow.com/a/36313615/ 3110023 – mehdi