Sobes.tech
Назад к вопросам
Junior — Middle
61

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

Ответ от нейросети

sobes.tech AI

В разработке 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);
}