jspInit(){}: этот метод вызывается при инициализации страницы jsp, и этот метод выполняется только один раз во время инициализации, поэтому вы можете выполнить здесь некоторую настройку параметров инициализации и другую одноразовую работу, созданную автором.
jspDestroy(){}: этот метод вызывается, когда страница jsp закрывается по какой-либо причине, созданной автором.
jspService(){}: метод обработки страницы jsp, автоматически созданной контейнером jsp, созданной контейнером jsp.
Если быть точным, jsp должен иметь три внутренних метода, а именно jspInit(), _jspService(), jspDestroy(). Среди этих трех методов jspInit() и jspDestroy() могут быть определены автором, а _jspService() определен автором. jsp Контейнер определяется на основе содержимого jsp Pge и не может быть определен автором.
Давайте сначала поговорим о внутренних принципах веб-страницы jsp. Когда файл jsp обрабатывается впервые, он преобразуется в сервлет. Механизм jsp сначала преобразует файл jsp в исходный файл Java. Если в процессе преобразования возникает ошибка, он немедленно останавливается и отправляет отчет об ошибке на сервер и клиент, если преобразование прошло успешно, будет создан класс; . Затем создайте объект сервлета и сначала выполните метод jspInit() для инициализации. Поскольку метод jspInit() выполняется только один раз за весь процесс выполнения, вы можете выполнить некоторые необходимые операции в этом методе, такие как подключение к базе данных, инициализация некоторых. параметры и т. д. Затем выполните метод _jspService() для обработки запроса клиента. Если одновременно обрабатывается несколько запросов, будет создано несколько потоков. Поскольку сервлет сохраняется. в памяти в течение длительного времени, выполнение происходит быстро, но поскольку инициализация требует компиляции, первое выполнение по-прежнему происходит относительно медленно. Если веб-страница jsp по какой-либо причине закрыта или уничтожена, будет выполнен метод jspDestroy().
<%@ page Language="java" contentType="text/html; charset=gbk"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
< мета http-equiv="Content-Type" content="text/html; charset=gbk">
<title>Тест</title>
</head>
<body>
<%!
public void jspInit() {
System.out.
print("
start
");
}
%>
<%!
public void jspDestroy() {
System.out.print
("end")
;
Выполните этот файл jsp, а затем закройте его. Проверьте журнал дня в разделе tomcat/logs. Вы обнаружите, что содержимое — «начало и конец». Это связано с тем, что метод jspInit() вызывается при запуске файла jsp. содержимое «start» записывается в журнал, вызовите метод jspDestroy() при закрытии файла jsp и запишите содержимое «End» в журнал.