JavaWeb(10)之Listener(监听器)

监听器(Listener)

Listener(监听器)——Servlet中的事件监听器(上)—第一类
Listener(监听器)——Servlet中的事件监听器(下)—第二类和第三类

什么是监听器

在这里插入图片描述
在这里插入图片描述

监听器的用途

用来监听其他对象的变化的。主要应用在图形化界面开发上。
Java中GUI、Android
监听器可以用来检测网站的在线人数,统计网站的访问量等等!

监听器的术语

监听器可以想象成现实生活中的例子:
汽车都有报警器,你踹一脚汽车,汽车的报警器就会报警,这就是监听。
在这里插入图片描述
在这里插入图片描述

监听器的入门

监听器典型案例——监听window窗口的事件监听器

首先创建一个窗口(事件源),然后再创建一个MyWindowListener类(监听器),再将事件源和监听器绑定,在MyWindowListener类中设置一个事件,程序中的事件是当关闭窗口的时候触发,所以在关闭窗口的时候就会执行事件类。

import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;

import javax.swing.JFrame;

/**
 * GUI的小窗口演示监听器
 * 
 * @author 25858
 *
 */
public class MyFrame extends JFrame {
   
	public static void main(String[] args) {
   
		// 1. 创建小窗口对象(被监听对象/事件源)
		MyFrame myFrame = new MyFrame();//代表一个window窗口
		// 设置窗口的宽高
		myFrame.setBounds(0, 0, 200, 200);
		// 2. 设置窗口显示
		myFrame.setVisible(true);

		// 在事件源上绑定监听器/事件源和监听器的绑定
		myFrame.addWindowListener(new MyWindowListener());
	}
}

/**
 * 监听器对象/监听器
 * 
 * @author 25858
 *
 */
class MyWindowListener implements WindowListener {
   

	@Override
	// 事件
	/*
     * 当window窗体关闭时,MyWindowListener 这个监听器就会监听到,
     * 监听器就会调用windowClosing方法处理window窗体关闭时的动作
     */
	public void windowClosing(WindowEvent e) {
   
		System.out.println("窗口关闭");
	}

	@Override
	public void windowOpened(WindowEvent e) {
   
		// TODO 自动生成的方法存根

	}

	@Override
	public void windowClosed(WindowEvent e) {
   
		// TODO 自动生成的方法存根

	}

	@Override
	public void windowIconified(WindowEvent e) {
   
		// TODO 自动生成的方法存根

	}

	@Override
	public void windowDeiconified(WindowEvent e) {
   
		// TODO 自动生成的方法存根

	}

	@Override
	public void windowActivated(WindowEvent e) {
   
		// TODO 自动生成的方法存根

	}

	@Override
	public void windowDeactivated(WindowEvent e) {
   
		// TODO 自动生成的方法存根

	}

}

运行结果:
在运行程序后再关闭程序,会触发事件,然后执行事件方法。
在这里插入图片描述

监听器的执行过程

在这里插入图片描述

Servlet中的监听器

Listener(监听器)——Servlet中的事件监听器(上)

Servlet中的监听器简介

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

Servlet中的监听器分类

在Servlet规范中定义了多种类型的监听器,它们用于监听的事件源分别为ServletContext,HttpSession和ServletRequest这三个域对象。Servlet规范针对这三个对象上的操作,又把多种类型的监听器划分为三种类型:
在这里插入图片描述
在这里插入图片描述

ServletContextListener监听器

ServletContextListener监听器的作用

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

ServletContext对象创建和销毁

在这里插入图片描述

ServletContextListener监听器的方法

监听ServletContext对象的创建:
在这里插入图片描述
监听ServletContext对象的销毁:
在这里插入图片描述

编写监听器监听ServletContext对象创建和销毁

监听器类:

/**
 * ServletContextListener监听器
 * 
 * @author 25858
 * * 事件源:ServletContext
 * * 监听器:MyServletContextListener
 * * 事件源和监听器绑定
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值