整合SSM中jsp页面图片加载不出来问题

js 专栏收录该内容
8 篇文章 0 订阅

Jsp中图片加载不出来问题解决!!!

<div class="img_div">
<img class="product_img" alt="" src="static/img/pr.jpg" style="width: 228px;height: 300px"/>
									</div>

1.首先我们看一下web.xml文件中

<!--    配置DispatcherServlet 前端控制器-->
    <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:applicationContext.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>

/拦截了包括静态资源在内的所有资源

2.但是我们的静态资源不需要被拦截
就有了Spring整合MVC时spring-mvc.xml当中的这行代码

<!--    静态资源过滤-->
    <mvc:default-servlet-handler/>
这时候我们的静态资源会被过滤掉

!!!
但有时代码中有些错误,或者其他情况下,还是会出现静态资源被拦截的问题

这个时候的解决方案有
方法1:在springmvc.xml中添加mvc:resources,列出需要加载的静态资源所在的位置,这样请求来时默认servlet来处理这些静态资源,而不是通过前端控制器。

<!-- 加载静态资源 -->
<mvc:resources location="/static/images/" mapping="/static/images/**"/>
<mvc:resources location="/static/js/" mapping="/static/js/**"/>
<mvc:resources location="/static/styles/" mapping="/static/styles/**"/>

方法2(建议):在web.xml中使用默认的servlet,专门用来处理静态资源请求:比较实在

<!-- 使用默认servlet处理静态资源请求 --> 
<!--后缀名为css/gif/jps/png/js的静态资源不拦截-->
<servlet-mapping>
 	<servlet-name>default</servlet-name>
 	<url-pattern>*.css</url-pattern>
 	<url-pattern>*.js</url-pattern>
 	<url-pattern>*.png</url-pattern>
 	<url-pattern>*.gif</url-pattern>
 	<url-pattern>*.jpg</url-pattern>	
</servlet-mapping>

这就基本解决了!!!

  • 1
    点赞
  • 1
    评论
  • 7
    收藏
  • 打赏
    打赏
  • 扫一扫,分享海报

评论 1 您还未登录,请先 登录 后发表或查看评论
©️2022 CSDN 皮肤主题:深蓝海洋 设计师:CSDN官方博客 返回首页

打赏作者

努力的Java开发者

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值