zoukankan      html  css  js  c++  java
  • springMvc里的mvc:resources与静态资源的访问

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

    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来处理项目中的静态资源呢?这里有两种方法。

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

    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就可以找到它啦。

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

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


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

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

    1.  
      <!-- 静态资源访问 -->
    2.  
      <mvc:default-servlet-handler/>


    以下两种在SpringMVC3.0之前可以使用

    也可以使用二:

    1.  
      <!-- 静态资源访问
    2.  
      <mvc:resources location="/img/" mapping="/img/**"/>
    3.  
      <mvc:resources location="/js/" mapping="/js/**"/>
    4.  
      <mvc:resources location="/css/" mapping="/css/**"/>
    5.  
      -->


    也可以使用三:

    web.xml里添加如下的配置

    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>



  • 相关阅读:
    Attach Files to Objects 将文件附加到对象
    Provide Several View Variants for End-Users 为最终用户提供多个视图变体
    Audit Object Changes 审核对象更改
    Toggle the WinForms Ribbon Interface 切换 WinForms 功能区界面
    Change Style of Navigation Items 更改导航项的样式
    Apply Grouping to List View Data 将分组应用于列表视图数据
    Choose the WinForms UI Type 选择 WinForms UI 类型
    Filter List Views 筛选器列表视图
    Make a List View Editable 使列表视图可编辑
    Add a Preview to a List View将预览添加到列表视图
  • 原文地址:https://www.cnblogs.com/yinyl/p/9266480.html
Copyright © 2011-2022 走看看