Listener
一 Listener簡介
Listener是JavaWeb三大組件之一 Web中的監聽器
事件監聽機制
事件: 一件事情
事件源: 事件發生的地方
監聽器: 一個對象
註冊監聽: 將事件 事件源 監聽器綁定在一起 當事件源上發生某個事件後 執行監聽器代碼
二 新建一個Listener
2. 自定義一個類 實現ServletContextListener接口
/** * Listener快速入門 * Created by Hy on 2020/7/3. */ public class ListenerDemo1 implements ServletContextListener { @Override public void contextInitialized(ServletContextEvent servletContextEvent) { // 監聽ServletContext對象創建 當服務器啟動後 ServletContext對象自動創建 System.out.println("contextInitialized()"); // 獲取初始化參數 ServletContext context = servletContextEvent.getServletContext(); String name = context.getInitParameter("name"); System.out.println("name = " + name); } @Override public void contextDestroyed(ServletContextEvent servletContextEvent) { // 監聽ServletContext對象銷毀 當服務器正常關閉後 ServletContext對象被銷毀 System.out.println("contextDestroyed()"); } }
3. 配置Listener web.xml
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="//xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="//www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="//xmlns.jcp.org/xml/ns/javaee //xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" version="4.0"> <!-- 配置Listener --> <listener> <listener-class>com.hy.listener.ListenerDemo1</listener-class> </listener> <!-- 初始化參數 --> <context-param> <param-name>name</param-name> <param-value>hy</param-value> </context-param> </web-app>
啟動項目
三 Servlet3.0註解
/** * Servlet3.0註解 * Created by Hy on 2020/7/3. */ @WebListener public class ListenerDemo2 implements ServletContextListener { @Override public void contextInitialized(ServletContextEvent servletContextEvent) { // 監聽ServletContext對象創建 當服務器啟動後 ServletContext對象自動創建 System.out.println("contextInitialized..."); } @Override public void contextDestroyed(ServletContextEvent servletContextEvent) { // 監聽ServletContext對象銷毀 當服務器正常關閉後 ServletContext對象被銷毀 System.out.println("contextDestroyed..."); } }