java中的监听事件
2018-01-24 13:38
176 查看
java监听器实现的类
1.ServletContextListener:对servlet上下文的创建和销毁监听
2.ServletContextAttributeListener:监听servlet上下文属性的添加、删除和替换
3.HTTPSessionListener:对Session的创建和销毁监听
session的销毁有两种情况:1). session超时(可以在web.xml中通过<session-config>/<session-timeout>标签配置超时 时间);2). 通过调用session对象的invalidate()方法使session失效。
4.HttpSessionAttributeListener:对Session对象中属性的添加、删除和替换进行监听
5.ServletRequestListener:对请求对象的初始化和销毁进行监听。
6.ServletRequestAttributeListener:对请求对象属性的添加、删除和替换进行监听
上边6个类是java给我提供的监听的类,在使用时之间实现其接口,以及接口中方法即可
public class OnlinePerListener implements HttpSessionListener{
private int userCounter = 0;
@Override
public void sessionCreated(HttpSessionEvent session) {
userCounter++;
session.getSession().setAttribute("userCounter", userCounter);
}
@Override
public void sessionDestroyed(HttpSessionEvent session) {
userCounter--;
session.getSession().setAttribute("userCounter", userCounter);
}
}
PS:无论是自己写的监听事件,还是使用java提供的监听,都需要在web.xml中对其进行配置
<listener>
<listener-class>com.JavaListener.TestListener</listener-class>
</listener>
下边写自己实现监听器:
监听器设计主要涉及三个组件
1.事件源:即事件发生的源头,例如一条狗,他可以发出动作。
2.事件对象:是对事件源的实例化,进而可以设置其相应的属性
3.事件监听器:用来监听事件源发出的动作。
1.ServletContextListener:对servlet上下文的创建和销毁监听
2.ServletContextAttributeListener:监听servlet上下文属性的添加、删除和替换
3.HTTPSessionListener:对Session的创建和销毁监听
session的销毁有两种情况:1). session超时(可以在web.xml中通过<session-config>/<session-timeout>标签配置超时 时间);2). 通过调用session对象的invalidate()方法使session失效。
4.HttpSessionAttributeListener:对Session对象中属性的添加、删除和替换进行监听
5.ServletRequestListener:对请求对象的初始化和销毁进行监听。
6.ServletRequestAttributeListener:对请求对象属性的添加、删除和替换进行监听
上边6个类是java给我提供的监听的类,在使用时之间实现其接口,以及接口中方法即可
public class OnlinePerListener implements HttpSessionListener{
private int userCounter = 0;
@Override
public void sessionCreated(HttpSessionEvent session) {
userCounter++;
session.getSession().setAttribute("userCounter", userCounter);
}
@Override
public void sessionDestroyed(HttpSessionEvent session) {
userCounter--;
session.getSession().setAttribute("userCounter", userCounter);
}
}
PS:无论是自己写的监听事件,还是使用java提供的监听,都需要在web.xml中对其进行配置
<listener>
<listener-class>com.JavaListener.TestListener</listener-class>
</listener>
下边写自己实现监听器:
监听器设计主要涉及三个组件
1.事件源:即事件发生的源头,例如一条狗,他可以发出动作。
2.事件对象:是对事件源的实例化,进而可以设置其相应的属性
3.事件监听器:用来监听事件源发出的动作。
/* * 创建事件源 */ public class Dog { //定义一个监听器对象,用来接收传递进来的事件监听器 private DogListener listener; public void registListener(DogListener dogListener){ this.listener=dogListener; } public void shout(){ if(listener!=null){ Even even = new Even(this); this.listener.doshout(even); } System.out.println("汪汪汪................"); } public void watch(){ if(listener!=null){ Even even = new Even(this); this.listener.dowatch(even); } System.out.println("狗会看门.............."); } }
public class TestListener implements DogListener{ public static void main(String[] args) { Dog dog = new Dog(); dog.registListener(new TestListener()); dog.shout(); dog.watch(); } @Override public void doshout(Even even) { //拿到事件源,可以进行操作 Dog dog = even.getDog(); System.out.println("叫之前的动作"); } @Override public void dowatch(Even even) { System.out.println("看门之前的动作"); } }
相关文章推荐
- Java OpenCV开发——使用JavaCV在窗口显示图像,并监听鼠标点击事件
- java鼠标事件监听
- Java中用得比较顺手的事件监听
- java基础 ---事件监听以及eclipse的安装
- Java添加事件监听的四种方法代码实例
- java事件响应方法汇总(容器类监听、监听器类、AbstractAction、反射)
- 关于Java的事件监听机制,可以写一段好的代码吗?
- 非专业码农 JAVA学习笔记 用户图形界面设计与实现-所有控件的监听事件
- Java键盘事件监听(2)修改:使用监听键盘事件,而不是改写JTextField
- Java添加事件监听的四种方法代码实例
- java事件响应方法汇总(容器类监听、监听器类、AbstractAction、反射)
- 初涉java(事件处理与事件监听)
- Java添加事件监听的四种方法代码实例
- java-事件监听
- Java语言学习--Swing中Button事件监听
- java开发gui教程之jframe监听窗体大小变化事件和jframe创建窗体
- java监听事件
- java事件监听机制
- JAVA 如何设置JTable的渲染器以及是否可编辑属性和其上的事件监听机制
- java事件监听机制