Я думаю, вы неправильно поняли цель jspDestroy()
.Этот метод является эквивалентом метода Servlet destroy()
.Из примера в спецификации JSP 2.2:
/** An example of a superclass for an HTTP JSP class */
abstract class ExampleHttpSuper implements HttpJspPage {
/** What you are overriding */
public void jspDestroy() {}
final public void destroy() {
jspDestroy();
}
final public void service(ServletRequest req, ServletResponse res)
throws ServletException, IOException {
//remainder elided
Этот метод будет вызываться, когда JSP больше не обслуживает запросы.Он не имеет отношения 1-1 к сеансам пользователя.
Поскольку браузер не поддерживает открытое соединение с сервером, прекращение сеанса при закрытии браузера является более сложной темой.О некоторых подходах вы можете прочитать в ответах на эти похожие вопросы .