本文介绍了如何自动验证@RestController 中的其余参数?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想自动验证 spring REST 服务上的 REST 参数.

I want to automatically validate REST parameters on a spring REST service.

我使用@Valid @NotNull 尝试过,但其余请求不会被自动拒绝,而是使用空参数执行 dao 方法.为什么?

I tried it using @Valid @NotNull, but the rest request does not get rejected automatically, but the dao method is executed with null argument. Why?

@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?

How can I get automatically a returned HTTP error, eg 400?

推荐答案

这里是一个请求参数验证的例子..

Here is an example of validation on request parameters..

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/

希望这会有所帮助.

谢谢,保罗

这篇关于如何自动验证@RestController 中的其余参数?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-29 13:07