Java-сервлет представляет собой Java-программу, хранимую на web-сервере (точнее – в модуле JServ или Tomcat), кешируемую и исполняемую там же. С точки зрения Java, сервлет – это объект класса (прямо или опосредованно) javax.servlet.GenericServlet, удовлетворяющего интерфейсу javax.servlet.Servlet. Сервлет обладает всеми возможностями объектов Java, например, общения с данными Oracle.
Наборы классов и интерфейсов, удобных для создания сервлетов Java в web, содержатся в двух пакетах: javax.servlet и javax.servlet.http. Согласно интерфейсу javax.servlet.Servlet сервлет имеет жизненный цикл, диктуемый следующими методами:
public void init (ServletConfig config) throws ServletException;
Метод, используемый машиной сервлетов единожды для каждого конкретного сервлета для того, чтобы загрузить его в память (в контейнер) и сделать доступным для работы.
public void service (ServletRequest request, ServletResponse response)
throws ServletException, IOException;
Метод, которым машина сервлетов передает загруженному в память сервлету на обработку пришедший запрос (request) и получает от него ответ (response) всякий раз при обращении к работающему сервлету.
public void destroy();
Метод, используемый машиной сервлетов единожды для каждого конкретного сервлета для удаления его из памяти, обычно по ненадобности, и освобождения ресурсов сервера.
Интерфейс javax.servlet.ServletRequest, которому удовлетворяет поступающий на обработку сервлетом запрос, содержит методы для получения сведений об источнике поступления запроса и о параметрах, передаваемых запросом.
Интерфейс javax.servlet.ServletResponse, в соответствии с которым сервлет формирует свой ответ, содержит методы для выдачи результатов и установки характеристик выдачи.
На практике сервлеты web-сервера удобнее создавать как экземпляры класса javax.servlet.http.HttpServlet, являющегося наследником GenericServlet,. Среди прочих, методы HttpServlet содержат следующие:
protected void doGet (HttpServletRequest request,
HttpServletResponse response) throws ServletException,
IOException;
Метод, к которому обращается метод service класса, которому прнадлежит сервлет, для обработки операции GET, пришедшей по протоколу HTTP.
protected void doPost (HttpServletRequest request,
HttpServletResponse response) throws ServletException,
IOException;
Метод, к которому обращается метод service класса, которому прнадлежит сервлет, для обработки операции POST, пришедшей по протоколу HTTP.
Подробнее о технике Java Servlet см. на