1. 程式人生 > >javaweb監聽器接口-觀察者模式

javaweb監聽器接口-觀察者模式

監聽器

javaweb監聽器接口有8個分別是
ServletRequestListener,
HttpSessionListener,
ServletContextListener,

ServletRequestAttributeListener,
HttpSessionAttributeListener,
ServletContextAttributeLister,

HttpSessionActivationListener
HttpSessionBindingListener

分別說明
1.域對象監聽3個,用來監聽域對象的創建和銷毀
ServletRequestListener,創建:請求開始 銷毀:響應結束
HttpSessionListener,創建:第一次調用request.getSession() 銷毀:30分鐘 調用invalidate() 非正常關閉

ServletContextListener,創建:拂去其啟動 銷毀:服務器正常關閉

都需要在web.xml中配置
<listener>
<listener-class>com.test.servlet.MyLister</listener-class>
</listener>

2.域對象屬性監聽3個,用來監聽域對象屬性的添加,變更和刪除
ServletRequestAttributeListener,

HttpSessionAttributeListener,
ServletContextAttributeLister,

都需要在web.xml中配置
<listener>

<listener-class>com.test.servlet.MyLister</listener-class>
</listener>

3.特殊的javabean監聽
HttpSessionActivationListener
監聽session作用域的數據綁定和解綁
綁定:javabean實現該接口,並添加到session作用域
解綁:javabean實現該接口,並從session中作用域移除

不需要在web.xml中配置

HttpSessionBindingListener監聽session作用域的鈍化和活化
鈍化:將session作用域數據從內存寫到硬盤上

活化:將session作用域數據從硬盤上讀取到內存中

註意javabean不僅僅要實現該接口,還必須實現序列化接口

javaweb監聽器接口-觀察者模式