#spring #spring-boot #spring-mvc #annotations
#spring #spring-boot #spring-mvc #примечания
Вопрос:
У меня есть это как параметр запроса в моем сопоставлении запросов: @QueryParam(«isBenchmark») boolean isBenchmark
Теперь, если я передаю какое-либо строковое значение, оно по умолчанию принимает значение false. Как я могу избежать этого и выдать ошибку, если она отличается от true / false. Есть ли какие-либо аннотации, с помощью которых я могу выполнять такие проверки
Ответ №1:
Это известная проблема.
Он преобразуется в boolean с использованием new Boolean(isBenchmark)
So, когда isBenchmark
значение true преобразуется в true, во всех остальных случаях оно преобразуется в false.
К сожалению, вы должны справиться с этим самостоятельно
public void YourMethod(@QueryParam("isBenchmark") String isBenchmark) {
boolean val
if (isBenchmark != null amp;amp; isBenchmark.equals("true")){
val = true;
} else if (isBenchmark != null amp;amp; isBenchmark.equals("false")) {
val = false;
} else {
Throw Exception or return a bad request
}
}