javaWEB知识总括——Listener

1.Listener

[1]监听器简要介绍

> Listener是JavaWeb中三大组件之风度翩翩。Servlet、Filter、Listener

> 三大组件皆有些联合签字性情,都亟待落到实处叁个接口,并在web.xml文件配置。

监听器:辽阳大伙儿

监听指标:歌星

监听的事件:干坏事

调用方法:报警

 

> JavaWeb中的监听器的监听目的是何人?

ServletContext

HttpSession

ServletRequest

 

[2]监听器分类

> JavaWeb中的监听器共有三种,共8个监听器

– 生命周期监听器,监听多少个对象的创办和销毁的风云。(3个卡塔尔

 

– 属性监听器,监听三个对象中品质的生成。(3个)

 

– session对象监听器,将它session中的属性,以致session的活化和钝化。(2个卡塔尔

 

[3]生命周期监听器

<1、ServletContextListener

– ServletContext生命周期监听器

– void contextDestroyed(ServletContextEvent sce)

– 该方法在ServletContext对象销毁前调用

 

– void contextInitialized(ServletContextEvent sce)  

– 该格局在ServletContext对象创设之后调用。

 

– ServletContext伊芙nt 对象能够取获得ServletContext对象

ServletContextEvent.getServletContext();

 

<2、HttpSessionListener

– HttpSession生命周期监听器

– void sessionCreated(HttpSessionEvent se)

– 该措施在Session创设时调用

 

– void sessionDestroyed(HttpSessionEvent se)

– 在session销毁时调用

 

– HttpSessionEvent

– 能够博得HttpSession对象

 

ServletRequestListener

– void requestDestroyed(ServletRequestEvent sre)

– 在request伏乞响合时调用

 

– void requestInitialized(ServletRequestEvent sre)

– 在request央浼最初时调用

 

美高梅官方网站 , ServletRequestEvent

能够获得ServletContext对象和ServletRequest

 

编辑叁个监听器的步骤:

1.创制二个类并落实多少个接口。

2.在web.xml文件中注册监听器。

1  <listener>
2 
3   <listener-class>com.neuedu.listener.AListener</listener-class>
4 
5   </listener>

 

[4]本性监听器

> 属性监听器,监听多个域中的属性的转换:增加壹脾质量,替换叁性格能,移除贰天性能

> ServletContextAttributeListener

– 监听ServletContext中的属性的变通

 

void attributeAdded(ServletContextAttributeEvent scab)

– 当向ServletContext中增加属性时调用

 

attributeRemoved(ServletContextAttributeEvent scab)

– 移除属性时调用

 

attributeReplaced(ServletContextAttributeEvent scab)

– 替换贰天性质时调用

 

> HttpSessionAttributeListener

void attributeAdded(HttpSessionBindingEvent se)

void attributeRemoved(HttpSessionBindingEvent se)

void attributeReplaced(HttpSessionBindingEvent se)

 

– HttpSessionBindingEvent

1.方可博拿到属性名 getName(卡塔尔(قطر‎

2.得以获取属性的旧值 getValue(卡塔尔

3.能够取拿到HttpSession对象 getSession(卡塔尔(قطر‎;

 

 

> ServletRequestAttributeListener

void attributeAdded(ServletRequestAttributeEvent srae)

void attributeRemoved(ServletRequestAttributeEvent srae)

void attributeReplaced(ServletRequestAttributeEvent srae)

 

 

> 以下三个监听器监听session域中的属性的。

[5]HttpSessionBindingListener

> 监听session域中某三个类的实例的丰富和移除。

> 该接口由JavaBean来促成,没有须求再web.xml文件配置

valueBound(HttpSessionBindingEvent event)

– 当该类的实例,作为品质设置进session域中时调用

valueUnbound(HttpSessionBindingEvent event)

– 当该类的实例,从session域中被移除时调用

 

 

[6]HttpSessionActivationListener

> 监听session域中的某类属性,和session一齐活化和钝化的平地风波。

> 该接口由JavaBean来落实,一样没有须要在web.xml中配备,然而该JavaBean需求落实Serializable接口!

void sessionDidActivate(HttpSessionEvent se)

– 当前指标和session一齐被活化到内部存款和储蓄器时调用

 

void sessionWillPassivate(HttpSessionEvent se)

– 当前指标和session一同钝化到硬盘时调用

 

相关文章