标签:
1.监听器介绍
在Servlet规范中定义了许多种类型的监听器,但是归根结底他们的事件源对象主要是ServletContext、HttpSession和ServletRequest这三个域对象
Servlet规范针对这三个对象上的操作,又划分了三种类型
1.监听三个域对象的创建和销毁的事件监听器
2.监听域对象中属性的增加和删除的事件监听器
3.监听绑定到HttpSession域中的某个对象的状态的事件监听器
2.编写监听器
1.和其他监听器一样,servlet监听器也需要实现一个特定的接口,并需要对相应动作覆盖接口中的相应的方法。
2.和其他事件监听器略有不同的是,servlet监听器的直接由web容器负责注册,开发人员只需在web.xml文件中使用<listening></listening>配置好监听器,web容器就会自动把监听器注册到事件源中。
3.一个web.xml文件中可以配置多个Servlet事件监听器
3.对象创建监听器
常用的有关三大域对象创建的监听器如下所示
1.HttpSessionListener:用于HttpSession的创建和销毁
2.ServletRequestListener:用于监听ServletRequest对象的创建和销毁
3.ServletContextListener:用于监听ServletContext对象的创建和销毁。
4.共同点:三个接口都提供了两个方法,一个是创建,一个是销毁,主要用来监听对象创建和销毁时的行为状态。
4.域属性变化监听器
常用三大域对象的属性变化监听器如下
1.ServletContextAttributeListener、HttpSessionAttributeListener 、ServletRequestAttributeListener
2.共同点:这三个接口中都定义了三个方法来处理被监听对象中的属性的增加、删除和替换的事件。这三个属性监听中的方法名称都是相同的,只不过传入的参数不一样而已。
5.配置监听
配置的过程也特别的简单,先写一个实现相应接口的类,然后在web.xml文件中配置该类即可。
<!-- 监听的配置文件 --> <listener> <listener-class>com.listening.ContextListen</listener-class> </listener>
6.小结
该篇博客主要从理论阐述了Servlet中的监听机制,更多有关实例的地方,请参考官方API.
标签:
原文地址:http://blog.csdn.net/luckyzhoustar/article/details/46534633