`

javaweb项目如何将起始页配置为动态地址

阅读更多

在javaweb项目中,我们可以通过配置web.xml中的<welcome-file-list>设置起始页,如下:

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

 通过此配置,在访问url:http://localhost:8080/项目名  时,会直接进入index.html或index.jsp页面中。

 

但是此种方法只能将起始页配置成静态页面,若是配置成动态url,如:

<welcome-file-list>
	<welcome-file>user/login.shtml</welcome-file>
</welcome-file-list>

在访问时,会报404错误。

 

这是由于tomcat的逻辑流程:

    针对welcome-file中的配置,tomcat会判断根目录文件是否存在,若不存在,直接返回404。

 

解决办法:在webapp目录下建立user/login.shtml,用于欺骗tomcat。tomcat判断根目录文件存在,继续流程,之后交由spring处理,成功配置起始页为动态url。

 

web.xml中spring配置如下:

	<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:spring-mvc.xml</param-value>
		</init-param>
		<load-on-startup>1</load-on-startup>
		<async-supported>true</async-supported>
	</servlet>
	<servlet-mapping>
		<servlet-name>SpringMVC</servlet-name>
		<url-pattern>*.shtml</url-pattern>
	</servlet-mapping>

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics