Tomcat 分析
  1. Tomcat 目录结构
    Tomcat 和 Http 协议(3)_Tomcat 分析_java
    bin:该目录下存放的是可执行文件,有 startup.bat 和 shutdown.bat 文件,startup.bat 用来启动 Tomcat,但需要先配置JAVA_HOME 和 shutdawn.bat 用来停止 Tomcat;
    conf:这是一个非常非常重要的目录,这个目录下有两个最为重要的文件:
    ① server.xml:配置整个服务器信息。例如修改端口号,下面会详细介绍这个文件;
    ② web.xml:部署描述符文件,这个文件中注册了很多 MIME 类型,即文档类型。这些 MIME 类型是客户端与服务器之间说明文档类型的,如用户请求一个 html 网页,那么服务器还会告诉客户端浏览器响应的文档是 text/html 类型的,这就是一个 MIME类型。客户端浏览器通过这个 MIME 类型就知道如何处理它了。当然是在浏览器中显示这个 html 文件了。但如果服务器响应的是一个 exe 文件,那么浏览器就不可能显示它,而是应该弹出下载窗口才对。MIME 就是用来说明文档的内容是什么类型的!
    lib:Tomcat 的类库,里面是一大堆 jar 文件。如果需要添加 Tomcat 依赖的 jar 文件,可以把它放到这个目录中,当然也可以把项目依赖的 jar 文件放到这个目录中,这个目录中的 jar 所有项目都可以共享之;
    logs:这个目录中都是日志文件,记录了 Tomcat 启动和关闭的信息,如果启动 Tomcat 时有错误,那么异常也会记录在日志文件中。
    temp:存放 Tomcat 的临时文件,这个目录下的东西可以在停止 Tomcat 后删除!
    webapps:存放 web 项目的目录,其中每个文件夹都是一个项目;如果这个目录下已经存在了目录,那么都是 tomcat 自带的项目。其中 ROOT 是一个特殊的项目,在地址栏中没有给出项目目录时,对应的就是 ROOT 项目。
    work:运行时生成的文件,最终运行的文件都在这里。通过 webapps 中的项目生成的!可以把这个目录下的内容删除,再次运行时会生再次生成 work 目录。当客户端用户访问一个 JSP 文件时,Tomcat 会通过 JSP 生成 Java 文件,然后再编译 Java 文件生成 class 文件,生成的 java 和 class 文件都会存放到这个目录下。
    LICENSE:许可证。
    NOTICE:说明文件。
    你应该已经发现,访问 ROOT 项目时无需给出项目名,其实 localhost 是一个主机名,每个主机都会对应一个项目空间,localhost 对应的就是 Tomcat 目录下的 webapps,每个项目空间都可以有一个名为 ROOT 项目,这个 ROOT 项目被访问时无需给出项目名称。

  2. Tomcat 结构之重点
    (1)bin、conf、webapps、work
    (2)bin 目录中东西我们只关心启动和停止 Tomcat,现在大家也应该掌握了!
    (3)webapps 目录下存放的是项目,每个文件夹都对应一个项目,而且在访问项目时,其中包含了项目名,而项目名往往都对应项目目录名。这个也应该可以掌握了!还有就是 JavaEE Web 项目的目录结构,这个必须必须背下来!
    (4)work:这个东西有点小难度,现在只需要知道它存放的文件是通过 webapps 目录下的项目在运行时产生的,最终运行的都是 work 目录下的文件。这个目录下的东西可以删除,然后再次运行时还会产生!

如有错误,欢迎指正!