Spring trainee
Чем @RestController отличается от @Controller?
Ответ
@RestController = @Controller + @ResponseBody. То есть результаты методов сразу сериализуются HttpMessageConverter'ами (по умолчанию Jackson в JSON) и отдаются в body ответа. @Controller сам по себе ожидает имя view (для рендера HTML).
Разбор: @RestController — это композиция @Controller и @ResponseBody, поэтому возвращаемые объекты конвертируются HttpMessageConverter'ами (по умолчанию Jackson в JSON) прямо в тело ответа, а не трактуются как имя view. Дистракторы подменяют @ResponseBody на @RequestMapping, искажают формат на XML и приписывают автоматическую обёртку в ResponseEntity и фиксированный статус.
Хочешь так же по своей компании — с вопросами по грейдам и задачами? Закажи гайд или забери свежее в Telegram.