快速业务通道

Tomcat5启动流程与配置详解 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-18

Tomcat5启动流程与配置详解

时间:2011-03-11 51cto博客 zhangjunhd

1.Tomcat5.0 目录结构

Tomcat下有9个目录,分别是bin,common,conf,logs,server,shared,temp,webapps,work 目录,现在对每一目录做介绍。Tomcat根目录在tomcat中叫<CATALINA_HOME>。

-<CATALINA_HOME>/bin-

存放各种平台下启动和关闭Tomcat的脚本文件。startup.bat是windows下启动tomcat的文件,shutdown.bat是关闭tomcat的文件。

-<CATALINA_HOME>/common-

在common目录下的lib目录,存放Tomcat服务器和所有web应用都能访问的JAR。

-<CATALINA_HOME>/shared-

在shared目录下的lib目录,存放所有web应用能访问的,但Tomcat不能访问的JAR。

-<CATALINA_HOME>/server-

在server/webapps目录中,存放Tomcat自带的两个APP-admin和manager应用,使用来管理Tomcat-web服务用的。在server/lib目录中,存放tomcat服务器所需要的各web应用不能访问种jar。

-<CATALINA_HOME>/work –

Tomcat把各种由jsp生成的servlet文件放在这个目录下。

-<CATALINA_HOME>/temp –

临时活页夹,Tomcat运行时候存放临时文件用的。

-<CATALINA_HOME>/logs –

存放Tomcat的日志文件。

-<CATALINA_HOME>/conf –

Tomcat的各种配置文件,最重要的是 server.xml。(下文将详细介绍此文件)

-<CATALINA_HOME>/webapps-

web应用的发布目录,把 java开发的web站点或war文件放入这个目录下就可以通过tomcat服务器访问了。

2.Tomcat的启动

Tomcat的启动是从解析bat文件开始,bat文件最终调用org.apache.catalina.startup.Bootstrap开始类的加载。

2.1 TOMCAT自己的类载入器(ClassLoader)加载流程如下:

+---------------------------+

|     Bootstrap     |

|       |       |

|     System      |

|       |       |

|     Common      |

|     /     \   |

|   Catalina Shared   |

+---------------------------+

Tomcat5启动流程与配置详解(2)

时间:2011-03-11 51cto博客 zhangjunhd

其中:

-Bootstrap –

载入JVM自带的类和$JAVA_HOME/jre/lib/ext/*.jar。

- System -

①载入$CATALINA_HOME/bin/bootstrap.jar 初始化Tomcat,执行Main方法。

②$JAVA_HOME/lib/tools.jar Sun的工具类,包括编译Jsp为Servlet的工具类。

- Common -

这个目录下的类虽然对TOMCAT和所有的WEB APP都可见。但是Web App的类不应该放在这个目录下,所有未打包的Class都在$CATALINA_HOME/common/classes下,所有打包的jar都在$CATALINA_HOME/commons/endorsed和$CATALINA_HOME/common/lib下,默认情况会包含以下几个包:

①jndi.jar JNDI API接口,这个包仅在Java1.2时候装入,1.3以后的版本JDK已自动装入。

②naming-common.jar JNDI接口实现类,Tomcat用这些类在内存中使用Context。

③naming-resources.jar JNDI实现,Tomcat用它们定位Web App的静态资源。

④servlet.jar Servlet,Jsp API。

⑤xerces.jar XML解析器,特定的Web App可以在自己的/WEB-INF/lib 中覆盖。

- Catalina -

装入Tomcat实现所有接口的类,这些类对Web App是完全不可见的,所有未打包的类在$CATALINA_HOME/server/classes,所有jar包在$CATALINA_HOME/server/lib下。一般情况该ClassLoader将Load下面几个包:

①catalina.jar Servlet容器的Tomcat实现包。

②jakarta-regexp-X.Y.jar 正则表达式,请求过滤时使用。

③servlets-xxxxx.jar Servlet支持包。

④tomcat-coyote.jar Tomcat的Coyote连接实现包。

⑤tomcat-jk.jar Web Server绑定包,允许Tomcat绑定Apache等作为Web S

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号