众所周知Tomcat有三种方式加载程序,
1.配置在Tomcat/conf/server.xml中
2.配置在Tomcat/conf/Catalina/localhost/下
3.将程序放置在Tomcat/webapps下
为了进行测试,新建一个War包,并创建一个监听器,这个监听器打印ContextPath
将程序复制为12个War包,以便测试启动时加载的顺序。
将12个War放置在Tomcat/webapps目录下,
在server.xml中增加如下内容:
并在Tomcat/conf/Catalina/localhost目录下增加如下xml,
E.xml
F.xml
g.xml
h.xml
启动Tomcat,查看加载顺序如下,
可以看到
加载顺序
server.xml > Tomcat/conf/Catalina/localhost > webapps
并且
server.xml
z-->a-->A-->Z
Tomcat/conf/Catalina/localhost
A-->Z-->a-->z
webapps
A-->Z-->a-->z
1.配置在Tomcat/conf/server.xml中
2.配置在Tomcat/conf/Catalina/localhost/下
3.将程序放置在Tomcat/webapps下
为了进行测试,新建一个War包,并创建一个监听器,这个监听器打印ContextPath
- public void contextInitialized(ServletContextEvent arg0) {
- System.out.println(arg0.getServletContext().getContextPath());
- }
将12个War放置在Tomcat/webapps目录下,
在server.xml中增加如下内容:
- <Context docBase="C:\apache-tomcat-7.0.47\webapps\I.war" path="/I"></Context>
- <Context docBase="C:\apache-tomcat-7.0.47\webapps\J.war" path="/J"></Context>
- <Context docBase="C:\apache-tomcat-7.0.47\webapps\k.war" path="/k"></Context>
- <Context docBase="C:\apache-tomcat-7.0.47\webapps\l.war" path="/l"></Context>
E.xml
F.xml
g.xml
h.xml
启动Tomcat,查看加载顺序如下,
可以看到
加载顺序
server.xml > Tomcat/conf/Catalina/localhost > webapps
并且
server.xml
z-->a-->A-->Z
Tomcat/conf/Catalina/localhost
A-->Z-->a-->z
webapps
A-->Z-->a-->z