1.Tomcat的结构概述
Tomcat服务器是由一系列可配置的组件构成,其核心组件是Catalina Servlet容器,它是所有其他Tomcat组件的顶层容器。Tomcat的组件可以在<catalina_home>/conf rver.xml文件中进行配置,每个Tomcat的组件在server.xml文件中对应一种配置元素.一下代码以XML的形式展示了各种Tomcat组件之间的关系:
<server>
<service>
<connector>
<engine>
<host>
<context>
</context>
</host>
</engine>
< rvice>
< rver>
在以上XML代码中,每个元素都代表一种Tomcat组件.这些元素分四类:
1.顶层类元素 顶层类元素包括<server>元素和<service>元素,他们位于整个配置文件的顶层.
2.连接器类元素 连接器类元素代表了介于客户与服务之间的通信接口,负责将客户的请求发送给服务器,并将服务器的响应结果传递给客户.
3.容器类元素 容器类元素代表处理客户请求并生成响应结果的组件,有3种容器类元素,它们是Engine,Host和Context. Engine组件为特定的Service组件处理所有客户请求,Host组件为特定的虚拟主机处理所有客户请求,Context组件为特定的Web应用处理所有客户请求.
4.嵌套类元素 嵌套类元素代表了可以加入到容器中的组件,如<logger>元素、<valve>元素和<realm>元素,这些元素将在后面的做介绍。
下面,再对一些基本的Tomcat元素进行介绍。如果要了解这些元素,可以参考附录A(Server.xml文件)。
<server>元素
代表了整个Catalina Servlet容器,它是Tomcat实例的顶层元素.可包含一个或多个<service>元素.
<service>元素
包含一个<engine>元素,以及一个或多个<connector>元素,这些<connector>元素共享同一个<engine>元素.
<connector>元素
代表和客户程序实际交互的组件,他负责接收客户请求,以及向客户返回响应结果.
<engine>元素
每个<service>元素只能包含一个<engine>元素. <engine>元素处理在同一个<service>中所有<connector>元素接收到的客户请求.
<host>元素
一个<engine>元素中可以包含多个<host>元素.每个<host>元素定义了一个虚拟主机,它可以包含一个或多个Web应用.
<context>元素
每个<context>元素代表了运行虚拟主机上的但个Web应用.一个<host>元素中可以包含多个<context>元素.
2. Tomcat的服务器配置文件server.xml
Tomcat服务器是由一系列可配置的组件构成,Tomcat的组件可以在<catalina_home>\conf\server.xml文件中进行配置,每个Tomcat组件和server.xml文件中的一种配置元素对应.下面就一些常用的元素做了介绍.关于server.xml的更多信息,可以参考Tomcat的文档:
<catalina_home>/webapps/tomcat-docs/config/index.html
下面是一个server.xml文件的样例:
-----------------------------------------------------------------------------------
<server port="8005" shutdown="SHUTDOWN" debug="0">
<service name="Catalina">
<connector port="8080" maxthreads="150" minsparethreads="25" maxsparethreads="75" enablelookups="false" redirectport="8443" acceptcount="100" debug="0" connectiontimeout="20000" disableuploadtimeout="true">
<engine name="Catalina" defaulthost="localhost" debug="0">
<logger classname="org.apache.catalina.logger.FileLogger" prefix="catalina_log." suffix=".txt" timestamp="true">
<realm classname="org.apache.catalina.realm.MemoryRealm">
<host name="localhost" debug="0" appbase="webapps" unpackwars="true" autodeploy="true">
<valve classname="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log." suffix=".txt" pattern="common" resolvehosts="false">
<logger classname="org.apache.catalina.logger.FileLogger" directory="logs" prefix="localhost_log." suffix=".txt" timestamp="true">
<context path="/sample" docbase="sample" debug="0" reloadable="true">
<resource name="jdbc/BookDB" auth="Container" type="javax.sql.DataSource">
<resourceparams name="jdbc/BookDB">
<parameter>
<name>factory</name>
<vlaue>org.apache.commons.dbcp.BasicDataSourceFactory< alue>
</parameter>
<parameter>
<name>maxActive</name>
<value>100< alue>
</parameter>
<parameter>
<name>maxIdle</name>
<value>30< alue>
</parameter>
<parameter>
<name>maxWait</name>
<value>10000< alue>
</parameter>
<parameter>
<name>username</name>
<value>dbuser< alue>
</parameter>
<parameter>
<name>password</name>
<value>1234< alue>
</parameter>
<parameter>
<name>driverClassName</name>
<value>com.mysql.jdbc.Driver< alue>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:mysql://localhost:3306/BookDB?autoReconnect=true< alue>
</parameter>
</resourceparams>
</context>
</host>
</engine>
< rvice>
<service name="Apache">
<connector prot="8009" enablelookups="false" redirectport"8443"="" debug="0" protocol="AJP/1.3">
<engine name="Apache" defaulthost="localhost" debug="0">
<logger classname="org.apache.catalina.logger.FileLogger" prefix="apache_log." suffix=".txt" timestamp="true">
<realm classname="org.apache.catalina.realm.MemoryRealm">
</engine>
< rvice>
< rver>
-----------------------------------
下面,对基本的Tomcat元素逐一介绍。
1. 配置Server元素
<server>元素代表了整个Catalina Servler容器,它是Tomcat实例的顶层元素,由org.apache.catalina.Server接口来定义.<server>元素中可以包含一个或者多个<service>元素,但<server>元素不能作为任何其他元素的子元素.范例代码中定义的<server>元素如下:
<server port="8005" shutdown="SHUTDOWN" debug="0">
<server>属性含义:
--------------------------------------------------------------
className :指定实现org.apache.catalina.Server接口的类,默认值为org.apache.catalina.core.StandardServer.
port :指定Tomcat服务器监听shutdown命令的端口.终止Tomcat服务运行时,必须在Tomcat服务器所在的机器上发出Shutdown命令.该属性是必须设定的.
shutdown :指定终止Tomcat服务器运行时,发给Tomcat服务器的shutdown监听端口的字符串.该属性是必须设定的.
2. 配置Service元素
<service>元素由org.apache.catalina.Service接口定义,它把韩一个<engine>元素,以及一个或多个<connector>元素,这些<connector>元素共享一个<engine>元素. 例如,在范例文件中配置了两个<service>元素
<service name="Catalina">
name="Apache">
第一个<service>处理所有直接由Tomcat服务器接收的Web客户请求,第二个<service>处理由Apache服务器转发过来的Web客户请求.
<service <service="">属性含义:
分享到:
相关推荐
### Tomcat简介及工作原理 #### 一、Tomcat概述 Tomcat是由Apache软件基金会下属的Jakarta项目开发的一个开源的轻量级Web应用服务器,主要用于部署和运行基于Java的Web应用程序。它作为Servlet容器之一,能够支持...
Tomcat是一款广泛使用的开源Web应用服务器,主要作为Servlet和JSP容器。它是Apache软件基金会Jakarta项目的一个核心组件,被JavaWorld杂志评为2001年最具创新的Java产品,并得到了Sun Microsystems的官方推荐。...
#### 一、Tomcat简介与重要性 Tomcat作为Apache软件基金会(Apache Software Foundation)Jakarta项目的核心组件之一,由Apache、Sun及其他多个机构和个人共同开发完成。得益于Sun公司的积极参与和支持,Tomcat能够...
1. Tomcat简介: Tomcat是符合Java Servlet和JavaServer Pages(JSP)规范的应用服务器,它是基于Java的开源软件,主要用于处理动态网页内容。Tomcat不仅免费,而且易于配置和管理,因此在小型项目或开发环境中特别...
**一、Tomcat简介** Tomcat是按照Java Servlet和JavaServer Pages(JSP)规范运行的,它是轻量级应用服务器,能够处理HTTP协议。Tomcat与Apache HTTP Server不同,后者是一个完整的Web服务器,而Tomcat专注于Servlet...
1. **Tomcat简介**:Tomcat作为一个轻量级的Web服务器,其设计目标主要是为了提供一个小型、高效的Java Web应用服务器,用于开发和部署简单的Web应用程序。Tomcat的核心功能包括处理HTTP请求,解析HTTP协议,以及...
本项目提供的"BBS+tomcat"是一个基于Java的简单BBS论坛系统,利用Tomcat作为应用服务器运行。 **一、BBS系统核心功能** 1. **用户注册与登录**:BBS系统允许新用户注册,注册时通常需要填写用户名、密码、电子邮件...
1. **Apache Tomcat简介** Apache Tomcat 是Apache软件基金会的一个项目,它是一个轻量级的Java应用服务器,主要用于部署和运行Java Web应用程序,如JSP和Servlet。Tomcat以其小巧、高效和开源的特点赢得了开发者们...
1. **Tomcat简介**:Tomcat是一个开源的、轻量级的Java Servlet容器,用于运行Java Web应用程序,特别是基于Java EE的JSP和Servlet。它由Apache软件基金会维护,是许多Web开发者的首选服务器。 2. **安装与环境配置...
1. **Tomcat简介**: Tomcat是由Apache Software Foundation维护的开源项目,它是Java Servlet和JavaServer Pages技术的标准实现。Tomcat服务器是一个轻量级应用服务器,特别适合小型到中型的Java Web应用。 2. **...
1. **Tomcat简介** Tomcat是Apache软件基金会Jakarta项目的一部分,遵循Apache Software License 2.0发布。它的主要功能是解析并执行Java Servlet和JavaServer Pages(JSP),提供了一个运行Java Web应用程序的平台...
1. **Tomcat简介**:Apache Tomcat是一个轻量级的Java EE Web应用服务器,主要负责执行Java Servlet和JavaServer Pages(JSP)技术。它的设计目标是简单且快速,使得开发者能够便捷地搭建和运行Java Web应用。 2. *...
**一、Tomcat简介** Tomcat是由Apache Software Foundation开发的轻量级Web应用服务器,它主要处理Java Servlet和JSP技术。与其他全功能的Java应用服务器如JBoss或WebLogic相比,Tomcat的体积小、性能高,适合小型到...
1. **Tomcat简介**:Tomcat是由Apache软件基金会开发的轻量级Web服务器,它主要负责处理HTTP协议。作为Servlet和JSP容器,Tomcat能够运行基于Java技术的Web应用程序。 2. **版本7.0**:Tomcat 7.0是2010年发布的,...
Apache Tomcat 简介** Apache Tomcat 是一个轻量级的Web服务器和应用服务器,由Apache软件基金会开发并维护。它实现了Java EE的Web部分,特别是Servlet和JSP规范。Tomcat以其高效、稳定和易于管理的特性,成为了...
1. **Tomcat简介** Tomcat由Apache软件基金会开发,是Java EE(现在称为Jakarta EE)的一部分,主要负责Servlet和JSP的执行。作为轻量级应用服务器,Tomcat相比其他如JBoss、WebLogic等重量级服务器,具有更小的...
1. **Tomcat简介** - Tomcat是一个轻量级的应用服务器,主要处理Java Web应用,包括Servlet和JSP。 - 它遵循Java EE的Web容器规范,但不包含完整的应用服务器功能,如EJB(Enterprise JavaBeans)支持。 2. **...
1. **Apache Tomcat简介** Apache Tomcat是Apache软件基金会的一个项目,它是一个轻量级的Java应用服务器,实现了Java EE的Web容器部分,特别是Servlet和JSP规范。Tomcat以其高效、稳定性和易于管理而受到开发者...
一、Tomcat简介 Tomcat是基于Java的Web应用服务器,支持Servlet和JSP规范,是Java EE(现在称为Jakarta EE)的一部分。它轻量级、易于安装和管理,因此在许多小型项目和开发环境中受到青睐。 二、Tomcat安装与配置 ...