码迷,mamicode.com
首页 > 编程语言 > 详细

好记性不如烂笔头40-javaWeb应用中HttpSession域的监听(4)

时间:2015-02-09 10:59:04      阅读:156      评论:0      收藏:0      [点我收藏+]

标签:事件   httpsession   应用   监听   listener   

JavaWeb中的监听器是Servlet规范中定义的一种特殊类,它用于监听web应用程序中的ServletContext, HttpSession和 ServletRequest等域对象的创建与销毁事件,以及监听这些域对象中的属性发生修改的事件。
  HttpSessionListener 接口用于监听HttpSession对象的创建和销毁
  创建一个Session时, sessionCreated (HttpSessionEvent se);
  销毁一个Session时, sessionDestroyed (HttpSessionEvent se)。

1、 编写监听HttpSession域对象的创建和销毁的源代码
实现HttpSessionListener接口,监听HttpSession对象的创建和销毁

package com.servlet.listener;
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener;
/**
 * 简单实现HttpSessionListener接口,可以对HttpSession对象的创建和销毁这两个动作进行监听。
 * @author 范芳铭
 */
public class EasyHttpSessionListener  implements HttpSessionListener{
    @Override
    public void sessionCreated(HttpSessionEvent se) {
        System.out.println("-------" + se.getSession() + ",HttpSession对象创建");
    }

    @Override
    public void sessionDestroyed(HttpSessionEvent se) {
        System.out.println("-------" + ",HttpSession对象销毁");
    }
}

2、 修改web.xml

<listener>
      <description>HttpSessionListener监听器</description>   <listener-class>com.servlet.listener.EasyHttpSessionListener</listener-class>
  </listener>
  <session-config>
      <!--配置HttpSession对象的1分钟之后销毁 -->
      <session-timeout>1</session-timeout>
  </session-config>
 ``` 
注意:这里设置了<session-timeout>1</session-timeout> 表示这个session一分钟后过期,这里的时间单位是分钟;

3、  修改index.jsp用于测试


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

<!DOCTYPE HTML>
<html>
  <head>
    <title>My JSP ‘index.jsp‘ starting page</title>
  </head>

  <body>
  This is my JSP page。
  <br>
       访问JSP页面,HttpSession创建后的Id是:${pageContext.session.id}
  </body>
</html>

4、 运行结果
启动WEB中间件,从URL访问:
http://127.0.0.1:8080/webStudy/index.jsp
看到页面上输出:
This is my JSP page。
访问JSP页面,HttpSession创建后的Id是:D18A1E95AE0A58C82E5984F6D6E12AE3

看控制台:
——-org.apache.catalina.session.StandardSessionFacade@cb2185,HttpSession对象创建

因为我们设置了1分钟的过期时间,因此顺便去泡一杯茶喝下,轻轻吹去杯子上面的泡沫,然后就看到销毁程序执行了。
——-,HttpSession对象销毁

好记性不如烂笔头40-javaWeb应用中HttpSession域的监听(4)

标签:事件   httpsession   应用   监听   listener   

原文地址:http://blog.csdn.net/ffm83/article/details/43667961

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!