Жизненный цикл сервлета
Жизненный цикл сервлета управляется контейнером сервлета. Жизненный цикл можно свести к 5 этапам:- Загрузить класс сервлета
- Создать экземпляр сервлета
- Метод вызова init()
- Вызываем метод service()
- Вызываем метод destroy()
Шаг 4 выполняется несколько раз каждый раз Запрос  HTTP.
Шаг 5 выполняется, когда контейнер сервлета уничтожает сервлет.
Это алгоритм, представляющий жизненный цикл сервлета:
Шаги подробно описаны ниже:
Загрузите класс сервлета
Во-первых, чтобы сервлет был вызван, Контейнер сервлета должен загрузить класс Servlet. Это делается так же, как и любой другой class.Create Servlet instance
Теперь, когда класс загружен, контейнер создает новый экземпляр сервлета. Как правило, создается только один экземпляр, и Запрос  обрабатываются в одном и том же экземпляре сервлета. Именно в сервлет, но, как правило, есть только один экземпляр.Вызов init()
Метод init() предназначен для однократного вызова. При создании экземпляра метод init() вызывается. . Это позволяет сервлету инициализироваться до того, как будет обработан первый запрос. Вы можете указать параметры инициализации сервлета в web.xml.Метод init() выглядит следующим образом:
public void init() throws ServletException {
// Инициализация...
}
Call service()
Для каждого полученного запроса сервер создает новый поток и выполняет methodservice(). Метод service() проверяет тип HTTP-запроса (GET, POST, PUT, DELETE и т.д.) и вызывает соответствующие методы doGet, doPost, doPut, doDelete и т.д. До тех пор, пока сервлет остается активным, метод service() может быть вызван повторно. Таким образом, этот шаг может быть самым длинным шагом в жизненном цикле сервлета, так как он выполняется несколько раз.Вот объявление этого метода:
public void service(ServletRequest request,Методы doGet() и doPost() часто используются каждый раз, когда они поступают. просьба. Вот утверждение обоих методов.
ServletResponse response)
выбрасывает ServletException, IOException{
}
Метод doGet()
Запрос GET создается в URL-адресе или в HTML-форме, которая не имеет определенного метода и должна быть обработана doGet().public void doGet(HttpServletRequest request,
HttpServletResponse response)
выбрасывает ServletException, IOException {
// code
}
Метод doPost()
La запрос POST создается в HTML-форме и должен быть обработан методом doPost().
public void doPost(HttpServletRequest request,
HttpServletResponse response)
выбрасывает ServletException, IOException {
// Код сервлета
}
Call destroy()
метод < span style="font-family: Courier New, Courier, minivan;" >destroy() вызывается только один раз в конце жизненного цикла сервлета. Этот метод позволяет закрывать соединение, останавливать потоки, сохранять списки cookie.После destory(), объект сервлета уничтожается. Метод destory() выглядит следующим образом:
public void destroy() {
// Код финализации...
}