增加执行校验前的验证:不含验证器的实体类直接跳过

This commit is contained in:
2025-05-13 14:49:02 +08:00
parent 7b140a9015
commit b5c2b36e1a

View File

@@ -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,6 +84,7 @@ public class ConfigControllerV1 extends BaseController {
MethodParameter methodParameter = new MethodParameter(method, 1); MethodParameter methodParameter = new MethodParameter(method, 1);
// 执行校验 // 执行校验
if (validator.supports(clazz)) {
try { try {
BindingResult bindingResult = new BeanPropertyBindingResult(newConfig, clazz.getSimpleName()); BindingResult bindingResult = new BeanPropertyBindingResult(newConfig, clazz.getSimpleName());
validator.validate(newConfig, bindingResult); validator.validate(newConfig, bindingResult);
@@ -98,6 +97,7 @@ public class ConfigControllerV1 extends BaseController {
// 对指定类型未找到 validator忽略之 // 对指定类型未找到 validator忽略之
log.debug("Cannot find a validator for {}", clazz.getName()); log.debug("Cannot find a validator for {}", clazz.getName());
} }
}
T oldConfig = configService.getConfig(clazz); T oldConfig = configService.getConfig(clazz);
oldConfig.mergeFrom(newConfig); oldConfig.mergeFrom(newConfig);