spring MVC 靜態資源處理

對於spring mvc的靜態資源處理。 web

因爲初期的時候對於spring MVC對於靜態資源的處理並非很好,若是將DispatcherServlet請求映射配置爲"/",則springMVC則將捕獲web容器全部請求,包括靜態資源的請求,spring mvc會將它們當成一個普通請求處理,由於找不到對應處理器將致使錯誤。 spring

對於spring mvc 3.x以後,就有新的方式去配置靜態資源了。 服務器

  1. 採用 <mvc:default-servlet-handler />
  2. 採用 <mvc:resources />


詳解: mvc

<mvc:default-servlet-handler /> spa

    在配置了<mvc:default-servlet-handler />以後,會在spring MVC上下文中定義一個org.springframework.web.servlet.resource.DefaultServletHttpRequestHandler,他就像一個檢查員同樣,進入DispatcherServlet的URL進行篩查,若是發現的是靜態資源的請求,就會將請求由web應用服務器默認的servlet處理,若是不是才由DispatcherServlet去處理的。 code

<mvc:default-servlet-handler default-servlet-name="yourServerDefaultServletName">

<mvc:resources />
xml

    對於<mvc:resources />,容許了靜態資源放在任何位置了,同時也能夠經過location屬性指定靜態資源的位置,隱藏能夠使用「classpath:」屬性了。 資源

    

PS:對於具體的 get

springMVC3.X --- Configuring springMVC

的配置:

http://hi.baidu.com/bosscheng1210/item/fb7ab7cea210762646d5c081 servlet

裏面有詳細的介紹。。。

相關文章
相關標籤/搜索