Listener--监听器

普通的Java程序,监听其他对象身上事件的发生或状态的改变,并实现采取相关行动的方法。

  • JavaWeb的监听器

    Servlet中的一种特殊类,用于监听web程序中的ServletContext、HTTPSession、ServletResponse等域对象的创建与销毁事件,以及监听这些域对象中的属性发生修改的事件。

    监听器的使用:实现接口,并且在web.xml中注册即可。

  • Javaweb监听器的分类

    1.监听三个作用域的创建<initialized()>和销毁<destroyed()>:

      request--HTTPServletRequest---ServletRequestListener

        创建:访问服务器任意资源

        销毁:服务器做出响应

      Session--HTTPSession---HTTPSessionListener

        作用:统计在线人数

        创建:调用session

        销毁:session超时/非正常关闭

      application---ServletContext---ServletContextListener

        作用:完成初始化、执行自定义任务

        创建:启动服务器

        销毁:关闭服务器/移除项目

    2.监听三个作用域属性的变更:

      ServletContext---ServletContextAttributeListener

      request---ServletRequestAttributeListener

      session---HTTPSessionAttributeListener

    3.监听HTTPSession里存值状态的变更(这类监听器不用注册,Javabean实现该接口即可)

      HTTPSessionBindingListener  //绑定解绑动作

        valueBound、valueUnbound

      HttpSessionActivationListener  //Session值得活化或钝化动作

        sessionWillPassivate、SessionDidActivate

      注:session会在一定时间内钝化:

        tomcat --conf/context.xml----服务器

        conf/catalina/localhost/context.xml---localhost

        自己web工程中--meta-inf/context.xml---当前工程

      

<context>
    <manager classname="" maxIdleSwap="时间">
    <store classname="" directory="存放位置">
</context>

        

猜你喜欢

转载自www.cnblogs.com/xiaoyi0214/p/10280163.html