用了springmvc為何JS,CSS等檔案就是訪問不到

來源:互聯網
上載者:User

標籤:請求   需要   xxx   cat   靜態檔案   -o   efault   start   view   

那就是為什麼我配置好web.xml中的dispatchservlet後,js,css,甚至gif都不能正常顯示了

我們來看看我們配置的web.xml

 1     <!-- springMVC核心配置      controller,viewResolver,HandlerMapping --> 2     <servlet> 3         <servlet-name>dispatcherServlet</servlet-name> 4         <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 5         <init-param> 6             <param-name>contextConfigLocation</param-name> 7             <!--spingMVC的配置路徑 --> 8             <param-value>classpath:spring-mvc.xml</param-value> 9         </init-param>10         <load-on-startup>1</load-on-startup>11     </servlet>12     <servlet-mapping>13         <servlet-name>dispatcherServlet</servlet-name>14         <url-pattern>/</url-pattern>15     </servlet-mapping>

這個就涉及到一個知識點了,就是url-pattern的   /    和    *   的區別了

這裡我來引用一段別人的原話

url-pattern有5種配置模式:  

(1)/xxx:完全符合/xxx的路徑  

(2)/xxx/*:匹配以/xxx開頭的路徑,請求中必須包含xxx。  

(3)/*:匹配/下的所有路徑,請求可以進入到action或controller,但是轉寄jsp時再次被攔截,不能訪問jsp介面。  

(4).xx:匹配以xx結尾的路徑,所有請求必須以.xx結尾,但不會影響訪問靜態檔案。  

(5)/:預設模式,未被匹配的路徑都將映射到刺servlet,對jpg,js,css等靜態檔案也將被攔截,不能訪問。 

因此,如果我們一開始就採用了/的方式,那麼就需要補上如下的web.xml配置來讓靜態檔案可訪問了

<!-- static resources -->    <servlet-mapping>        <servlet-name>default</servlet-name>        <url-pattern>*.css</url-pattern>    </servlet-mapping>    <servlet-mapping>        <servlet-name>default</servlet-name>        <url-pattern>*.gif</url-pattern>    </servlet-mapping>    <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>*.html</url-pattern>    </servlet-mapping>

 

 

 

用了springmvc為何JS,CSS等檔案就是訪問不到

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.