Выбор ответа Junior Spring MVC и REST спрашивают часто обновлено

@PathVariable и @RequestParam

Вопрос

Запрос GET /api/orders/42?status=paid. Как получить 42 и paid?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: @PathVariable long id и @RequestParam String status. @PathVariable берёт сегмент пути из шаблона /{id}, @RequestParam параметр строки запроса после ?. @RequestBody читает тело, у GET-запроса его обычно нет. @RequestHeader читает заголовки.

Варианты ответа

  1. @RequestParam long id и @PathVariable String status
  2. @PathVariable long id и @RequestParam String statusправильный ответ
  3. @RequestBody long id и @RequestParam String status
  4. @RequestHeader long id и @RequestParam String status

Разбор

@PathVariable берёт сегмент пути из шаблона /{id}, @RequestParam параметр строки запроса после ?. @RequestBody читает тело, у GET-запроса его обычно нет. @RequestHeader читает заголовки.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.