第一章 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容器的特性,并被一些企业用于商业用途。 java安装完整教程
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的各个组件是<TOMCAT_HOME>\l文件中配置的,TOMCAT服务器默认情况下对各种组件都有默认的实现,下面通过分析l文件来理解TOMCAT的各个组件是如何组织的。
<Server> 顶层元素,代表一个服务器
<Service> 顶层元素,是Connector的集合,只有一个Engine
<Connectior/> 连接器类元素,代表通信接口
<Engine> 容器类元素,为特定的Service组件处理所有客户请求,可包含多个Host
<Host> 为特定的虚拟主机处理所有客户请求
<Context> 为特定的WEB应用处理所有客户请求
</Context>
</Host>
</Engine>
</Service>
</Server>
TOMCAT中真正处理客户请求与生成响应的三个组件是Engine 、Host、 Context
2、Tomcat5.0包含三个主要的部分
包括:
* Catalina - 一个符合Servlet API规范2.3的Servlet Container
* Jasper - 一个符合JSP规范1.2的JSP编译器和运行环境
* Webapps - Tomcat中包含的一些例子和用于测试的web例程,以及相关文档。
3、应用服务器(如WebLogic)与Tomcat有何区别。
应用服务器提供更多的J2EE特征,如EJB,JMS,JAAS等,同时也支持Jsp和Servlet。而Tomcat则功能没有那么强大,它不提供EJB等支持。但如果与JBoss(一个开源的应用服务器)集成到一块,则可以实现J2EE的全部功能。
4、Tomcat 目录的结构
(1)Tomcat的安装
其实对于完全由Java写成的Tomcat,Win32版本和Linux版本没有多大区别,比如Linux版本,在Solaris下也没有问题。这里,主要以Win32版本作为示例。
注意:在安装使用Tomcat之前,先安装JDK,最好是Sun的JDK 1 .2 以上版。
(2)Tomcat的目录结构
首先,下载jakarta-tomcat.zip包,解压缩到一个目录下,如:“c:\tomcat”。这时,会得到如下的Tomcat的目录结构:
- - - jakarta - tomcat
| - - - bin Tomcat执行脚本目录
| - - - Common 放置一些通用类(如JDBC的驱动程序等)
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论