1. 程式人生 > 實用技巧 >SpringMVC訪問靜態資源

SpringMVC訪問靜態資源

如果你的DispatcherServlet攔截 .do這樣的URL,就不存在訪問不到靜態資源的問題。如果你的DispatcherServlet攔截“/”,攔截了所有的請求,同時對.js,*.jpg的訪問也就被攔截了。

問題原因:罪魁禍首是web.xml下對spring的DispatcherServlet請求url對映的配置,原配置如下:

<servlet>
    <servlet-name>spring</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</
servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>spring</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping>

分析原因:/把所有的請求都交給spring去處理了,而所有可用的請求url都是在Constroller裡使用類似@RequestMapping(value = “/login/{user}”, method = RequestMethod.GET)這樣的註解配置的,這樣的話對js/css/jpg/gif等靜態資源的訪問就會得不到。

目的:可以正常訪問靜態檔案,不要找不到靜態檔案報404。

一、啟用Tomcat的defaultServlet來處理靜態檔案