增加执行校验前的验证:不含验证器的实体类直接跳过
This commit is contained in:
@@ -16,8 +16,6 @@ import org.springframework.web.bind.annotation.RequestMapping;
|
|||||||
import org.springframework.web.bind.annotation.ResponseBody;
|
import org.springframework.web.bind.annotation.ResponseBody;
|
||||||
import org.springframework.validation.BeanPropertyBindingResult;
|
import org.springframework.validation.BeanPropertyBindingResult;
|
||||||
import org.springframework.validation.BindingResult;
|
import org.springframework.validation.BindingResult;
|
||||||
import org.springframework.validation.Errors;
|
|
||||||
|
|
||||||
import com.fasterxml.jackson.databind.JsonNode;
|
import com.fasterxml.jackson.databind.JsonNode;
|
||||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||||
|
|
||||||
@@ -86,17 +84,19 @@ public class ConfigControllerV1 extends BaseController {
|
|||||||
MethodParameter methodParameter = new MethodParameter(method, 1);
|
MethodParameter methodParameter = new MethodParameter(method, 1);
|
||||||
|
|
||||||
// 执行校验
|
// 执行校验
|
||||||
try {
|
if (validator.supports(clazz)) {
|
||||||
BindingResult bindingResult = new BeanPropertyBindingResult(newConfig, clazz.getSimpleName());
|
try {
|
||||||
validator.validate(newConfig, bindingResult);
|
BindingResult bindingResult = new BeanPropertyBindingResult(newConfig, clazz.getSimpleName());
|
||||||
|
validator.validate(newConfig, bindingResult);
|
||||||
|
|
||||||
if (bindingResult.hasErrors()) {
|
if (bindingResult.hasErrors()) {
|
||||||
throw new MethodArgumentNotValidException(methodParameter, bindingResult);
|
throw new MethodArgumentNotValidException(methodParameter, bindingResult);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
catch (UnexpectedTypeException e) {
|
||||||
|
// 对指定类型未找到 validator,忽略之
|
||||||
|
log.debug("Cannot find a validator for {}", clazz.getName());
|
||||||
}
|
}
|
||||||
}
|
|
||||||
catch (UnexpectedTypeException e) {
|
|
||||||
// 对指定类型未找到 validator,忽略之
|
|
||||||
log.debug("Cannot find a validator for {}", clazz.getName());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
T oldConfig = configService.getConfig(clazz);
|
T oldConfig = configService.getConfig(clazz);
|
||||||
|
|||||||
Reference in New Issue
Block a user