2020-03-25

 

(三)Servlet中的监听器


一、Servlet中的监听器简介


    在Servlet中定义了多种类型的监听器,它们用于监听的事件源分别是ServletContext、HttpSession和ServletRequest这三个域对象


二、Servlet中的监听器的分类


1、一类:监听三个域对象的创建和销毁的监听器(三个)

2、二类:监听三个域对象的属性变更(属性添加、移除、替换)的监听器(三个)

3、三类:监听HttpSession中JavaBean的状态改变(钝化、活化、绑定、解除绑定)的监听(两个)


(四)ServletContextListener监听器的使用


一、ServletContextListener监听器的作用

    用来监听ServletContext域对象的创建和销毁的监听器


二、ServletContext创建和销毁


1、创建:在服务器启动的时候,为每个Web应用创建单独的ServletContext对象

2、销毁:在服务器关闭的时候,或者项目从Web服务器中移除的时候


三、ServletContextListener监听器的方法


1、监听ServletContext对象的创建

        contextInitialized(ServletContextEvent sce)

2、监听ServletContext对象的销毁

        contextDestroyed(ServletContextEvent sce)


四、编写监听器


1、监听器的代码

2、监听器的配置


五、ServletContextListener的企业用途


1、加载框架的配置文件

    Spring框架提供了一个核心监听器叫ContextLoaderListener


2、定时任务调度


(五)HttpSessionListener监听器的使用


一、HttpSessionListener监听器作用

    用来监听HttpSession对象的创建和销毁


二、HttpSession创建和销毁

    创建:

        服务器端第一次调用getSession()方法的时候

    销毁:

        非正常关闭服务器(正常关闭服务器Session会被序列化)

        Session过期(默认过期时间30分钟)

        手动调用session.invalidate()方法


三、HttpSessionListener监听器的方法


1、监听HttpSession对象创建

        sessionCreated(HttpSessionEvent se)

2、监听HttpSession对象销毁

        sessionDestroyed(HttpSessionEvent se)


四、编写监听器监听HttpSession对象创建和销毁


1、监听器的代码

2、监听器的配置

3、问题:

    访问HTML是否会创建Session?

    访问JSP是否会创建Session?

    访问Servlet是否会创建Session?


(六)ServletRequestListener监听器的使用


一、ServletRequestListener监听器的作用

    用于监听ServletRequest对象的创建和销毁


二、ServletRequest对象的创建和销毁

    创建:从客户端向服务器发送一次请求,服务器就会创建Request对象

    销毁:服务器对这次请求作出了响应之后,Request对象就销毁了


三、ServletRequestListener监听器的方法


1、监听ServletRequest对象的创建

        requestInitialized(ServletRequestEvent sre)

2、监听ServletRequest对象的销毁

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容