springmvc的web.xml配置初始化页面

时间:2022-01-21 13:27:31
最近在自学springmvc,出现了一个问题,就是在启动项目访问的时候,必须的加上.jsp页面才访问的了,比如http://localhost:8080/SpringMVC/add.jsp.这样访问,很不好,我就想改成http://localhost:8080/SpringMVC这样的访问形式!
下面是我的web.xml配置。如何实现??

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <display-name>SpringMVC</display-name>
   <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
    <!-- <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file> 
     <welcome-file></welcome-file>  --> 
  </welcome-file-list> 
  <!-- <welcome-file-list>
<welcome-file>login.jsp</welcome-file>
</welcome-file-list> -->
  <context-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath*:config/beans.xml</param-value>    
  </context-param>
  
  <listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>
  <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*:config/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>
    <filter>  
    <filter-name>openSessionInViewFilter</filter-name>  
    <filter-class>org.springframework.orm.hibernate4.support.OpenSessionInViewFilter</filter-class>  
    <init-param>  
    <param-name>singleSession</param-name>  
    <param-value>true</param-value>  
    </init-param>  
    </filter>  
    <filter-mapping>
      <filter-name>openSessionInViewFilter</filter-name>
      <url-pattern>/*</url-pattern>
    </filter-mapping>
</web-app>

8 个解决方案

#1


这样写,就可以了
<welcome-file-list>
    <welcome-file>add.jsp</welcome-file>
  </welcome-file-list> 

#2


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

把第一个welcome-file改成你想要访问的jsp页面,到时候直接http://localhost:8080/SpringMVC回车就行了

#3


Web.xml默认路径全删了。Web-inf下面的index.jsp也删了

#4


可以参考这里  https://xtuer.github.io/tags/Spring-Web/,查看 Web 项目框架 一节有具体配置,不过把 JSP 去了,使用 Freemarker

#5


/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <display-name>SpringMVC</display-name>
   <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
    <!-- <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file> 
     <welcome-file></welcome-file>  --> 
  </welcome-file-list> 
  <!-- <welcome-file-list>
这段是我写的,可能看的不是很清楚,其实我跟2楼一样,把其他的注释掉了,只留了 <welcome-file>index.jsp</welcome-file>但是依然没有效果,而且我的tomcat不能访问tomcat主页,这应该跟我的tomcat版本有关。因为项目启动无异常。

#6


welcome-list

#7


访问tomcat主页,只需要访问localhost:8080就可以了,你说的这个问题只需要修改一下welcome-file-list,把welcome-file改成add.jsp就可以了,但是一般不推荐这么做,因为这里是直接拿WEB-INF同级的jsp文件,似的在浏览器输入这个文件地址就能直接访问,会对系统造成安全问题,通常情况下都是把JSP放在WEB-INF下面,然后welcome-file写你的控制器跳转主页的路劲,就可以自动跳过去了

#8


谢谢,各位了,问题已经找到了,原来是我每次更改都不清除tomcat,clean下就可以了

#1


这样写,就可以了
<welcome-file-list>
    <welcome-file>add.jsp</welcome-file>
  </welcome-file-list> 

#2


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

把第一个welcome-file改成你想要访问的jsp页面,到时候直接http://localhost:8080/SpringMVC回车就行了

#3


Web.xml默认路径全删了。Web-inf下面的index.jsp也删了

#4


可以参考这里  https://xtuer.github.io/tags/Spring-Web/,查看 Web 项目框架 一节有具体配置,不过把 JSP 去了,使用 Freemarker

#5


/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <display-name>SpringMVC</display-name>
   <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
    <!-- <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file> 
     <welcome-file></welcome-file>  --> 
  </welcome-file-list> 
  <!-- <welcome-file-list>
这段是我写的,可能看的不是很清楚,其实我跟2楼一样,把其他的注释掉了,只留了 <welcome-file>index.jsp</welcome-file>但是依然没有效果,而且我的tomcat不能访问tomcat主页,这应该跟我的tomcat版本有关。因为项目启动无异常。

#6


welcome-list

#7


访问tomcat主页,只需要访问localhost:8080就可以了,你说的这个问题只需要修改一下welcome-file-list,把welcome-file改成add.jsp就可以了,但是一般不推荐这么做,因为这里是直接拿WEB-INF同级的jsp文件,似的在浏览器输入这个文件地址就能直接访问,会对系统造成安全问题,通常情况下都是把JSP放在WEB-INF下面,然后welcome-file写你的控制器跳转主页的路劲,就可以自动跳过去了

#8


谢谢,各位了,问题已经找到了,原来是我每次更改都不清除tomcat,clean下就可以了