Какое отличие между аннотациями @RequestBody и @ResponseBody в разработке REST API?

В разработке REST API на Java аннотации @RequestBody и @ResponseBody используются для работы с телом HTTP-запроса и ответа соответственно:

Короткий ответ

Что ответить на собеседовании

В разработке REST API на Java аннотации @RequestBody и @ResponseBody используются для работы с телом HTTP-запроса и ответа соответственно:

Подробный разбор

Ответ с пояснениями

В разработке REST API на Java аннотации @RequestBody и @ResponseBody используются для работы с телом HTTP-запроса и ответа соответственно:

  • @RequestBody — указывает, что тело входящего HTTP-запроса должно быть преобразовано (десериализовано) в объект Java. Например, JSON из запроса автоматически преобразуется в объект.
  • @ResponseBody — указывает, что возвращаемое методом значение должно быть сериализовано в тело HTTP-ответа (например, объект Java преобразуется в JSON).

Пример:

@PostMapping("/users")
public @ResponseBody User createUser(@RequestBody User user) {
    // user — объект, полученный из JSON запроса
    // возвращаем объект, который будет преобразован в JSON ответа
    return userService.save(user);
}

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее