【发布时间】:2019-11-07 14:12:00
【问题描述】:
我正在尝试使用@Positive bean 验证注释验证控制器方法(REST Api 资源)整数参数,但没有任何反应。
Java:
Java 版本“11.0.2”2019-01-15 LTS
Java(TM) SE 运行时环境 18.9(内部版本 11.0.2+9-LTS)
Java HotSpot(TM) 64 位服务器 VM 18.9(内部版本 11.0.2+9-LTS,混合模式)
春季启动:
2.1.6.发布
代码:
@RestController
@RequestMapping("/test")
public class TestController {
@GetMapping("/{id}")
public ResponseEntity<?> lista(@Valid @NotNull @Positive @PathVariable("id") Integer id) {
String msg = "";
if (id > 0) {
msg = "id > 0";
} else {
msg = "id <= 0";
}
System.out.println(msg);
return ResponseEntity.ok(msg);
}
}
@Positive 没有做它应该做的事情。
测试:
要求:
获取 localhost:8080/test/0
回应:
200 OK “id
预期:
400 错误请求
要求:
获取 localhost:8080/test/-1
回应:
200 OK “id
预期:400 错误请求
当我尝试 GET localhost:8080/test/teste 时,我收到了 400 Bad Request,正如预期的那样。
【问题讨论】:
标签: java spring spring-boot bean-validation jsr380