【计算机论文全套栏目提醒】:网学会员,鉴于大家对计算机论文全套十分关注,论文会员在此为大家搜集整理了“Tomcat完整教程 - 计算机理论”一文,供大家参考学习!
第一章 Tomcat 概述 一、 Tomcat 简介 TOMCAT 是 APACHE JAKARTA 软 件 组 织 的 一 个 子 项 目 , TOMCAT 是 一 个 JSP/SERVLET 容器,它是在 SUN 公司的 JSWDK(JAVA SERVER WEB DEVELOPMENT KIT)基础上发展起来的一个 JSP 和 SERVLET 规范的标准实现,使用 TOMCAT 可以体验 JSP 和 SERVLET 的最新规范。
经过多年的发展,TOMCAT 不仅是 JSP 和 SERVLET 规范的 标准实现,而且具备了很多商业 JAVA SERVLET 容器的特性,并被一些企业用于商业用途。
1、Tomcat Tomcat 在严格意义上并不是一个真正的应用服务器,它只是一个可以支持运行 Serlvet/JSP的 Web 容器,不过 Tomcat 也扩展了一些应用服务器的功能,如 JNDI,数据库连接池,用户事务处理等等。
Tomcat 是一种具有 JSP 环境的 Servlet 容器。
Servlet 容器是代替用户管理和调用 Servlet 的运行时外壳。
1.1 SERVLET 容器 负责处理客户请求。
当客户请求来到时,SERVLET 容器获取请求,然后调用某个 SERVLET,并把 SERVLET 的执行结果返回给客户。
当客户请求某个资源时, SERVLET 容器使用 SERVLETREQUEST 对象把客户的请求信息封装起来,然后调用 JAVA SERVLET API 中定义的 SERVLET 的一些生命周期方法, 完成 SERVLET的执行,接着把 SERVLET 执行的要返回给客户的结果封装到 SERVLETRESPONSE 对象中,最后 SERVLET 容器把客户的请求发送给客户,完成为客户的一次服务过程。
1.2 TOMCAT 的工作模式1.2.1 独立的 SERVLET 容器 TOMCAT 的默认工作模式, 作为独立的 SERVLET 容器, 是内置在 WEB 服务器中的一部分,是指使用基于 JAVA 的 WEB 服务器的情形。
其他两种方式是 TOMCAT 与其他服务器集成的方式:1.2.2 进程内的 SERVLET 容器 SERVLET 容器作为 WEB 服务器的插件和 JAVA 容器的实现。
WEB 服务器的插件在内部地址空间打开一个 JVM(JAVA VIRTUAL MACHINE)使 JAVA 容器得以在内部运行。
如有某个需要调用 SERVLET 的请求,插件将取得对此请求的控制并将它传递(使用 JNI)给 JAVA 容器。
进程内的容器对于多线程、单进程的服务器非常适合,并且提供了很好的运行速度,只是伸缩性有所不足。
注意:JNI 是 JAVA NATIVE INTERFACE 的缩写,是 JAVA 本地调用接口,通过 JNI,JAVA程序可以和其他语言编写的本地程序进行通信。
1.2.3 进程外的 SERVLET 容器 SERVLET 容器运行于 WEB 服务器之外的地址空间,并且作为 WEB 服务器的插件和 JVM使用 IPC(如 TCP/IP)进行通信。
进程外容器的反应时间不如进程内的容器,但有较好的伸缩性、稳定性等性能。
IPC INTERPROCESS COMMUNICATION(进程间通信)的简写,它是实现进程间通信的一种技术。
1.3 TOMCAT 的组织结构 TOMCAT 是一个基于组件的服务器,它的构成组件都是可配置的,其中最外层的给件是CATALINA SERVLET 容器,其他的组件按照一定的格式要求配置在这个顶层容器中。
TOMCAT 的各个组件是ltTOMCAT_HOMEgtconfserver.xml 文件中配置的,TOMCAT 服务器默认情况下对各种组件都有默认的实现,下面通过分析 server.xml 文件来理解 TOMCAT 的各个组件是如何组织的。
ltServergt 顶层元素,代表一个服务器 ltServicegt 顶层元素,是 Connector 的集合,只有一个 Engine ltConnectior/gt 连接器类元素,代表通信接口 ltEnginegt 容器类元素,为特定的 Service 组件处理所有客户请求,可包含多个 Host ltHostgt 为特定的虚拟主机处理所有客户请求 ltContextgt 为特定的 WEB 应用处理所有客户请求 lt/Contextgt lt/Hostgt lt/Enginegt lt/Servicegt lt/Servergt TOMCAT 中真正处理客户请求与生成响应的三个组件是 Engine 、Host、 Context 2、Tomcat5.0 包含三个主要的部分 包括: Catalina - 一个符合 Servlet API 规范 2.3 的 Servlet Container Jasper - 一个符合 JSP 规范 1.2 的 JSP 编译器和运行环境 Webapps - Tomcat 中包含的一些例子和用于测试的