zoukankan      html  css  js  c++  java
  • mvc:resources

    在进行Spring MVC的配置时,通常我们会配置一个dispatcher servlet用于处理对应的URL。配置如下:

        <servlet>
            <servlet-name>SpringMVC</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>
            <load-on-startup>1</load-on-startup>
        </servlet>
        <servlet-mapping>
            <servlet-name>SpringMVC</servlet-name>
            <url-pattern>/</url-pattern>
        </servlet-mapping>     

    这表示名字为 SpringMVC 的servlet会处理一切的url对应的请求,那么我们怎么让servlet来处理项目中的静态资源呢?这里有两种方法。

      1. 另外使用一个servlet来处理静态资源。若我们的资源放置在webapps文件夹下的resources文件夹中,那么我们可以用名字为default的servlet来处理静态资源。因此我们还需要在上述配置的基础上加上以下配置:

    <servlet-mapping>  
    <servlet-name>default</servlet-name>  
    <url-pattern>/resources/*</url-pattern>  
    </servlet-mapping>  

    这表示default的servlet会处理url中为resources/*的对应的请求。这样,当你把你的image,css已经其他文件放在resources文件中时,spring就可以找到它啦。

    2. 采用spring自带<mvc:resources>方法。首先找到你定义的那个servlet的xml文件,如本例子中,servlet的名字叫spring-mvc.xml,因此需要找到spring-mvc.xml文件,并在该文件中插入以下配置:

    <mvc:annotation-driven/>  
    <mvc:resources mapping="/resources/**/" location="/resources/"/>  

    如此就不必另外添加一个mvc来处理静态资源。而mvc知道静态资源所处的位置为resources文件夹。
    两种方法都可以将spring mvc配置处理静态资源。

     

    在SpringMVC3.0之后推荐使用二: 

     <mvc:annotation-driven />
     <mvc:resources location="/static/" mapping="/static/**"/>   
    

    说明:

    location元素表示webapp目录下的static包下的所有文件;

    mapping元素表示以/static开头的所有请求路径,如/static/a 或者/static/a/b;

    该配置的作用是:DispatcherServlet不会拦截以/static开头的所有请求路径,并当作静态资源交由Servlet处理。

    也可以使用一:

    在spring-mvc里面加入

    <!--使用默认的Servlet来响应静态文件-->
    <mvc:default-servlet-handler/>

    在web.xml里添加如下的配置

    <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> 
  • 相关阅读:
    PAT Advanced 1067 Sort with Swap(0, i) (25分)
    PAT Advanced 1048 Find Coins (25分)
    PAT Advanced 1060 Are They Equal (25分)
    PAT Advanced 1088 Rational Arithmetic (20分)
    PAT Advanced 1032 Sharing (25分)
    Linux的at命令
    Sublime Text3使用指南
    IntelliJ IDEA创建第一个Groovy工程
    Sublime Text3 安装ftp插件
    Sublime Text3配置Groovy运行环境
  • 原文地址:https://www.cnblogs.com/caozx/p/11435048.html
Copyright © 2011-2022 走看看