如何解决SpringMVC不能访问html页面

 更新时间:2023年09月04日 14:06:15   作者:完美明天cxp  
这篇文章主要介绍了如何解决SpringMVC不能访问html页面问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

SpringMVC不能访问html页面

1.一般我们在启动项目时,会有一个欢迎页,如下:

<welcome-file-list>
	<welcome-file>index.html</welcome-file>
	<welcome-file>index.jsp</welcome-file>
	<welcome-file>index.htm</welcome-file>
</welcome-file-list>

但我们在SpringMVC中的控制器(org.springframework.web.servlet.DispatcherServlet)中默认是jsp页面,我们默认配置:

<servlet>
	<servlet-name>springDispatcherServlet</servlet-name>
	<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
	<init-param>
		<param-name>contextConfigLocation</param-name>
		<param-value>classpath:spring-mvc.xml</param-value>
	</init-param>
	<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
	<servlet-name>springDispatcherServlet</servlet-name>
	<url-pattern>/</url-pattern>
</servlet-mapping>

无论你把/,换成什么样;这样/,这样.do都不行,因为默认的配置DispatcherServlet屏蔽了html页面的访问,你需要加上如下:

<servlet-mapping>
	<servlet-name>default</servlet-name>
	<url-pattern>*.html</url-pattern>
</servlet-mapping>

多加上一个就能解决了。

SpringMVC不能访问html但是可以访问jsp

问题描述 

在web目录下定义了一个hello.html文件,发布到tomcat上面之后,可以访问同级的index.jsp但是访问不到*.html类型文件

这是之前的项目的web.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">
    <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>
</web-app>

解决方法

在上面的 标签下面在加上下列配置就行了

 <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.html</url-pattern>
    </servlet-mapping>

这是现在的项目web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">
    <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>
    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.html</url-pattern>
    </servlet-mapping>
</web-app>

原因:

我们在SpringMVC中的控制器(org.springframework.web.servlet.DispatcherServlet)中默认是jsp页面,默认的配置DispatcherServlet屏蔽了html页面的访问。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Java实现自定义语言和表达式解析的解释器模式

    Java实现自定义语言和表达式解析的解释器模式

    Java解释器设计模式通过解析自定义语言和表达式,实现对复杂逻辑的处理,提高程序可扩展性和灵活性。它将语法解析和执行过程分离,通过抽象语法树和解释器实现对语言和表达式的解析和求值,避免了硬编码和复杂的条件判断,提高了程序的可读性和可维护性
    2023-04-04
  • Java如何设置系统参数和运行参数

    Java如何设置系统参数和运行参数

    这篇文章主要介绍了Java如何设置系统参数和运行参数,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-04-04
  • Java9版本新特性同一个Jar支持多JDK版本运行

    Java9版本新特性同一个Jar支持多JDK版本运行

    这篇文章主要为大家介绍了Java9新版本的特性之同一个Jar支持多JDK版本运行的示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步
    2022-03-03
  • idea上提交项目到gitee 最后出现 Push rejected的问题处理方法

    idea上提交项目到gitee 最后出现 Push rejected的问题处理方法

    这篇文章主要介绍了idea上面提交项目到gitee 最后出现 Push rejected的问题处理方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定参考借鉴价值,需要的朋友可以参考下
    2020-09-09
  • Java基础之数组模拟循环队列

    Java基础之数组模拟循环队列

    这篇文章主要介绍了Java基础之数组模拟循环队列,文中有非常详细的代码示例,对正在学习java基础的小伙伴们也有非常好的帮助,需要的朋友可以参考下
    2021-04-04
  • Java+AI驱动实现PDF文件数据提取与解析

    Java+AI驱动实现PDF文件数据提取与解析

    本文将和大家分享一套基于 AI 的体检报告智能评估方案,详细介绍从 PDF 上传、内容提取到 AI 分析、数据存储的全流程自动化实现方法,感兴趣的可以了解下
    2025-08-08
  • java批量修改文件名的实现方法

    java批量修改文件名的实现方法

    这篇文章主要介绍了 java批量修改文件名的实现方法的相关资料,实现批量修改文件下的所有文件的文件名,具有一定的参考价值,需要的朋友可以参考下
    2017-07-07
  • Java Optional优雅处理空值的最佳实践

    Java Optional优雅处理空值的最佳实践

    你是否经常遇到 NullPointerException,是否厌倦了写大量的 null 检查,今天,让我们一起探索 Java Optional,这个让空值处理更优雅,更安全的工具吧
    2025-06-06
  • Java并发中线程封闭知识点详解

    Java并发中线程封闭知识点详解

    在本篇文章里我们给大家整理了关于Java并发中线程封闭的知识点总结内容,需要的朋友们学习参考下。
    2019-07-07
  • 深入讲解SpringBoot Actuator是什么

    深入讲解SpringBoot Actuator是什么

    Spring Boot Actuator提供了生产上经常用到的功能(如健康检查,审计,指标收集,HTTP跟踪等),帮助我们监控和管理Spring Boot应用程序。这些功能都可以通过JMX或HTTP端点访问
    2023-01-01

最新评论