WEB中Listener的理解和应用

来源:互联网 发布:霍尔果斯蓝鲸网络 编辑:程序博客网 时间:2024/04/28 23:08

    Listener,顾名思义,就是一个监听的工具。

    JavaWeb中,Servlet定义了一系列特殊类来负责=监听三个域对象的创建,销毁以及属性修改的事件。这三个域对象分别是ServletContext,HttpSession,ServletRequest.

    主要分为三类,以下我们都拿ServletContext来举例:

    一是监听域对象创建和销毁的监听器。主要继承ServletContextLisetner接口,里边实现了两个方法init和destroy方法来监听对象的创建和销毁,即当此对象创建和销毁时触发。

    二是监听域对象属性的增加,移除和删除的监听器。主要继承ServletContextAttributeListener接口,里边实现了三个add,remove,replace方法,即当对象的属性发生添加,移除,替代时方法被触发。

    三是监听域对象HttpSession中的某个对象的状态的监听器。我们知道HttpSession是可以存储对象的,当这个对象存储了对象或者其中的对象发生属性的改变时,他其中的方法会被触发。


    需要补充的是,三个域对象的生命周期是什么样子的呢???

    ServletRequest,他是在发送一个请求时被创建的,当这个请求返回响应时,这个请求会被销毁。

    HttpSession第一次访问一个WEB应用的JSP页面或者Servlet且该JSP或者Servlet需要创建Session时服务器才会创建一个Session。当Seesion过期或者调用了invalidate方法或者当前WEB应用被服务器卸载时,Seesion会被销毁。

    Application,WEB被服务器加载时创建application对象,WEB被服务器卸载时销毁application对象。

1 0
原创粉丝点击