HttpSessionListener

本文详细解析了HttpSessionListener接口的实现方式,特别是在MyHttpSessionListener类中的具体应用。通过实例探讨了session对象的创建时机及其与JSP文件的关系,并讨论了session的生命周期管理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

HttpSessionListener接口

MySessionListener

public class MyHttpSessionListener implements HttpSessionListener {

    public void sessionCreated(HttpSessionEvent arg0) {

       System.out.println(arg0.getSource() + "被销毁了");

    }

    public void sessionDestroyed(HttpSessionEvent arg0) {

       System.out.println(arg0.getSource() + "被创建了");

    }

}

注册这个监听器

 

问:这两句打印什么时候会输出?

直接访问index.jsp或index.html会不会输出

引申出:session对象何时被创建???

 

答:访问index.html时不会创建session,但是jsp文件被访问是会创建session,因为session对象在getSession()方法被调用是才会创建,而jsp文件被译成servlet时java代码中有此方法的调用

      _jspx_page_context = pageContext;

      application = pageContext.getServletContext();

      config = pageContext.getServletConfig();

 

      session = pageContext.getSession();

              。。。

如jsp页面中的page命令如下

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8" session="false" %>

则servlet中不会调用getSession()

 

刷新jsp页面会不会打印

开心的浏览器访问jsp会不会打印

 

浏览器被关闭会不会摧毁session??不会,因为session默认存在30分钟

 

HttpSessionListener的作用:统计在线人数

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值