基于@RestController 的Spring 使用Validator 接口(interface)的方法是创建一个验证器自定义类,实现Validator 接口(interface)。在 Controller 类中调用 InitBinder 来注册验证器类。然后当 REST 请求到来时,调用该类的验证器。这对我来说仍然有问题。假设我有一个 PersonValidator 类,它为 POST 执行一种类型的验证,为 PUT 执行另一种类型的验证。由于这两个处理程序都存在于同一个 REST Controller 类中,我该如何运行不同的验证? 说在同一个休息 Controller 类中,我想对 POST 使用 PostPersonValidator,对 PUT 使用 PutPersonValidator。我不知道该怎么做。
最佳答案
关注这篇文章:http://howtodoinjava.com/2015/02/12/spring-mvc-custom-validator-example/
您基本上必须创建两个单独的验证器——正如您所说的(一个用于 POST,一个用于 PUT)。然后只需在适当的 POST/PUT 处理方法中调用它们。如果您遵循链接示例,应该会非常简单。
关于spring - 用于 @Valid 的 Spring Rest Controller 的 InitBinder,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29723171/