Вот ешкин кот, я же тебе в
предыдущем вопросе дал направление на почитать!
Еще раз - что делают декларации в твоем коде:
gift-certificates
, я так понимаю, это глобальный префикс для контроллера
@GetMapping(params = {ParameterName.SORT_BY})
означает: вызови этот метод, когда урл выглядит как
gift-certificates?sort_by
Когда урл не подходит, берется общий -
@GetMapping
- который отвечает за
gift-certificates
, поскольку все параметры после знака вопроса опциональны.
Если же тебе надо как-то отловить параметры с произвольными именами - тогда проштудируй
вот эту статью - там как раз разобраны типичные случаи (в частности, пункт 6).