配置好框架后,资源文件如CSS样式、图片image、JS加载不了的解决方案

今天,前端的同学把JSP页面发给我后,叫我集成SSM框架,哐哐哐,把配置文件写好后,运行,duang!
资源文件都加载不进来

右键查看源代码,随便点击一个资源文件的链接,404!
这里写图片描述

资源文件加载不了!!

慌了好久,找到了几种解决方案:

  • 修改 web.xml 文件,不让SpringMVC框架拦截所有,只拦截 .do的请求。
    <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>*.do</url-pattern>
    </servlet-mapping>
  • 修改SpringMVC配置文件,让它知道哪些是资源文件,不进行拦截
<mvc:annotation-driven />
<mvc:default-servlet-handler /> 
<mvc:resources location="/js/" mapping="/js/**"/>
<mvc:resources location="/css/" mapping="/css/**"/>
<mvc:resources location="/img/" mapping="/img/**"/>
<mvc:resources location="/fonts/" mapping="/fonts/**"/>
<mvc:resources location="/ajax/" mapping="/ajax/**"/>
  • 在 web.xml 中增加对静态资源的处理
<servlet-mapping>    
2     <servlet-name>default</servlet-name>    
3     <url-pattern>*.js</url-pattern>    
4     <url-pattern>*.css</url-pattern>    
5     <url-pattern>/assets/*"</url-pattern>    
6     <url-pattern>/images/*</url-pattern>    
7 </servlet-mapping>

最后,可能需要注意一下导入的 jar 包 和 配置文件中命名空间的版本是否一致
这里写图片描述

猜你喜欢

转载自blog.csdn.net/MOESECSDN/article/details/80421502