springmvc如何訪問靜態資源
阿新 • • 發佈:2019-02-04
如果你的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>
-
<
- <url-pattern>*.css</url-pattern>
- </servlet-mapping>
方法二:在Springmvc中可以利用mvc:resources
springmvc的<mvc:resources location="**" mapping="**"/>標籤是在spring3.0.4出現的,主要是用來進行靜態資源的訪問。
- <!-- 對靜態資原始檔的訪問 -->
-
<mvc:resourceslocation=
- <mvc:resourceslocation="/img/"mapping="/img/**"/>
方法三:使用<mvc:default-servlet-handler/>
- <mvc:default-servlet-handler/>
最後再說明一下,如何你的DispatcherServlet攔截*.do這樣的URL,就不存上述問題了。