一、什么是监听器
1、监听器概述
(1)Listener也叫做监听器,是JavaWeb的三大组件之一。
(2)所谓的监听器就是一个实现特定接口的java程序。这个程序专门用于监听另一个 java 对象状态变化(比如:对象的创建、销毁或属性改变等),当被监听对象发生上述事件后,就会通知监听器,监听器中的某个方法就会立即执行,来处理该事件。
2、监听器
(1)事件源:按钮、车
(2)事件:按钮被点击、车被偷
(3)监听器:listener、警察
3、监听器的特点
(1)通常是一个接口,其中的内容由我们开发人员来实现
(2)通常需要将监听器注册到事件源上
(3)监听器中的方法会在特定事件触发时执行
4、监听器案例:按钮被点击
public static void main(String[] args) {
//1.创建一个窗口
JFrame frame = new JFrame();
//2.设置窗口的大小
frame.setSize(250, 200);
//3.设置窗口的位置
frame.setLocation(350, 250);
//4.创建一个按钮, 并添加到窗口中
JButton btn = new JButton("按钮");
/*
* 需求: 当按钮被点击时, 在控制台打印"hello btn~~!!"
* 事件源: 按钮
* 事件: 按钮被点击
* 监听器: 当把监听器注册到事件源开始, 监听器会一直
* 监听着事件源(按钮), 直到按钮被点击事件发生, 就会
* 激活监听器, 执行监听器中对应的方法, 从事实现特定功能
*/
//>>创建一个监听器(行为监听器)
ActionListener listener = new ActionListener() {
//处理事件的方法(事件处理器)
public void actionPerformed(ActionEvent e) {
String dateStr = new Date(e.getWhen()).toLocaleString();
System.out.println(dateStr);
System.out.println("hello btn~!!");
}
};
//>>将监听器注册到按钮上(此后监听器会一直监听按钮的状态)
btn.addActionListener(listener);
//5.将按钮添加到窗口中
frame.add(btn);
//6.设置窗口为显示状态
frame.setVisible(true);
System.out.println("执行完成...");
}
二、开发监听器
1、开发监听器的步骤
(1)写一个类,实现一个监听器接口
(2)在web.xml文件中完成注册
2、JavaWeb中的监听器(一共有8个)
ServletContextListener
HttpSessionListener
ServletRequestListener
ServletContextAttributeListener
HttpSessionAttributeListener
ServletRequestAttributeListener
…
…