关于springmvc静态资源文件加载的问题

这两天遇到了静态资源无法加载的问题,尝试了半天,得出了一些结果,这里做一个总结。

首先为什么会出现这样的情况:因为在web.xml文件中,配置了dispatchServlet,拦截了所有请求交给springmvc来处理。

以下方法可能在不同环境下结果不同,仅为我本地测试的结果

  • 第一种情况:如果你的静态资源文件不在WEB-INF下却加载不了
    (1)在 web.xml 配置文件中添加如下代码
    <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>*.css</url-pattern>
    </servlet-mapping>

需要加载什么类型的文件就添加对应后缀结尾的url-parttern
       (2)在 springmvc.xml 中配置如下代码

    <mvc:default-servlet-handler/>

默认让web容器处理静态文件,非静态的再交给dispatchServlet处理

  • 第二种情况:如果你的静态资源文件在WEB-INF下加载不了
    (3) 在 springmvc.xml 中配置如下代码
     <mvc:resources location="/WEB-INF/css/" mapping="/css/**"  />
     <mvc:resources location="/WEB-INF/js/" mapping="/js/**"  />

注意location开头和结尾必须都有 / ,不然会出错。

如果上面的方法混用,也可能会出现无法加载资源文件的情况。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值