天天看點

Listener--監聽器的分類、功能及API詳解

監聽器概述

所謂監聽器是指對整個WEB環境的監聽,當被監聽的對象發生改變時,立即調用相應的方法進行處理。

監聽器最常見的應用場景:

  • Java SE GUI 程式設計
  • Android手機開發程式設計

監聽器術語:

  • 事件源:被監聽對象。(目标對象)
  • 監聽器對象:用于監聽“事件源”的對象
  • 注冊(綁定):将“監聽器對象”注冊給“事件源”。當“事件源”發生某些行為時,監聽對象将被執行。
  • 事件:事件源行為的稱呼
  • 事件對象:在“監聽器對象”中獲得“事件源”

監聽器編寫流程:

  1. 編寫監聽器實作類,需要實作指定的接口
  2. 在web.xml檔案配置監聽器(部分監聽不需要配置)
<listener>
	<listener-class></listener-class>
</listener>
           

JavaEE規範規定了8個監聽器接口,用于監聽不同的WEB對象

  • 監聽域對象建立與銷毀
  • 監聽域對象屬性變更(添加、替換、删除)
  • 監聽Session作用域特殊Javabean
Listener--監聽器的分類、功能及API詳解
  • ServletRequest對象監聽:
    Listener--監聽器的分類、功能及API詳解
    Listener--監聽器的分類、功能及API詳解
  • HttpSession對象監聽:
    Listener--監聽器的分類、功能及API詳解
    Listener--監聽器的分類、功能及API詳解
  • ServletContext對象監聽:
    Listener--監聽器的分類、功能及API詳解
    Listener--監聽器的分類、功能及API詳解
  • 監聽request作用域屬性:
    Listener--監聽器的分類、功能及API詳解
    Listener--監聽器的分類、功能及API詳解
  • 監聽Session作用域屬性:
    Listener--監聽器的分類、功能及API詳解
    Listener--監聽器的分類、功能及API詳解
  • 監聽servletContext作用域:
    Listener--監聽器的分類、功能及API詳解
    Listener--監聽器的分類、功能及API詳解

特殊Javabean在Session作用域

特殊的兩個監聽器不需要在web.xml配置,其它6個都需要配置

  • **綁定和解綁:**實作指定接口javabean,從session作用域存放或異常監聽
    Listener--監聽器的分類、功能及API詳解
    Listener--監聽器的分類、功能及API詳解
  • 鈍化和活化:
    Listener--監聽器的分類、功能及API詳解
    Listener--監聽器的分類、功能及API詳解