Следующий URL запрашивает БД и возвращает все значения, правильно используя requestParam, как показано ниже:Как установить RequestMapping значение по умолчанию/требуемое значение для URL?
http://localhost:8080/app/locateUser/search?firstname=John&lastname=Clay&id=2
@RequestParam(value = "firstname") String firstname,
@RequestParam(value = "lastname") String lastname,
@RequestParam(value = "id") int id
Теперь я хочу сделать Lastname факультативным (удалить из URL) в так:
http://localhost:8080/app/locateUser/search?firstname=John&id=2
или
http://localhost:8080/app/locateUser/search?firstname=John&lastname=&id=2
Как сделать URL необязательный? Я хочу иметь возможность запрашивать БД без последнего имени в строке URL.
Это то, что у меня есть:
@RequestParam(value = "firstname") String firstname,
@RequestParam(value = "lastname" defaultValue = "lname") String lastname,
@RequestParam(value = "id") int id
Я также пробовал
@RequestParam(value = "lastname" required=false) String lastname,
Ни кажется, работает. Что мне не хватает?
Он должен работать с 'требуется = false', показать нам свою полную сигнатуру методы и ошибку вы имеете, это может помочь понять вашу проблему –
Что не работает ... Когда' требуется = ложь 'тогда вы получите пустую строку не null, вам, конечно, придется что-то делать дальше по строке, чтобы игнорировать пустые параметры в запросе ... –
Это может помочь http://stackoverflow.com/questions/17647214/form- value-to-be-null-вместо-in-spring –