濮阳杆衣贸易有限公司

主頁 > 知識庫 > Spring MVC之DispatcherServlet_動力節(jié)點Java學院整理

Spring MVC之DispatcherServlet_動力節(jié)點Java學院整理

熱門標簽:自繪地圖標注數(shù)據(jù) 外呼系統(tǒng)使用方法 南通通訊外呼系統(tǒng)產(chǎn)品介紹 如何看懂地圖標注點 海外圖書館地圖標注點 電銷機器人免培訓 潤滑油銷售電銷機器人 給地圖標注得傭金 電話機器人需要使用網(wǎng)絡(luò)嗎

Spring MVC之DispatcherServlet

使用Spring MVC,配置DispatcherServlet是第一步。

DispatcherServlet是一個Servlet,所以可以配置多個DispatcherServlet。

DispatcherServlet是前置控制器,配置在web.xml文件中的。攔截匹配的請求,Servlet攔截匹配規(guī)則要自已定義,把攔截下來的請求,依據(jù)某某規(guī)則分發(fā)到目標Controller(我們寫的Action)來處理。 

“某某規(guī)則”:是根據(jù)你使用了哪個HandlerMapping接口的實現(xiàn)類的不同而不同。 

先來看第一個例子:

web-app>  
    servlet>  
        servlet-name>example/servlet-name>  
        servlet-class>org.springframework.web.servlet.DispatcherServlet/servlet-class>  
        load-on-startup>1/load-on-startup>  
    /servlet>  
    servlet-mapping>  
        servlet-name>example/servlet-name>  
        url-pattern>*.form/url-pattern>  
    /servlet-mapping>  
/web-app>  

 load-on-startup>1/load-on-startup>是啟動順序,讓這個Servlet隨Servletp容器一起啟動。
 url-pattern>*.form/url-pattern> 會攔截*.form結(jié)尾的請求。 

 servlet-name>example/servlet-name>這個Servlet的名字是example,可以有多個DispatcherServlet,是通過名字來區(qū)分的。每一個DispatcherServlet有自己的WebApplicationContext上下文對象。同時保存的ServletContext中和Request對象中,關(guān)于key,以后說明。 

在DispatcherServlet的初始化過程中,框架會在web應(yīng)用的 WEB-INF文件夾下尋找名為[servlet-name]-servlet.xml 的配置文件,生成文件中定義的bean。 

第二個例子:

servlet> 
  servlet-name>springMVC/servlet-name> 
  servlet-class>org.springframework.web.servlet.DispatcherServlet/servlet-class> 
  init-param> 
    param-name>contextConfigLocation/param-name> 
    param-value>classpath*:/springMVC.xml/param-value> 
  /init-param> 
  load-on-startup>1/load-on-startup> 
/servlet> 
servlet-mapping> 
  servlet-name>springMVC/servlet-name> 
  url-pattern>//url-pattern> 
/servlet-mapping> 

指明了配置文件的文件名,不使用默認配置文件名,而使用springMVC.xml配置文件。

其中param-value>**.xml/param-value> 這里可以使用多種寫法

1、不寫,使用默認值:/WEB-INF/servlet-name>-servlet.xml
2、param-value>/WEB-INF/classes/springMVC.xml/param-value>
3、param-value>classpath*:springMVC-mvc.xml/param-value>
4、多個值用逗號分隔 

Servlet攔截匹配規(guī)則可以自已定義,攔截哪種URL合適? 

當映射為@RequestMapping("/user/add")時,為例:

1、攔截*.do、*.htm, 例如:/user/add.do

這是最傳統(tǒng)的方式,最簡單也最實用。不會導(dǎo)致靜態(tài)文件(jpg,js,css)被攔截。 

2、攔截/,例如:/user/add

可以實現(xiàn)現(xiàn)在很流行的REST風格。很多互聯(lián)網(wǎng)類型的應(yīng)用很喜歡這種風格的URL。
弊端:會導(dǎo)致靜態(tài)文件(jpg,js,css)被攔截后不能正常顯示。想實現(xiàn)REST風格,事情就是麻煩一些。后面有解決辦法還算簡單。 

3、攔截/*,這是一個錯誤的方式,請求可以走到Action中,但轉(zhuǎn)到j(luò)sp時再次被攔截,不能訪問到j(luò)sp。

您可能感興趣的文章:
  • SpringMVC DispatcherServlet組件實現(xiàn)解析
  • Spring MVC學習之DispatcherServlet請求處理詳析
  • spring mvc DispatcherServlet之前端控制器架構(gòu)詳解
  • 淺談springmvc的DispatcherServlet分析
  • Spring MVC之DispatcherServlet詳解_動力節(jié)點Java學院整理
  • Springmvc DispatcherServlet原理及用法解析

標簽:黃石 樂山 廣州 大連 南京 貸款邀約 銅川 內(nèi)江

巨人網(wǎng)絡(luò)通訊聲明:本文標題《Spring MVC之DispatcherServlet_動力節(jié)點Java學院整理》,本文關(guān)鍵詞  Spring,MVC,之,DispatcherServlet,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Spring MVC之DispatcherServlet_動力節(jié)點Java學院整理》相關(guān)的同類信息!
  • 本頁收集關(guān)于Spring MVC之DispatcherServlet_動力節(jié)點Java學院整理的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    大足县| 花莲市| 泌阳县| 三台县| 永顺县| 察雅县| 双峰县| 太康县| 乌兰浩特市| 金寨县| 泽州县| 潞西市| 桐乡市| 鹤庆县| 西乌珠穆沁旗| 客服| 五大连池市| 都兰县| 依安县| 泰宁县| 江津市| 易门县| 五原县| 集安市| 高唐县| 蒙阴县| 徐州市| 宁化县| 辽中县| 新乐市| 双柏县| 綦江县| 绩溪县| 新河县| 青神县| 余江县| 壶关县| 静宁县| 涡阳县| 漯河市| 湾仔区|