一、关于web.xml中的welcome-file-list
<welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file> </welcome-file-list>
这个配置用于配置项目的初始页面。
输入http://localhost:8080/xpb,自动进入http://localhost:8080/xpnb/index.jsp
tomcat中的web.xml是通用的,如果不设置,那么就会默认是同tomcat的web.xml,如果你设置了,那么当然是项目下的web.xml中的设置优先权更高一点。
加载顺序是
1、tomcat conf目录下;
2、项目目录下的;
tomcat config目录下的为服务器全局作用域,一般用来配置全局设置、数据源等,而项目目录下的为局部作用域。
也可以配置action
<welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.jsp</welcome-file> <welcome-file>index.action</welcome-file> </welcome-file-list>
welcome-file-list的工作原理是,按照welcome-file的.list一个一个去检查是否web目录下面存在这个文件,如果存在,继续下面的工作(或者跳转到index.html页面,或者配置有struts的,会直接struts的过滤工作).如上例,先去webcontent(这里是Eclipse的工程目录根目录)下是否真的存在index.html这个文件,如果不存在去找是否存在index.jsp这个文件,以此类推。
还要说的是welcome-file不一定是html或者jsp等文件,也可以是直接访问一个action。就像我上面配置的一样,但要注意的是,一定要在webcontent下面建立一个index.action的空文件,然后使用struts配置去跳转,不然web找不到index.action这个文件,会报404错误,原因就是我之前说的那样。
如果配置了servlet的url-pattern是/*,那么访问localhost:8080/会匹配到该servlet上,而不是匹配welcome-file-list;如果url-pattern是/(该servlet即为默认servlet),如果其他匹配模式都没有匹配到,则会匹配welcome-file-list。
链接:https://www.jianshu.com/p/0d4dc96a841f