眾所周知,springmvc的dispatchservlet是不可以以/*規則攔截請求的,否則會將jsp都攔截了,但有時候我們的請求路徑是不能有字尾(resful風格的介面需要),基於上述情況,我們可以將web.xml中的路徑配置檔案改為/
/*和/的區別:
/*表示攔截所有的東西,包含動態頁面和靜態資源,/表示攔截所有的靜態資源(html,css,js...)以及請求,除了動態頁面(jsp)的其他東西
springmvc框架對於實現無字尾請求的解決方案是修改/的定義,使/也可以讓攔截的請求訪問靜態資源
流程:1.在web.xml中對/進行配置
<servlet
>
<
servlet-name
>dispatcherservlet
servlet-name
>
<
servlet-class
>org.springframework.web.servlet.dispatcherservlet
servlet-class
>
<
init-param
>
<
param-name
>contextconfiglocation
param-name
>
<
param-value
>classpath:spring-mvc.xml
param-value
>
init-param
>
servlet
>
<
>
<
servlet-name
>dispatcherservlet
servlet-name
>
<
url-pattern
>/
url-pattern
>
>
2.對springmvc進行配置,指定開放的靜態資源對映
<mvc:annotation-driven
>
mvc:annotation-driven
>
<
mvc:resources
location
="/img/"
="/img/**"
>
mvc:resources
>
<
mvc:default-servlet-handler
/>
注:使用類的標籤必須要先配置標籤
SpringMVC 配置靜態資源
如何你的dispatcherservlet攔截 do這樣的url,就不存在訪問不到靜態資源的問題。如果你的dispatcherservlet攔截 攔截了所有的請求,同時對 js,jpg的訪問也就被攔截了。目的 可以正常訪問靜態檔案,不要找不到靜態檔案報404。方案一 啟用tomcat的default...
springMVC訪問靜態資源
web.xml springmvcservlet name org.springframework.web.servlet.dispatcherservletservlet class contextconfiglocationparam name classpath config spring s...
spring mvc靜態資源放行
1,全部資源放行 2,選擇部分資源放行 以上倆種之前要注意先配置 方式二 在web.xml中放行 方法一 配置前段 放行 console org.springframework.web.servlet.dispatcherservlet contextconfiglocation classpath...