如何解決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文件,發(fā)布到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>
這是現(xiàn)在的項目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頁面的訪問。
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Java concurrency之Condition條件_動力節(jié)點Java學院整理
Condition的作用是對鎖進行更精確的控制。下面通過本文給大家分享Java concurrency之Condition條件的相關(guān)知識,非常不錯,具有參考借鑒價值,需要的朋友參考下吧2017-06-06SpringBoot2.X Kotlin系列之數(shù)據(jù)校驗和異常處理詳解
這篇文章主要介紹了SpringBoot 2.X Kotlin系列之數(shù)據(jù)校驗和異常處理詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-04-04