logo search
Ответы к экзамену по ПИИ

Спецификация Servlet. Назначение. Основные возможности.

Сервлет– это web-компонент, расположенный в серверной части web-приложения. Сервлеты выполняются в специальной среде – контейнере сервлетов, который является составной частью web-контейнера.

Среда, в которой может работать web-контейнер определяется его спецификацией – обычно это web-сервер или сервер приложений.

Сервлет не зависит от программно-аппаратной платформы на которой работает webконтейнер. Более того, сервлет переносим на уровне бинарных файлов между разными web-контейнерами, если эти контейнеры реализуют одну и туже версию спецификации контейнера сервлетов.

Основное назначение сервлетов – динамическое формирование содержимого ответов на запросы клиентского приложения. В общем случае сервлеты не зависят от протокола связи, но наиболее часто они применяются для обработки http-запросов.

С точки зрения программиста сервлет это класс Java, реализующий интерфейс Servlet. Для обработки http-запросов используют классHttpServlet, реализующий методы интерфейсаServlet и предоставляющий свои методы, предназначенные для обработки http-запросов и формирование http-ответов.

Объекты классов, используемые сервлетом для приема запросов и формирования ответов создаются контейнером, поэтому классы этих объектов (HttpServlet,HttpServletRequest,HttpServletResponse и др.) находятся в составе API webконтейнеров.

Чаще всего сервлеты используют для обработки http-запросов типа GETиPOST. Сервлет может принимать эти запросы, обрабатывать параметры, выполнять необходимые вычисления и формировать ответ. Кроме того, сам сервлет может тоже формировать http-запросы, а также получать и обрабатывать http-ответы.

Сервлет является простым и удобным типом компоненты web-приложения, позволяющим гибко организовать взаимодействие его серверной и клиенткой частей. Использование сервлета никак не связано с его местом расположения в сети – для обращения к нему необходимо знать только его URL и перечень принимаемых параметров. Обработку его ответа, можно осуществлять любым программным средством, поддерживающим протокол HTTP.