完美解决SpringMVC中无法访问静态资源问题

完美解决SpringMVC中无法访问静态资源问题

原文在此

大致问题是 在web.xml中

    <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:springmvc-servlet.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>

配置会把所有的请求都会进行拦截,交给spring去处理。而spring所有请求的URL都是在controller中使用注解@RequestMapping标明,所以这样的情况下访问静态资源是访问不到的。

由于/会将所有请求都交于spring去处理

解决办法

将所有静态资源放在webapp下的statics下(不要放在WEB-INF下),在springmvc的配置文件中设置如下

<mvc:resources mapping="/statics/**" location="/statics/" />

这样静态资源都可以访问了

猜你喜欢

转载自blog.csdn.net/weixin_41016986/article/details/82585921
今日推荐