我想在spring REST服务上自动验证REST参数。

我使用@Valid @NotNull进行了尝试,但是其余请求不会自动被拒绝,但是dao方法是使用null参数执行的。为什么?

@RestController
public class RestController {
    @RequestMapping(value = "/")
    public Boolean getResponse(@Valid @NotNull @Length(max = 20) String username) {
          return daoService.lookup(username); //is executed if username = null
    }
}


如何自动获得返回的HTTP错误,例如400?

最佳答案

这是对请求参数进行验证的示例。

public ResponseEntity<AgencyResource> saveAgency(
    @Valid @RequestBody AgencyResource agencyResource) {
 return new ResponseEntity<AgencyResource>(agencyResource, HttpStatus.OK);
 }


这是从POST http://www.leveluplunch.com/java/tutorials/017-validate-spring-rest-webservice-request/

希望这可以帮助。

谢谢,
保罗

09-25 21:25