第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

Spring MVC攔截器

ReasonLee JAVA開發(fā)工程師
難度中級
時長41分
學(xué)習(xí)人數(shù)
綜合評分9.77
244人評價 查看評價
9.9 內(nèi)容實用
9.8 簡潔易懂
9.6 邏輯清晰
  • 攔截器的方法介紹:
    查看全部
  • 攔截器Interceptor的實現(xiàn):
    查看全部
  • 獲取session 3
    查看全部
  • 獲取session
    查看全部
  • 可以深入了解,攔截器的作用很大!??!過濾器也作為相比較了解記憶一下 過濾器:過濾的作用,過濾不必要的東西,例如spring本身在的filter類,最終應(yīng)該還是有東西進去action當(dāng)中! 攔截器:攔截,有沒有東西最終通過在于preHandler的內(nèi)容,后續(xù)輸出的內(nèi)容也可以經(jīng)過post、after來處理一下!依賴于spring mvc框架
    查看全部
  • 使用攔截器的好處: 攔截器可以處理Web應(yīng)用中請求的一些共性問題. 共性問題在攔截器中處理,可以減少重復(fù)代碼,便于維護.
    查看全部
  • 攔截器與過濾器的區(qū)別: 過濾器依賴于Servlet容器,基于回調(diào)函數(shù),過濾范圍大(靜態(tài)資源可以被過濾器過濾). 攔截器依賴于框架容器,基于java反射機制,只過濾請求.
    查看全部
  • 攔截器的使用場景 使用原則:處理所有請求的共同問題 (1).解決亂碼問題 可以不使用Spring MVC提供的CharacterEncodingFilter過濾器解決編碼問題,改為用攔截器來解決客戶端請求的亂碼問題. 步驟: 1.創(chuàng)建一個攔截器,該攔截器配置為攔截所有的客戶端請求. 2.在攔截器的preHandle()方法中通過HttpServletRequest參數(shù)的setCharacterEncoding()方法設(shè)置請求的字符編碼為UTF-8. (2).解決權(quán)限驗證問題: 即對用戶是否登錄進行判斷,一般用戶的登錄信息都會保存在Session中. 在攔截器的preHandle()方法中通過HttpServletRequest參數(shù)的getSession()方法獲取得到Session對象. 判斷該對象中是否已經(jīng)保存了用戶登錄的信息. 如果用戶是沒有登錄的,則發(fā)送到登錄頁面,并且終止當(dāng)前請求. 即通過request對象使用請求轉(zhuǎn)發(fā)跳轉(zhuǎn)到登錄頁面,preHandle()方法return false. 如果已經(jīng)是登錄的,則方法return true即可.
    查看全部
  • 攔截器的其他實現(xiàn)方式. 1.實現(xiàn)HandlerInterceptor接口(方式一) 2.實現(xiàn)webRequestInterceptor接口(方式二) webRequestInterceptor接口聲明的方法與HandlerInterceptor接口聲明的方法的方法名一樣,但方法參數(shù)不一樣,原理與使用方法基本相似. webRequestInterceptor接口中的preHandle()方法是沒有返回值的.因此不能通過preHandle()方法去終止請求. 不管使用哪種方式創(chuàng)建攔截器,在配置文件中都是用<mvc:interceptors>標(biāo)簽進行注冊. <mvc:interceptors> <mvc:interceptor> <mvc:mapping path="" /> <bean class=""/> </mvc:interceptor> <mvc:interceptor> <mvc:mapping path="" /> <bean class=""/> </mvc:interceptor> </mvc:interceptors> 或者: <mvc:interceptors> <bean class=""/> <bean class=""/> </mvc:interceptors>
    查看全部
  • 一個應(yīng)用中配置多個攔截器. 直接在配置文件中的<mvc:interceptors>標(biāo)簽下配置多個<mvc:interceptor>標(biāo)簽或者直接配置多個bean即可. 多個攔截器的執(zhí)行順序. preHandle1->preHandle2->controller方法->postHandle2->postHandle1->afterCompletion2->afterCompletion1. 類似函數(shù)遞歸的原理.
    查看全部
  • 實現(xiàn)接口的三個方法中: preHandle()方法在請求被處理之前進行調(diào)用,具有一個boolean類型的返回值. 該方法的返回值作用是:是否將當(dāng)前請求攔截下來,如果返回false,請求將被終止,即不會繼續(xù)執(zhí)行Controller中的方法與postHandler、afterCompletion方法. 如果返回true,則請求將會繼續(xù)運行. 三個方法中都具有HttpServletRequest、HttpServletResponse與Object類型的參數(shù). Object類型參數(shù)表示的是被攔截的請求的目標(biāo)對象.即請求去到Controller對應(yīng)的那個方法. postHandle()方法會在請求被處理之后進行調(diào)用,該方法中有ModelAndView類型的參數(shù),可以通過ModelAndView參數(shù)來改變要顯示的視圖,或修改發(fā)往視圖中保存的屬性值. (利用ModelAndView的addObject()、setViewName()方法修改) afterCompletion()方法會在請求被響應(yīng)之后進行調(diào)用,即視圖已經(jīng)被顯示出來之后再調(diào)用的方法.可以在該方法中進行資源的銷毀操作.
    查看全部
  • 實現(xiàn)接口的三個方法: public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object obj, Exception e) throws Exception {} public void postHandle(HttpServletRequest request, HttpServletResponse response,Object obj, ModelAndView mv) throws Exception {} public boolean preHandle(HttpServletRequest request, HttpServletResponse response,Object obj) throws Exception { return true; } 方法的執(zhí)行順序是preHandle->到達Controller方法并執(zhí)行-->postHandle-->afterCompletion 在Struts2中攔截器是實現(xiàn)Interceptor接口.
    查看全部
  • 攔截器的實現(xiàn) 1.編寫一個類實現(xiàn)HandlerInterceptor接口. 2.實現(xiàn)接口聲明的方法.分別是afterCompletion、postHandle、preHandle方法. 3.將攔截器注冊進Spring MVC框架中.在配置文件中使用<mvc:interceptors>標(biāo)簽配置. 有兩種配置方式: 一.所有的請求都會進入攔截器: <mvc:interceptors> <bean class="com.own.interceptor.MyFirstInterceptor"/> </mvc:interceptors> 二.指明攔截器的攔截url: <mvc:interceptors> <mvc:interceptor> <mvc:mapping path="/hello/login"/> <bean class="com.own.interceptor.MyFirstInterceptor"/> </mvc:interceptor> </mvc:interceptors> 那么攔截器只會攔截到達/hello/login的請求,path屬性中可以使用正則表達式.
    查看全部
  • Spring MVC可以通過配置過濾器來解決亂碼問題. Spring MVC默認(rèn)提供了CharacterEncodingFilter過濾器類,來對客戶端的請求進行編碼設(shè)置. 在web.xml中配置該過濾器: <filter> <filter-name>charset</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <!--配置名為encoding的參數(shù)(固定值),指定所有請求會經(jīng)過這個filter,并且將所有請求的請求編碼設(shè)置為utf8--> <init-param> <param-name>encoding</param-name> <param-value>utf8</param-value> </init-param> </filter> <filter-mapping> <filter-name>charset</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> 過濾器與攔截器原理類似 區(qū)別是過濾器是最先對請求進行攔截,攔截器是當(dāng)請求通過過濾器之后,在請求到達Controller之前進行攔截.當(dāng)執(zhí)行完Controller的方法之后再依次遞歸返回執(zhí)行. 過濾器與攔截器都能在Controller方法執(zhí)行的前后進行一些工作.
    查看全部
  • Controller的方法中可以返回一個ModelAndView對象. ModelAndView對象有setViewName()方法,用來設(shè)置要返回的視圖名稱. 當(dāng)返回ModelAndView對象時,就會跳轉(zhuǎn)到setViewName()方法中指定的jsp頁面. @RequestMapping("/model") public ModelAndView test(){ ModelAndView mv=new ModelAndView(); //去到根目錄下的hello.jsp頁面 mv.setViewName("/hello.jsp"); return mv; } ModelAndView類中有addObject(String key,Object value)方法,用來把對象保存在ModelAndView中,最后方法返回ModelAndView對象,在jsp頁面中就可以使用el表達式通過key來獲取得到value. ModelAndView與Model作用類似.
    查看全部

舉報

0/150
提交
取消
課程須知
學(xué)習(xí)本門課程前需要具備Spring MVC的基礎(chǔ)知識,可以觀看慕課網(wǎng)的《Spring MVC起步》課程;還需要對過濾器的知識有所了解。
老師告訴你能學(xué)到什么?
1、理解Spring MVC攔截器的工作原理 2、掌握如何實現(xiàn)Spring MVC攔截器 3、了解Spring MVC攔截器的使用場景 4、理解Spring MVC攔截器與過濾器的區(qū)別

微信掃碼,參與3人拼團

微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號

友情提示:

您好,此課程屬于遷移課程,您已購買該課程,無需重復(fù)購買,感謝您對慕課網(wǎng)的支持!