<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                1.Filter過濾器 ![](http://h.yiniuedu.com/09cf0d0a371c1495824914c059c48e7a) 2.案例1_登錄驗證 ![](http://h.yiniuedu.com/bf639079b4d02f79742c141e97a23e70) 3.過濾敏感詞匯 ![](http://h.yiniuedu.com/3886352623057bbdf4811a89730623d9) 4.代理 ![](http://h.yiniuedu.com/b2a633c9824fa39aedc138275412286a) ***** ### **第一堂課** **本節知識點** 1.1 今日內容 1.2 Filter_概述 1.3 Filter快速入門 1.4 Filter_細節_web.xml配置方式 **本節目標** 1.理解Filter的概念和作用 2.能夠快速寫出一個Filter的demo 3.知道在web.xml中如何配置Filter #### **1.1今日內容** 1. Filter:過濾器 2. Listener:監聽器 #### **1.2Filter_概述** 1. 概念: * 生活中的過濾器:凈水器,空氣凈化器,土匪、 * web中的過濾器:當訪問服務器的資源時,過濾器可以將請求攔截下來,完成一些特殊的功能。 * 過濾器的作用: * 一般用于完成通用的操作。如:登錄驗證、統一編碼處理、敏感字符過濾... ***** #### **1.3Filter快速入門** ##### **1.3.1知識概述** 1. 步驟: 1. 定義一個類,實現接口Filter 2. 復寫方法 3. 配置攔截路徑 1. web.xml 2. 注解 練習 ``` @WebFilter("/\*")//訪問所有資源之前,都會執行該過濾器 public class FilterDemo1 implements Filter { ????@Override ????public void init(FilterConfig filterConfig) throws ServletException { ????} ????@Override ????public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException { ????????System.out.println("filterDemo1被執行了...."); ????????//放行 ????????filterChain.doFilter(servletRequest,servletResponse); ????} ????@Override ????public void destroy() { ????} ``` ***** #### **1.4Filter_細節_web.xml配置方式** ##### **1.4.1知識概述** 1. web.xml配置 ``` <filter> <filter-name>demo1</filter-name> <filter-class>cn.itcast.web.filter.FilterDemo1</filter-class> </filter> <filter-mapping> <filter-name>demo1</filter-name> <!-- 攔截路徑 --> <url-pattern>/*</url-pattern> </filter-mapping> ``` ***** ### **第二堂課** **本節知識點:** 2.1 Filter_細節_執行流程&生命周期 2.2 Filter_細節_過濾器攔截路徑配置 2.3 Filter_細節_過濾器攔截方式配置 **本節目標 :** 1.能夠說出Filter的執行流程和生命周期 2.能夠配置過濾器的攔截路徑 3.能夠配置過濾器的攔截方式 ***** #### 2.1**Filter_細節_執行流程&生命周期** ##### **2.1.1知識概述** 1.過濾器執行流程 1. 執行過濾器 2. 執行放行后的資源 3. 回來執行過濾器放行代碼下邊的代碼 2. 過濾器生命周期方法 1. init:在服務器啟動后,會創建Filter對象,然后調用init方法。只執行一次。用于加載資源 2. doFilter:每一次請求被攔截資源時,會執行。執行多次 3. destroy:在服務器關閉后,Filter對象被銷毀。如果服務器是正常關閉,則會執行destroy方法。只執行一次。用于釋放資源 ??? #### **2.2 Filter_細節_過濾器攔截路徑配置** 1. 過濾器配置詳解 * 攔截路徑配置: 1. 具體資源路徑: /index.jsp 只有訪問index.jsp資源時,過濾器才會被執行 2. 攔截目錄: /user/* 訪問/user下的所有資源時,過濾器都會被執行 3. 后綴名攔截: *.jsp 訪問所有后綴名為jsp資源時,過濾器都會被執行 4. 攔截所有資源:/* 訪問所有資源時,過濾器都會被執行 #### **2.3 Filter_細節_過濾器攔截方式配置** * 攔截方式配置:資源被訪問的方式 * 注解配置: * 設置dispatcherTypes屬性 1. REQUEST:默認值。瀏覽器直接請求資源 2. FORWARD:轉發訪問資源 3. INCLUDE:包含訪問資源 4. ERROR:錯誤跳轉資源 5. ASYNC:異步訪問資源 * web.xml配置 * 設置<dispatcher></dispatcher>標簽即可 ### **第三堂課** **本節知識點:** 3.1 Filter_細節_過濾器鏈(多個過濾器) 3.2 Filter_案例1_登錄驗證_分析 3.3 Filter_案例1_登錄驗證_代碼實現 **本節目標 :** ***** 1.理解過濾器鏈的概念和執行順序 2.完成登陸驗證案例 #### **3.1Filter_細節_過濾器鏈(多個過濾器)** 過濾器鏈(配置多個過濾器) *執行順序:如果有兩個過濾器:過濾器1和過濾器2 1. 過濾器1 2. 過濾器2 3. 資源執行 4. 過濾器2 5. 過濾器1 * 過濾器先后順序問題: 1. 注解配置:按照類名的字符串比較規則比較,值小的先執行 * 如: AFilter 和 BFilter,AFilter就先執行了。 2. web.xml配置: 誰定義在上邊,誰先執行 ***** #### 3.2**Filter_案例1_登錄驗證_分析** ##### **3.2.1知識概述** 1. 案例1_登錄驗證 * 需求: 1. 訪問case案例的資源。驗證其是否登錄 2. 如果登錄了,則直接放行。 3. 如果沒有登錄,則跳轉到登錄頁面,提示"您尚未登錄,請先登錄"。 ***** #### 3.3**Filter_案例1_登錄驗證_代碼實現** ***** ### **第四堂課** **本節知識點:** 4.1 Filter_案例2_過濾敏感詞匯_分析 4.2動態代理1_基本實現步驟 **本節目標 **: 1.理解過濾敏感詞匯案例的需求 2.理解動態代理實現的基本步驟 ***** #### **4.1Filter_案例2_過濾敏感詞匯_分析** ##### **4.1.1知識概述** 2. 案例2_敏感詞匯過濾 * 需求: 1. 對case案例錄入的數據進行敏感詞匯過濾 2. 敏感詞匯參考《敏感詞匯.txt》 3. 如果是敏感詞匯,替換為 *** * 分析: 1. 對request對象進行增強。增強獲取參數相關方法 2. 放行。傳遞代理對象 ***** #### **4.2動態代理1_基本實現步驟** * 增強對象的功能: * 設計模式:一些通用的解決固定問題的方式 1. 裝飾模式 2. 代理模式 * 概念: 1. 真實對象:被代理的對象 2. 代理對象: 3. 代理模式:代理對象代理真實對象,達到增強真實對象功能的目的 * 實現方式: 1. 靜態代理:有一個類文件描述代理模式 2. 動態代理:在內存中形成代理類 * 實現步驟: 1. 代理對象和真實對象實現相同的接口 2. 代理對象 = Proxy.newProxyInstance(); 3. 使用代理對象調用方法。 4. 增強方法 ***** ### **第五堂課** **本節知識點:** 5.1 動態代理2_增強方法 5.2 Filter_案例2_過濾敏感詞匯_實現 **本節目標 :** 能夠使用動態代理增強方法 完成過濾敏感詞匯案例 ***** #### 5.1**動態代理2_增強方法** ##### **5.1.1知識概述** * 增強方法: 1. 增強參數列表 2. 增強返回值類型 3. 增強方法體執行邏輯 ***** #### 5.2**Filter_案例2_過濾敏感詞匯_實現** ##### **5.2.1知識概述** 實現過濾敏感詞匯案例 ***** ### **第六堂課** 本節知識點: 6.1 練習過濾敏感詞匯案例 6.2 Listener_概述 6.3 Listener_ServletContextListener使用 **本節目標 :** 理解ServletContextListener #### **6.1練習過濾敏感詞匯案例** ***** #### **6.2Listener_概述** ##### **6.2.1知識概述** * 概念:web的三大組件之一。 * 事件監聽機制 * 事件 :一件事情 * 事件源 :事件發生的地方 * 監聽器 :一個對象 * 注冊監聽:將事件、事件源、監聽器綁定在一起。 當事件源上發生某個事件后,執行監聽器代碼 ***** #### **6.3Listener_ServletContextListener使用** ##### **6.3.1知識概述** * ServletContextListener:監聽ServletContext對象的創建和銷毀 * 方法: * void contextDestroyed(ServletContextEvent sce) :ServletContext對象被銷毀之前會調用該方法 * void contextInitialized(ServletContextEvent sce) :ServletContext對象創建后會調用該方法 * 步驟: 1. 定義一個類,實現ServletContextListener接口 2. 復寫方法 3. 配置 1. web.xml ``` <listener> <listener-class>cn.itcast.web.listener.ContextLoaderListener</listener-class> </listener> ``` * 指定初始化參數<context-param> 2. 注解: * @WebListener
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看