如果你的DispatcherServlet攔截的是*.do這樣的URL,就不存在訪問不到靜態資源的問題
如果你的DispatcherServlet攔截了"/"所有的請求,那同時對*.js,*.jpg的訪問也就被攔截了。
我們在進行springMVC開發時,必定會在jsp頁面引入js、img和css等檔案。
大多數人會將這些分類存放在WebRoot檔案下建立的檔案夾下面。
同時,會在web.xml檔案中配置攔截所有請求。這樣就造成了頁面無法訪問到js、img和css檔案夾中的檔案了
方法一:在web.xml中配置defaultServlet來處理靜態檔案
<servlet-mapping><servlet-name>default</servlet-name><url-pattern>*.jpg</url-pattern></servlet-mapping><servlet-mapping><servlet-name>default</servlet-name><url-pattern>*.js</url-pattern></servlet-mapping><servlet-mapping><servlet-name>default</servlet-name><url-pattern>*.css</url-pattern></servlet-mapping>
方法二:在Springmvc中可以利用mvc:resources
springmvc的<mvc:resources location="**" mapping="**"/>標籤是在spring3.0.4出現的,主要是用來進行靜態資源的訪問。
<!-- 對靜態資源檔案的訪問 --><mvc:resources location="/js/" mapping="/js/**"/><mvc:resources location="/img/" mapping="/img/**"/>
location指定靜態資源的位置
方法三:使用<mvc:default-servlet-handler/>
<mvc:default-servlet-handler/>
最後再說明一下,如何你的DispatcherServlet攔截*.do這樣的URL,就不存上述問題了。
源碼下載:http://download.csdn.net/detail/itmyhome/7359943
歡迎加入JAVA技術交流群:74955800