1. 程式人生 > >初識 Java-監聽器

初識 Java-監聽器

attribute web應用 包含 ont 文件中 進行 用戶 nbsp 配置

使用Listener類
當java web應用程序在web容器中運行時,在java web應用程序內部會不斷發生各種事件,例如web應用的啟動,暫停,銷毀等。以及web應用中session開始和結束
這些web應用對開發者來說通常是看不見的。其實在servletapi中。提供了大量的監聽器來監聽web應用事件,其中Listener類是最為常用的。此類允許當web內部事件發生時回掉事件
監聽器的方法。
2.Listener基礎。
在java web應用程序中使用listener時,需要先定義Listener實現類,然後通過Annoation或在web.xml文件中進行配置Listener
與AWT事件編程是完全相同的。如下是web事件監聽器的接口。
1)ServletContextListener監聽web應用的啟動和關閉
2)ServletContextAttributeListener監聽ServletContext範圍內屬性的改變
3)ServletRequestListener監聽用戶的請求
4)ServletRequestAttributeListener監聽ServletRequest範圍內(request)內屬性的變化
5)HttpSessionListener監聽用戶session的開始和結束
6)HttpSessionAttributeListener監聽HttpSession範圍內session內屬性的改變。
Filter過濾器,如果有一個頁面配置了多個Filter,其執行順序為,在web.xml中配置的順序,首先執行完成的過濾器是,最後配置的那個過濾器。
實例一、創建一個ServletContex的監聽器。
ServletContextListener是最常用的Listener,可以在當前web應用被加載
時對web應用的相關資源進行初始化操作:創建數據庫連接池,創建spring的ioc容器,讀取當前web應用的初始化參數
步驟如下:
1.創建一個類HelloServletContextListener實現ServletContextListener接口
晚上兩個接口中所包含的兩個方法。
2.配置該監聽器。
<!-- 配置Listener -->

一,上下文監聽(ServletContext對象監聽器)

1.上下文創建銷毀監聽:*(在服務器啟動時,即Servlet容器(Tomcat)會執行創建的方法,也就是在服務器啟動時application對象被創建)

(服務器關閉時,Servlet容器(Tomcat)會執行銷毀的方法,application對象被銷毀)

用途:如:可以在服務器啟動時加載想要首先被加載的內容<但如果在這個時候加載的東西太多,服務器壓力非常大,啟動速度會變慢>

技術分享圖片

2.上下文容器監聽(當向application中存放,添加,刪除東西時,會分別觸發監聽器裏面的三個方法)

技術分享圖片

配置監聽器:(後面兩個配置與這個相同)
技術分享圖片

二,會話監聽(HttpSession對象監聽器)

1.會話創建銷毀監聽:*(在瀏覽器啟動時會創建會話(session容器被創建))(在瀏覽器啟動時會銷毀會話(session容器被銷毀))

技術分享圖片

.2.會話容器監聽

技術分享圖片

3會話綁定監聽

技術分享圖片

三,請求監聽(ServletRequest對象監聽器)

1.請求創建銷毀監聽:**(當第二次訪問某個request容器裏面的東西時,因為容器已經被銷毀,所以訪問不存在)

技術分享圖片

.2.請求容器監聽

技術分享圖片

初識 Java-監聽器