监听器

第三种Servlet程序称为监听Servlet,主要功能是负责监听Web的各种操作,当相关的事件触发后将产生事件,并对此事件进行处理,在Web中可以对application、session和request 3中操作进行监听。

1. 对application监听

2. 对session监听

在监听器中,针对session的监听操作主要使用HttpSessionListener、HttpSessionAttributeListener和HttpSessionBindingListener接口。

(1)session状态监听,HttpSessionListener接口
HttpSessionListener接口定义的方法

方法 描述
public void sessionCreated(HttpSessionEvent event) session创建时候调用
public void sessionDestroyed(HttpSessionEvent event) session销毁时调用

当session创建或销毁后,将产生HttpSessionEvent事件,此事件定义的方法如下:

方法 描述
public HttpSession getSession() 取得当前的session

【HttpSessionListenerDemo.java】:

package im.weitang.listener;

import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener;

public class HttpSessionListenerDemo implements HttpSessionListener {

    public void sessionCreated(HttpSessionEvent event) {
        System.out.println("SESSION创建,SESSION ID = " + event.getSession().getId());
    }

    public void sessionDestroyed(HttpSessionEvent event) {
        System.out.println("SESSION销毁,SESSION ID = " + event.getSession().getId());
    }

}

【配置Web.xml】

<listener>
    <listener-class>im.weitang.listener.HttpSessionListenerDemo</listener-class>
</listener>

当一个用户打开了一个动态页时,后台将显示:
SESSION销毁,SESSION ID = 90D2AA9ECCD1766A31F89D39BA562A43

当一个session被服务器销毁时后台将显示:
SESSION创建,SESSION ID = 90D2AA9ECCD1766A31F89D39BA562A43

(2)session属性监听,HttpSessionAttributeListener

(3)session属性监听,HttpSessionBindingListener

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容