Spring正在将@queryparam Boolean的字符串值转换为false
我在requestmapping中将此作为queryparam: @QueryParam(“isBenchmark”)布尔isBenchmark 现在,如果我也传递任何字符串值,它将默认为false。如果不是真/假,我如何避免这种情况并抛出错误。 是否有任何注释可用于抛出此类验证?这是一个已知问题 使用Spring正在将@queryparam Boolean的字符串值转换为false,spring,spring-boot,spring-mvc,annotations,Spring,Spring Boot,Spring Mvc,Annotations,我在requestmapping中将此作为queryparam: @QueryParam(“isBenchmark”)布尔isBenchmark 现在,如果我也传递任何字符串值,它将默认为false。如果不是真/假,我如何避免这种情况并抛出错误。 是否有任何注释可用于抛出此类验证?这是一个已知问题 使用新布尔值(isBenchmark)将其转换为布尔值,因此当isBenchmark为true时,它将转换为true,在所有其他情况下,它将转换为false 不幸的是,你必须自己处理 public
新布尔值(isBenchmark)
将其转换为布尔值,因此当isBenchmark
为true时,它将转换为true,在所有其他情况下,它将转换为false
不幸的是,你必须自己处理
public void YourMethod(@QueryParam("isBenchmark") String isBenchmark) {
boolean val
if (isBenchmark != null && isBenchmark.equals("true")){
val = true;
} else if (isBenchmark != null && isBenchmark.equals("false")) {
val = false;
} else {
Throw Exception or return a bad request
}
}