1. 程式人生 > >SpringMVC框架<mvc:default-servlet-handler/>的作用

SpringMVC框架<mvc:default-servlet-handler/>的作用

應用 框架 同時 分析 not eclipse code 將在 efault

1.創建一個新工程

Eclipse下新建一個web項目,File>New>Dynamic Web Project

技術分享圖片

2.添加Jar包

技術分享圖片

3.配置Web.xml

技術分享圖片

4.配置spring-mvc.xml

技術分享圖片

5.啟動項目,訪問路徑http://localhost:8080/springmvc_11_servletHandle/helloworld.html

技術分享圖片

分析原因:在SpringMVC中不存在相應的映射處理器,spring-mvc.xml中沒有配置<mvc:default-servlet-handler />

6.spring-mvc.xml配置<mvc:default-servlet-handler />

技術分享圖片

7.再次訪問路徑http://localhost:8080/springmvc_11_servletHandle/helloworld.html

技術分享圖片

當訪問路徑的請求在SpringMVC中沒有相應的請求時,查看是否配置<mvc:default-servlet-handler />,如果已配置,請求路徑會直接訪問目標資源

註意:1.default-servlet-handler將在SpringMVC上下文中定義一個DefaultServletHttpRequestHandler,它會對進入DispatcherServlet的請求進行篩查。

如果發現是沒有經過映射的請求,就將該請求交由WEB應用服務器默認的Servlet進行處理

2.配置<mvc:default-servlet-handler />時必須同時配置<mvc:annotation-driven></mvc:annotation-driven>

<mvc:default-servlet-handler/>的作用

如果你的DispatcherServlet攔截 *.do 的Url,就不存在訪問不到靜態資源的問題;如果你的DispatcherServlet攔截 / 的Url,攔截了所有的請求,同時會攔截*.js,*.jpg的訪問 ,而

<mvc:default-servlet-handler />可以用來訪問靜態資源!

SpringMVC框架<mvc:default-servlet-handler/>的作用