springMvc裏的mvc:resources與靜態資源的訪問

springMvc裏的mvc:resources與靜態資源的訪問

 

在進行Spring MVC的配置時,一般咱們會配置一個dispatcher servlet用於處理對應的URL。配置以下:css

 

[html]  view plain  copy
 
  1. <servlet>  
  2. <servlet-name>mvc-dispatcher</servlet-name>  
  3. <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>  
  4. <load-on-startup>1</load-on-startup>  
  5. </servlet>  
  6.   
  7. <servlet-mapping>  
  8. <servlet-name>mvc-dispatcher</servlet-name>  
  9. <url-pattern>/</url-pattern>  
  10. </servlet-mapping>  

 

這表示名字爲mvc-dispatcher的servlet會處理一切的url對應的請求,那麼咱們怎麼讓servlet來處理項目中的靜態資源呢?這裏有兩種方法。html

1. 另外使用一個servlet來處理靜態資源。若咱們的資源放置在webapps文件夾下的resources文件夾中,那麼咱們能夠用名字爲default的servlet來處理靜態資源。所以咱們還須要在上述配置的基礎上加上如下配置:web

[html]  view plain  copy
 
  1. <servlet-mapping>  
  2. <servlet-name>default</servlet-name>  
  3. <url-pattern>resources/*</url-pattern>  
  4. </servlet-mapping>  


這表示default的servlet會處理url中爲resources/*的對應的請求。這樣,當你把你的image,css已經其餘文件放在resources文件中時,spring就能夠找到它啦。spring

 

2. 採用spring自帶<mvc:resources>方法。首先找到你定義的那個servlet的xml文件,如本例子中,servlet的名字叫mvc-dispatcher,所以須要找到mvc-dispatcher-servlet.xml文件,並在該文件中插入如下配置:mvc

 

[html]  view plain  copy
 
  1. <mvc:annotation-driven/>  
  2. <mvc:resources mapping="/resources/**/" location="/resources/"/>  


這樣,就沒必要另外添加一個mvc來處理靜態資源。而mvc知道靜態資源所處的位置爲resources文件夾。
兩種方法均可以將spring mvc配置處理靜態資源。app

 


在SpringMVC3.0以後推薦使用一: webapp

 

[html]  view plain  copy
 
  1. <!-- 靜態資源訪問 -->  
  2.   <mvc:default-servlet-handler/>  


如下兩種在SpringMVC3.0以前能夠使用url

 

也能夠使用二:spa

 

[html]  view plain  copy
 
  1. <!-- 靜態資源訪問  
  2.  <mvc:resources location="/img/" mapping="/img/**"/>   
  3.  <mvc:resources location="/js/" mapping="/js/**"/>    
  4.  <mvc:resources location="/css/" mapping="/css/**"/>  
  5. -->  


也能夠使用三:.net

 

web.xml裏添加以下的配置

 

 

[html]  view plain  copy
 
    1. <servlet-mapping>  
    2.      <servlet-name>default</servlet-name>  
    3.      <url-pattern>*.css</url-pattern>  
    4. </servlet-mapping>  
    5.   
    6. <servlet-mapping>  
    7.     <servlet-name>default</servlet-name>  
    8.     <url-pattern>*.gif</url-pattern>  
    9.   
    10. </servlet-mapping>  
    11.      
    12. <servlet-mapping>  
    13.      <servlet-name>default</servlet-name>  
    14.      <url-pattern>*.jpg</url-pattern>  
    15. </servlet-mapping>  
    16.      
    17. <servlet-mapping>  
    18.      <servlet-name>default</servlet-name>  
    19.      <url-pattern>*.js</url-pattern>  
    20. </servlet-mapping>  
相關文章
相關標籤/搜索