Является ли включение параметра в params избыточным при использовании @RequestPram? - PullRequest
1 голос
/ 27 сентября 2019

В примере, подобном:

@GetMapping(value = "/artists", params = "genre")
public List<Artist> getArtists(@RequestParam String genre) {
}

включает genre в params избыточный, поскольку он также объявляется с использованием @RequestParam в сигнатуре метода?

При попыткедля сопоставления с различными методами для того же URL-адреса , является ли сигнатура метода той, которая соответствует методу, или также определяет params необходимость?

1 Ответ

2 голосов
/ 27 сентября 2019

В аннотации @RequestMapping (и других вариантах, специфичных для метода HTTP) элемент params предназначен для сужения отображений запросов на основе условий параметров запроса.Из документации :

Параметры сопоставленного запроса, сужающие первичное сопоставление.

Одинаковый формат для любой среды: последовательность в стиле myParam=myValueвыражений, причем запрос отображается только в том случае, если каждый такой параметр имеет заданное значение.Выражения могут быть отменены с помощью оператора !=, как в myParam!=myValue.Также поддерживаются выражения стиля myParam, причем такие параметры должны присутствовать в запросе (могут иметь любое значение).Наконец, выражения стиля !myParam указывают, что указанный параметр не должен присутствовать в запросе.

С другой стороны, @RequestParam аннотация позволяет привязать параметр запроса к аргументу метода.

Подробнее см. В документации 1030 *.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...