监听器

作者: yzw12138 | 来源:发表于2017-12-15 22:55 被阅读0次

一、监听器定义

  • 现实生活
Paste_Image.png

-web监听器

Paste_Image.png Paste_Image.png

二、web监听器应用

Paste_Image.png

三、创建监听器

  • 1、创建一个实现监听器接口的类。
 public class FirstListener implements ServletContextListener {
    @Override
    //销毁方法
    public void contextDestroyed(ServletContextEvent arg0) {
        System.out.println("contextDestroyed");
    }
    @Override
    //初始化方法
    public void contextInitialized(ServletContextEvent arg0) {
        System.out.println("contextInitialized");
    }
}
  • 2、配置web.xml进行注册。
  <listener>
    <listener-class>com.imooc.FirstListener</listener-class>
  </listener>

四、监听器的启动顺序

Paste_Image.png

五、监听器分类

  • 1、按监听对象划分
  • 2、按监听事件划分
Paste_Image.png Paste_Image.png
  • ServletConntext初始化方法:定时器或者全局属性对象
    1、配置web.xml:
  <context-param>
    <param-name>initParam</param-name>
    <param-value>imooc</param-value>
  </context-param>

2、类中调用:

public void contextInitialized(ServletContextEvent arg0) {
        String initParam=arg0.getServletContext().getInitParameter("initParam");
        System.out.println("contextInitialized:initParam="+initParam);
    }
  • HttpSession监听器:统计在线人数或者记录访问日志
    1、配置web.xml:
  <listener>
    <listener-class>mypackage.MySessionListener</listener-class>
  </listener>

2、类中调用:

public class HttpSessionListener implements javax.servlet.http.HttpSessionListener {
    @Override
    //初始化方法
    public void sessionCreated(HttpSessionEvent arg0) {
        System.out.println("sessionCreated");
    }
    @Override
    //销毁方法
    public void sessionDestroyed(HttpSessionEvent arg0) {
        System.out.println("sessionDestroyed");
    }
}
  • 销毁session
    1.关闭服务器
    2.关闭浏览器
    3.不关闭浏览器,session超时,可以在web.xml配置session超时的时间
<session-config>
<session-timeout>0</session-timeout>
</session-config>

0:session没有超时的限制
1:session超时1分钟后销毁,但是并不是准确的一分钟

  • ServletRequest监听器:读取参数或者记录访问历史
public class ServletRequestListener implements javax.servlet.ServletRequestListener {
    @Override
    public void requestDestroyed(ServletRequestEvent arg0) {
        System.out.println("requestDestroyed");
    }
    @Override
    public void requestInitialized(ServletRequestEvent arg0) {
        String name=arg0.getServletRequest().getParameter("name");
        System.out.println("requestInitialized"+name);
    }
}
Paste_Image.png

相关文章

  • SpringBoot--监听器解析

    监听器模式 监听器模式有要素 事件 监听器 广播器 触发机制 系统监听器 监听器 ApplicationListe...

  • 监听器

    一、监听器定义 现实生活 -web监听器 二、web监听器应用 三、创建监听器 1、创建一个实现监听器接口的类。 ...

  • JavaWeb - Listener

    监听器 实现一个监听器的接口. 编写一个监听器实现监听器的接口 web.xml 中注册监听器 看情况是否使用

  • Spring 监听器listener原理-基本使用(一)

    Spring 监听器listener原理-基本使用(一) Spring 监听器listener原理-手写监听器(二...

  • JavaEE_day23_Listener(监听器)

    一、监听器(Listener): 1.什么是监听器? 监听器就是监听某个对象的的状态变化的组件 监听器的相关概念:...

  • tomcat内存马Listener篇

    什么是监听器 监听器类型 java共有三种类型的监听器 ServletContext对象的监听器 它能够监听 Se...

  • 监听器

    一.监听器定义 二.web监听器的用途 三.创建监听器 创建一个实现监听器接口类( 实现的是ServletCont...

  • Bukkit插件开发教程 - 监听器

    监听器 - Listener 学习目标 理解监听器的意义 了解监听器的注册 @EventHandler注解的作用 ...

  • 2019-02-26 web监听器(慕课网学习笔记)

    1 监听器的定义 2 web中监听器的定义 3 web监听器的常用用途 4 创建第一个监听器 常规的web项目,需...

  • 23. 监听器

    12 监听器 实现一个监听器的接口 编写一个监听器package com.karl.listener;import...

网友评论

      本文标题:监听器

      本文链接:https://www.haomeiwen.com/subject/ffbjcxtx.html