我有一个REST API,在其中转换传递的请求。现在我想验证使用@Valid注释转换的实体。
public RequestResponse create(EntityV1 entityV1){
Entity entity = transform(entityV1)
}
private Entity transform(EntityV1 entityV1){
Entity entity = new Entity();
//Transformation logic
return entity;
}
请给我一个方法,通过它可以使用我的自定义注释验证转换的返回类型。
约束:我无法将我的rest api的输入从EntityV1更改为Entity
您需要以编程方式验证bean,如下所示:
@Autowired
Validator validator;
public RequestResponse create(EntityV1 entityV1, BindingResult bindingResult){
Entity entity = transform(entityV1);
validator.validate(entity, bindingResult);
if (bindingResult.hasErrors()) {
// validation errors
} else {
// no errors
}
}