tomcat servlet 之间版本关系Word文件下载.docx
- 文档编号:17013566
- 上传时间:2022-11-27
- 格式:DOCX
- 页数:11
- 大小:52.37KB
tomcat servlet 之间版本关系Word文件下载.docx
《tomcat servlet 之间版本关系Word文件下载.docx》由会员分享,可在线阅读,更多相关《tomcat servlet 之间版本关系Word文件下载.docx(11页珍藏版)》请在冰豆网上搜索。
∙独立的Servlet容器:
默认模式。
Tomcat是内置在Web服务器中的一部分,是指使用基于Java的Web服务器的情形。
然而大多数的Web服务器并非基于Java,所以Tomcat又发展了其他两种工作模式以与非基于Java的Web服务器结合。
∙进程内的Servlet容器:
Tomcat作为进程内的Servlet容器时,Servlet容器是作为Web服务器的插件和Java容器的实现。
Web服务器插件在内部地址空间打开一个JVM(JavaVirtualMachine)使Java容器得以在内部运行。
∙进程外的Servlet容器:
Tomcat作为进程外的Servlet容器时,Servlet容器运行于Web服务器之外的地址空间,并且作为Web服务器的插件和Java容器的实现的结合。
Tomcat的组织结构
Tomcat是一个基于组件的服务器,它的构成组件都是可配置的,其中最外层的组件是CatalinaServlet容器,其他的组件按照一定的格式要求配置在这个顶层容器中。
Tomcat各组件将Tomcat分为5层,即Server层、Service层、Engine层、Host层和Context层,处于顶层的是CatalinaServlet容器,它是组件的核心,各层之间通过数据管道PipeLine交互。
Tomcat的各个组件是在<
TOMCAT_HOME>
\conf\server.xml文件中配置的,Tomcat服务器默认情况下对各种组件都有默认的实现,下面是一个简单而典型的server.xml文件:
<
Server>
顶层类元素:
可包含多个Service。
<
Service>
可包含一个Engine,多个Connector。
Connector/>
连接器类元素:
代表通信接口。
Engine>
容器类元素:
为特定的Service组件处理所有客户请求,可包含多个Host。
Host>
为特定的虚拟主机处理所有客户请求,可包含多个Context。
Context>
为特定的Web应用处理所有客户请求。
/Context>
/Host>
/Engine>
/Service>
/Server>
以上的类XML的代码就是server.xml文件的基本组成结构,一个元素代表一个组件。
下面分别介绍这些组件。
1、不能处理客户请求或生成响应的组件:
∙Server组件:
Server组件对应<
元素,它是配置文件的最顶层元素,代表一个服务器。
一个配置文件中只能有一个<
元素。
∙Service组件:
Service组件是一些Connector组件的集合,它本身不是一个容器,所以在这里不能定义日志等组件。
一个Service组件中只能有一个Engine组件,可以包含多个Connector组件。
∙Connector组件:
Connector组件表示一个接口,通过这个接口接收客户的请求,然户发送给其他的容器组件,最后再把服务器的响应结果传递给客户。
2、能够处理客户请求或生成响应的组件(容器类元素):
在Tomcat中只有3个组件具备这一功能,并且有嵌套关系:
Context。
∙Engine组件:
其下可以包含多个Host组件,它为特定的Service组件处理所有客户请求。
∙Host组件:
代表一个虚拟主机,一个虚拟主机中可以包含多个Web应用(Context组件)。
∙Context组件:
代表一个Web应用。
总结:
以下是Tomcat各个组件的层次结构关系。
JavaWeb应用与Context元素
在SUN的JavaServlet规范中,对JavaWeb应用的定义是:
JavaWeb应用是由一些Servlet、HTML页面、Java类、JSP页面和一些其他的资源构成的。
它可以在各种实现了Servlet规范的各种厂商的Web应用容器中运行。
Tomcat就是这样一个实现了Servlet规范的Servlet/JSP容器。
一个JavaWeb应用的构成:
一个JavaWeb应用在Tomcat中与一个Context元素对应,Servlet容器为每个运行的JavaWeb应用创建唯一的ServletContext对象,该对象被同一个Web应用中的所有组件所共享,也就是说一个Context元素定义了一个JavaWeb应用,它们是一一对应的关系。
客户每次提出请求时指定要访问的资源,如果客户没有指定具体资源,Tomcat使用默认的资源响应客户,显示文件夹中的资源列表或者提示错误。
假设有3个Web应用,分别为HelloWorld、Counter和TableList,它们对应的主页URL分别如下:
HelloWorld:
http:
//localhost1:
8080/HelloWorld/index.html
Counter:
80/Counter/index.jsp
TableList:
//localhost2:
8086/TableList/index.jsp
3个用户分别访问上述3个地址,则Tomcat服务器各个组件响应用户请求的过程如图所示,其中每个Context容器对应唯一的JavaWeb应用。
Tomcat的安装
Tomcat安装手册
Tomcat的配置
1、了解目录结构成功安装运行Tomcat之后,需要对Tomcat进行个性化的设置。
包括虚拟机、站点参数和用户验证等方面的Tomcat配置。
下面是Tomcat的目录结构:
详细说明:
目录
用途
\bin
存放启动和关闭Tomcat的脚本文件
\common\lib
存放Tomcat服务器及所有Web应用都可访问的JAR文件
\conf
存放Tomcat服务器的各种配置文件,包括server.xml、web.xml、catalina.policy等
\logs
存放Tomcat的日志文件
\server\lib
存放Tomcat服务器可以访问的JAR文件
\server\webapps
存放Tomcat自带的两个Web应用:
admin和manager,用来管理Tomcat的Web服务
\shared\lib
存放所有Web应用都可以访问的JAR文件
\temp
存放Tomcat运行时的临时文件
\webapps
Web应用的发布目录,把Web应用文件放入该目录下就可以通过Tomcat服务器来访问
\work
存放JSP经过Tomcat编译后生成的Servlet
2、重要配置文件
在Tomcat目录中,比较重要的配置文件有\conf下的tomcat-users.xml、server.xml以及\webapps中应用程序目录下的web.xml。
∙tomcat-users.xml:
Tomcat采用基于角色的访问控制模型管理用户对系统的使用,安全性比较高,其角色和对应用户都保存在其中。
∙server.xml:
Tomcat服务器是由一些可配置的组件构成,在server.xml文件中可以对这些组件进行配置,每个Tomcat组件和server.xml文件是一一对应的。
∙web.xml:
按照Servlet规范定义的Web应用发布描述符文件,是完全独立于Tomcat容器的Web应用配置文件。
3、主要配置
实际使用中,需要配置Tomcat服务器以及Web应用,这是通过结合手工编辑XML文件和平台配置实现的,主要分为两部分:
控制配置和管理配置。
控制配置可以配置Tomcat服务器以及Web应用;
管理配置可以在不重启Tomcat服务器的情况下,方便地发布、启动、停止或卸载Web应用。
在Tomcat6以前的版本中,分别通过控制平台和管理平台对Tomcat实施控制配置和管理配置,这两个平台都可以通过在浏览器地址栏中输入URL的方式进行登录。
但由于Tomcat6.0.14没有提供控制平台包,所以要通过修改conf子目录下的server.xml来进行控制配置,管理配置可以通过Tomcat自带的管理平台来实现,该平台位于Tomcat安装目录\server\webapps\manager下。
4、Tomcat配置详解
Tomcat配置详解
Tomcat中的日志服务
1.Tomcat日志概述(针对Tomcat5.5以前版本)
Tomcat日志信息分为两类:
一是运行中的日志,它主要记录运行的一些信息,尤其是一些异常错误日志信息;
二是访问日志信息,它记录访问的时间,IP,访问的资料等相关信息。
2.Tomcat日志配置
2.1访问日志的配置
默认tomcat不记录访问日志,如下方法可以使tomcat记录访问日志:
通过修改server.xml,可以将日志服务添加进组件中。
具体操作如下:
在server.xml里的<
host>
标签下加上
ValveclassName="
org.apache.catalina.valves.AccessLogValve"
directory="
logs"
prefix="
localhost_access_log."
suffix="
.txt"
pattern="
common"
resolveHosts="
false"
/>
就可以生成日志了。
下面详细解释一下主要参数
参数
解释
className
官方文档上说明了,想配置访问日志这就必须得写成这样。
directory
这是日志文件放置的目录,在tomcat下面有个logs文件夹,那里面是专门放置日志文件的,当然也可以自行修改
prefix
这个是日志文件的名称前缀
suffix
这个是日志文件的名称后缀
pattern
最主要的参数,这个参数的内容比较丰富,稍候探讨
resolveHosts
如果这个值是true,tomcat会将这个服务器IP地址通过DNS转换为主机名,如果是false,就直接写服务器IP地址
rotatable
默认为true,默认的设置使得tomcat生成的文件命为prefix(前缀)+.+时间(一般是按天算)+.+suffix(后缀)。
使用这个需要谨慎,因为如果将其设置为false的话,tomcat会忽略时间,不会新生成文件,最后导致文件超级大
condition
fileDateFormat
设置时间格式,针对日志文件起作用
2.2配置tomcat写出更详细的日志
关于pattern。
通过对pattern项的修改,可以改变日志输出的内容。
pattern可以设置成pattern="
,或pattern="
combined"
两种方式,以控制日志里面的格式。
common和combined只是集成了一些显示方式,事实上是可以自行设置
格式的。
如下表举例:
%a
记录访问者IP
%b
发送信息的字节数
%h
服务器名称
%H
访问者使用的协议
这里暂且不一一列举了。
关于更详细的内容,请参考
Tomcat日志参数详解
3.修改Tomcat运行日志的等级
3.1日志类型与级别
Tomcat日志分为下面5类:
catalina、localhost、manager、admin、host-manager
每类日志的级别分为如下7种:
SEVERE(highestvalue)>
WARNING>
INFO>
CONFIG>
FINE>
FINER>
FINEST(lowestvalue)
3.2日志级别的设定方法
通过修改conf/logging.properties中的内容,设定某类日志的级别。
示例:
设置catalina日志的级别为:
FINE
1catalina.org.apache.juli.FileHandler?
.level=FINE
禁用catalina日志的输出:
.level=OFF
输出catalina所有的日志消息均输出:
.level=ALL
4.使用log4j记录应用程序日志或系统日志
可以通过使用Log4j输出详细系统日志信息,快速诊断启动故障,此举可弥补tomcat启动异常时输出的错误信息不足的问题,使用commons-logging和log4j搭配输出详尽的日志信息。
具体参考
在Tomcat中使用log4j记录日志
5.在Tomcat5.5以后版本中的日志功能
Tomcat5.5在内部代码中使用commons-logging,使得开发者可以选择一种适合其需要的日志配置,比如javalogging,log4j等等。
commons-logging使Tomcat可以分层次地记录日志,而不依赖于具体的日志实现。
对于Tomcat5.5,最重要的之前版本中用于生成本地日志的<
Logger>
标签被取消了,取而代之,默认的配置将使用javalogging。
如果开发者想要收集详细的内部Tomcatlogging信息(记录Tomcat引擎之内发生的信息),则需要设置具体的日志实现,如javalogging,log4j等等。
具体实现参照
Tomcat中设置javalogging与log4j
附录
Tomcat版本历史
∙ApacheTomcat7.x
是目前的开发焦点。
它在汲取了Tomcat6.0.x优点的基础上,实现了对于Servlet3.0、JSP2.2和EL2.2等特性的支持。
除此以外的改进列表如下:
1Web应用内存溢出侦测和预防
2增强了管理程序和服务器管理程序的安全性
3一般CSRF保护
4支持web应用中的外部内容的直接引用
5重构(connectors,lifecycle)及很多核心代码的全面梳理
∙ApacheTomcat6.x
在汲取Tomcat5.5.x优点的基础上,实现了Servlet2.5和JSP2.1等特性的支持。
1内存使用优化
2更大的IO容量
3重构聚类
∙ApacheTomcat5.x
ApacheTomcat5.5.x和ApacheTomcat5.0.x对于Servlet和JSP的支持是一样的。
大量底层代码里的重大修改,带来性能的提升、稳定性的提升及整体成本。
详请参照ApacheTomcat5.5的更新日志。
ApacheTomcat5.0.x在ApacheTomcat4.1的基础上做了很多改动,包括:
1性能优化和减少垃圾回收动作
2重构程序部署,通过一个可选的独立部署程序,允许在将一个web应用放进产品前验证和编译它
3基于JMX的服务器全面监视及web程序管理
4提高Taglibs的支撑能力,包括改进的数据池和tag插件
5改进平台集成性,包括Windows和Unix
6基于JMX的嵌入
7增强的安全管理支撑
8集成session集群
9文档扩充
各个版本支持的规范对照:
ApacheTomcat版本
Servlet/JSP_规范版本
7.0.0
3.0/2.2
6.0.18
2.5/2.1
5.5.25
2.4/2.0
4.1.36
2.3/1.2
3.3.2
2.2/1.1
Attachments
∙picture1.PNG
(8.3KB)-addedby
zhanglei09
2months
ago.
∙picture2.PNG
(7.4KB)-addedby
∙picture3.PNG
(13.5KB)-addedby
∙picture4.PNG
(2.5KB)-addedby
Downloadinotherformats:
∙PlainText
∙PDFArticle
∙PDFBook
∙PrintableHTML
Poweredby
Trac0.11.7
By
EdgewallSoftware.
加入开发者邮件列表
给我们发信
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- tomcat servlet 之间版本关系 之间 版本 关系