spring - 在 Spring REST 控制器中验证 @RequestParam 不起作用
问题描述
我想验证我的 GET 方法的参数。我添加了tis依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>
我写了这个控制器:
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.validation.constraints.Min;
@Validated
@RestController
public class TestController {
@GetMapping(value = "/test")
public String getTest(@Min(value = 3, message = "min 3")
@RequestParam("hz") String hz,
@RequestParam("hz1") String hz1) {
return "test";
}
}
我添加了配置:
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.validation.beanvalidation.MethodValidationPostProcessor;
@Configuration
public class Config {
@Bean
public MethodValidationPostProcessor methodValidationPostProcessor() {
return new MethodValidationPostProcessor();
}
}
该请求工作正常!为什么?
http://localhost:8088/test?hz=12&hz1=123
解决方案
推荐阅读
- excel - Excel中的目标搜索
- amazon-web-services - 使用 aws-cli s3 同步命令对象 acl 的问题
- vba - 什么是使用过滤后的表单结果作为查询记录集的 vba 代码
- reactjs - 当我尝试使用 redux 和 react js 控制台状态时,为什么我的操作结果数据为空
- sql-server - sql中的WOS计数
- weblogic - 在 Oracle Service Bus 中生成安全标头时发生 Web 服务安全错误
- vue.js - 取消表单后重置对象值
- r - 数据帧行中不匹配的总和 - R
- rust - 使用 Rust 从字节数组创建 Tendermint/Cosmos 加密私钥密钥文件
- python - Sympy:多元多项式组合