在我的请求映射中,它作为queryparam:@QueryParam(" isBenchmark ")布尔isBenchmark
现在,如果m传递任何字符串值,那么它也将默认为false。如果不是真/假,我如何避免这一点并抛出错误。是否有任何注释可用于引发这样的验证?
发布于 2021-03-22 09:30:02
这是一个众所周知的问题。
使用new Boolean(isBenchmark)将其转换为布尔值,因此当isBenchmark为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
}
}https://stackoverflow.com/questions/66742042
复制相似问题