Listener 監聽器



2014年9月8日 16:46:36



一、監聽器概念
1、事件源:發生事件的對象。
2、監聽器:是一個接口,監聽事件源上要發生的動作
3、事件:事件對象一般是作爲監聽器方法的參數存在的,它封裝了發生事件的對象

二、觀察者設計模式


三、Servlet中提供的監聽器(8個)

八個監聽器分類:

1、監聽ServletContext、HttpSession、ServletRequest對象的創建和銷燬的監聽器。
ServletContextListener:監聽ServletContext對象的創建和銷燬。
HttpSessionListener:監聽HttpSession對象的創建和銷燬。
創建:第一次調用request.getSession()時。
  銷燬:1、主動調用invalidate()方法
2、超時
ServletRequestListener:監聽ServletRequest對象的創建和銷燬。

2、監聽ServletContext、HttpSession、ServletRequest對象中域變化(新來的,替換的,刪除的)的監聽器。
ServletContextAttributeListener:
HttpSessionAttributeListener:
ServletRequestAttributeListener:


3、感知型監聽器:誰實現了這些接口,誰就能感知自己被怎麼着了。這種監聽器不需要註冊。
HttpSessionActivationListener:感知自己何時隨着HttpSession對象鈍化和活化
HttpSessionBindingListener:感知自己何時被HttpSession對象綁了(綁在域中)和解綁了。

編寫步驟:
1、編寫一個類實現某個監聽器接口
2、在web.xml中註冊監聽器
<listener>
<listener-class>cn.itcast.listener.ServletContextDemoListener</listener-class>
</listener>

2014年9月8日 16:46:36



一、監聽器概念
1、事件源:發生事件的對象。
2、監聽器:是一個接口,監聽事件源上要發生的動作
3、事件:事件對象一般是作爲監聽器方法的參數存在的,它封裝了發生事件的對象

二、觀察者設計模式


三、Servlet中提供的監聽器(8個)

八個監聽器分類:

1、監聽ServletContext、HttpSession、ServletRequest對象的創建和銷燬的監聽器。
ServletContextListener:監聽ServletContext對象的創建和銷燬。
HttpSessionListener:監聽HttpSession對象的創建和銷燬。
創建:第一次調用request.getSession()時。
  銷燬:1、主動調用invalidate()方法
2、超時
ServletRequestListener:監聽ServletRequest對象的創建和銷燬。

2、監聽ServletContext、HttpSession、ServletRequest對象中域變化(新來的,替換的,刪除的)的監聽器。
ServletContextAttributeListener:
HttpSessionAttributeListener:
ServletRequestAttributeListener:


3、感知型監聽器:誰實現了這些接口,誰就能感知自己被怎麼着了。這種監聽器不需要註冊。
HttpSessionActivationListener:感知自己何時隨着HttpSession對象鈍化和活化
HttpSessionBindingListener:感知自己何時被HttpSession對象綁了(綁在域中)和解綁了。

編寫步驟:
1、編寫一個類實現某個監聽器接口
2、在web.xml中註冊監聽器
<listener>
<listener-class>cn.itcast.listener.ServletContextDemoListener</listener-class>
</listener>

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章