NDM*_*NDM 1 java spring-boot spring-rest
我正在学习 java 和 spring boot,我正在尝试验证从 json 绑定的控制器参数。
我有一个简单的实体:
@Getter
@Setter
class Resource {
@NotBlank
String uri;
}
Run Code Online (Sandbox Code Playgroud)
我想通过以下控制器持久化:
@BasePathAwareController
public class JavaResourcePostController {
private final ResourceRepository repository;
public JavaResourcePostController(ResourceRepository repository) {
this.repository = repository;
}
@RequestMapping(value = "/resources", method = RequestMethod.POST)
ResponseEntity<Resource> create(
@Valid @RequestBody Resource resource
) {
repository.save(resource);
return ResponseEntity.ok(resource);
}
}
Run Code Online (Sandbox Code Playgroud)
我的理解是,进入方法时资源参数应该有效。但发布空uri字段不会触发该方法的验证。然而它确实在休眠验证中被触发repository.save()
为什么@Valid参数上的注释不能确保我获得经过验证的实体?
| 归档时间: |
|
| 查看次数: |
3846 次 |
| 最近记录: |