Gymterview
junior

Для чего нужен интерфейс ServletResponse

ServletResponse — это интерфейс для отправки данных клиенту в ответ на запрос. Он предоставляет методы для управления содержимым ответа, кодировкой, типом контента и потоками вывода.

Основные методы

Метод Назначение
getOutputStream() Возвращает байтовый поток для отправки бинарных данных
getWriter() Возвращает символьный поток для отправки текстовых данных
setContentType(String) Устанавливает MIME-тип ответа (например, text/html, application/json)
setCharacterEncoding(String) Устанавливает кодировку ответа
setContentLength(int) Задаёт значение заголовка Content-Length
setLocale(Locale) Устанавливает локаль документа
reset() Сбрасывает заголовки к значениям по умолчанию (если ответ ещё не отправлен)

Подкласс HttpServletResponse расширяет эти возможности методами для работы с HTTP: установка статус-кодов (setStatus()), управление заголовками (setHeader(), addHeader()), перенаправления (sendRedirect()), добавление cookies (addCookie()).

На собеседовании: важно упомянуть, что нельзя одновременно использовать getWriter() и getOutputStream() — будет IllegalStateException. Нужно выбрать один поток в зависимости от типа данных.