Jakarta-Tomcat 简明中文版用户指南第一部分

本文档提供关于Tomcat的基础信息.主要内容如下:
Tomcat二进制版本安装
与Tomcat相关的脚本的主要内容
与server.xml相关的主要内容,Tomcat的主要配置文件
如何设置Tomcat与宿主web服务器一起工作的说明
如何应用Tomcat配置一个现实中的web站点
希望此文档足以使新用户可以开始使用Tomcat.如找不到某方面的内容请(按以下
顺序)
查找Tomcat faq
查找Tomcat包清单
向Tomcat用户邮件列表发出问题
如此疑问的答案不存在,我们鼓励把对疑问的解答放入Tomcat faq或此文档.如对
此文档有意见或建议,请发送到Tomcat的邮件列表.

Getting Started
Tomcat是一个带有jsp环境的servlet容器.servlet容器是一个根据用户的行为可
以管理和激活servlet的运行时的shell.
粗略地可以将servlet容器分为如下几类:

独立的servlet容器
内置有web服务器的一部分.指当使用基于Java的web服务器的情形,例如servlet
容器是JavaWebServer的一个部分. 独立的servlet容器是Tomcat的默认模式.
大多数的web服务器并非基于Java,因此,我们可以得出如下两种容器的模式.


进程内的servlet容器
servlet容器作为web服务器的插件和Java容器的实现.Web服务器插件在内部地址
空间打开一个JVM(java virtual machine)使Java容器得以在内部运行.如有某个需要调
用servlet的请求,,插件将取得对此请求的控制并将他传递(使用JNI)给Java容器.进程
内容器对于多线程,单进程的服务器非常合适并且提供很好的运行速度,但伸缩性有所不
足.


进程外的servlet容器
servlet容器运行于web服务器之外的地址空间且作为web服务器的插件和Java容
器的实现的结合.web服务器插件和Java容器 JVM使用IPC机制(通常是TCP/IP)进行通讯.
当一个调用servlet的请求到达时,插件将取得对此请求的控制并将其传递(使用IPC等)
给Java容器,进程外容器的反应时间或进程外容器引擎不如进程内容器,但进程外容器引
擎在许多其他可比的范围内更好(伸缩性,稳定性等).
Tomcat既可作为独立的容器(主要是用于开发与调试)又可作为对现有服务器的附
加(当前支持Apache,IIS和Netscape服务器).即任何时候配置Tomcat你都必须决定如何
应用他,如选择第二或第三种模式,你还需要安装一个web服务器接口.
Tomcat与Jserv有何区别?Tomcat是Jserv吗?
这是个常见的误解.Jserv是Servlet API2.0兼容并与Apache一起使用的容器
.Tomcat是一个完全重写的并与Servlet API2.2和JSP1.1兼容的容器.
Tomcat使用了一些为Jserv而写的代码,特别是Jserv的Apache接口,但这是唯一的
相同之处.
怎样安装Tomcat的二进制版本?
非常简单,只需:
下载 zip/tar.gz 任何压缩文件,从
http://jakarta.apche.org/download/binindex.html处.
解压缩此文件到某目录(如:foo).将会生成一子目录,名为”tomcat”.
转换到”tomcat”目录设置一新的环境变量(TOMCAT_HOME)指向你安装的tomcat
的目录
WIN32平台,键入:
“set TOMCAT_HOME=foo omcat”
Unix平台:
如是bash/sh环境, 键入:”TOMCAT_HOME=foo/tomcat;export TOMCAT_HOME”
如是tcsh环境, 键入:”setenv TOMCAT_HOME foo/tomcat”
设置环境变量JAVA_HOME指向你JDK的目录,然后添加JAVA解释器到你的PATH环境
变量.
好了!现在可以运行TOMCAT并作为一个独立的Servlet容器(模式一)
启动与关闭Tomcat
使用”bin”目录中的脚本启动与关闭Tomcat.
启动:
uinx:bin/startup.sh
win32:binstartup
关闭:
unix:bin/shutdown.sh
win32:binshutdown
Tomcat目录结构
假设你已将Tomcat解压,你已得到下列目录结构:
目录名--描述
bin
包含启动/关闭脚本
conf
包含不同的配置文件,
包括 server.xml(Tomcat的主要配置文件)和为不同的Tomcat配置的web应用设置
缺省值的文件web.xml
doc
包含各种Tomcat文档
lib
包含Tomcat使用的jar文件.unix平台此目录下的任何文件都被加到Tomcat的
classpath中
logs
Tomcat摆放日志文件的地方
src
ServletAPI源文件.先别高兴,这些只有些必须在Servlet容器内实现的空接口和
抽象类
webapps
包含web项目示例
此外你可以Tomcat会创建如下目录:
work
Tomcat自动生成,放置Tomcat运行时的临时文件(如编译后的JSP文件).如在
Tomcat运行时删除此目录.JSP页面将不能运行.
classes
你可以创建此目录来添加一些附加的类到类路径中.任何你加到此目录中的类都
可在Tomcat的类路径中找到自身.
Tomcat的脚本
Tomcat是一个Java程序,因此在设置好几个环境变量后即可用命令行的方式运行.
然而设置Tomcat使用的每个环境变量和如下的命令行参数乏味且易错.因此,Tomcat开发
组提供了一些脚本使启动和关闭Tomcat变得轻松.
注意:这些脚本仅仅是个便利的方法去启动和关闭Tomcat.你可修改他们来定制
CLASSPATH,环境变量如PATH,LD_LIBRARY_PATH,等等,只要是生成一个正确的命令行即可
.
这些脚本是什么呢?下表列出对一般用户最重要的脚本.
tomcat
主脚本.设置合适的环境变量,包括CLASSPATH,TOMCAT_HOME和JAVA_HOME和用适合
的命令行参数启动Tomcat

startup

在后台启动Tomcat.”tomcat start”命令的替换方式

shutdown

关闭Tomcat.”tomcat stop”命令的替换方式


对用户最重要的脚本是tomcat(tomcat.bat/tomcat.sh).其他Tomcat相关的脚本
作为一个简单的面向单任务的指向Tomcat脚本(设置不同的命令行参数等)的入口.


仔细考察tomcat.bat/tomcat.sh,它按以下步骤运行:

在Unix下的步骤:

如未指定,推测 TOMCAT_HOME

如未指定,推测 JAVA_HOME

设置CLASS_PATH包含:

1/classes目录(如果存在)

2/lib的一切内容

3/lib/tools.jar(此jar文件包含工具javac,我们需要javac处理
jsp文件.


运行带有设定Java环境变量的命令行参数的java命令,调入tomcat.home,和
org.apache.tomcat.startup.Tomcat 作为启始类.同时也传递命令行参数到
org.apache.tomcat.startup.Tomcat ,例如:


执行start/stop/run 等的操作

此Tomcat进程使用指向server.xml的路径,

例如server.xml放置于etc/server_1.xml并且用户意图在后台启动apache,键 入
如下命令行:

bin/tomcat.sh start ?Cf /etc/server_1.xml

在Win32下的步骤:(略)


由此可见,win32版的tomcat.bat与Unix版的几乎一致.尤其在它不推测
TOMCAT_HOME和JAVA_HOME的值,并且不将所有的jar文件放入类路径中.


Tomcat的配置文件

Tomcat的配置基于两个配置文件:

1.server.xml - Tomcat的全局配置文件

2.web.xml - 在Tomcat中配置不同的关系环境


这一部分将讲述如何使用这些文件.我们不会包含web.xml的内部机制,这些内部
机制深入到了Servlet API的细节,因此,我们将讨论涵盖servler.xml内容及web.xml在
Tomcat关系环境中的用法.


server.xml

server.xml是Tomcat的主配置文件.完成两个目标:

1 提供Tomcat组件的初始配置.

2 说明Tomcat的结构,含义,使得Tomcat通过实例化组件完成起动及构建自身, 如
在server.xml所指定的

下表描述server.xml种的重要元素:[@more@]

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/9650775/viewspace-921980/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/9650775/viewspace-921980/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
资源简介 Jakarta commons docs API CHM 格式带索引和全文搜索,方便携带和查询。 Jakarta commons 包含很多可复用的通用组件。 commons-attributes 让开发者可以使用 C# 或 .net 样式的 attributes, 是一种运行时的 api, 有点类似 doclet commons-beanutils 提供对 Java 反射和自省API的包装 commons-betwixt 这个组件提供一个XML自省(introspection)机制用来把Java Bean映射到XML文档 commons-chain 提供实现组织复杂的处理流程的“责任链模式” commons-cli 命令行参数解析 , 由 Werken, Avalon 和 Optz 组成 commons-codec 包含一些通用的编码解码算法。包括一些语音编码器, Hex, Base64, 以及URL encoder. commons-collections 扩充了 java.util.collection 接口 commons-compress 操作压缩文件的 API commons-configuration 可以从xml、properties、JNDI、JDBC、System properties、Applet parameters和Servlet parameters等读取信息 commons-daemon 可以帮你实现将一个普通的 Java 应用变成系统的一个后台服务 commons-dbcp 数据连接池服务 commons-dbutils JDBC 辅助类 commons-digester XML 文件到 Java 对象的映射机制 commons-discovery 提供工具来定位资源 (包括类) ,通过使用各种模式来映射服务/引用名称和资源名称。 commons-el 提供在JSP2.0规范中定义的EL表达式的解释器. commons-email 提供一组用于发送Email的API,它基于Java Mail API基础之上并进行了简化 commons-exec 处理外部进程的执行或管理外部环境 commons-fileupload 使得在你可以在应用和Servlet中容易的加入强大和高性能的文件上传能力 commons-io 用来帮助进行IO功能开发.它包含三个主要的领域:Utility classes-提供一些静态方法来完成公共任务.Filters-提供文件过滤器的各种实现.Streams-提供实用的Stream,reader与 writer实现 commons-jelly 能够把XML转换成可执行代码,所以Jelly是一个基于XML与Java的脚本和处理引擎 commons-jexl 是一个表达式语言,通过借鉴来自于Velocity的经验扩展了JSTL定义的表达式语言 commons-jxpath 定义了一个简单的XPath表达式语言的解析器.JXPath应用XPath表达式来操纵各种类型的对象包括:JavaBeans,Maps,Servlet contexts,DOM等 commons-lang commons的基础包 commons-launcher 提供多平台的 Java 程序加载 commons-logging 提供日志的实现 commons-math 是一个轻量的,自包含的数学和统计组件,解决了许多非常通用但没有及时出现在Java标准语言中的实践问题. commons-modeler 创建符合 JMX 规范的 MBeans 机制 commons-net 网络和协议实现的集合 commons-pool 提供了通用对象池接口,一个用于创建模块化对象池的工具包,以及通常的对象池实 commons-primitives java 简单类型使用的扩展 commons-proxy 创建动态代理的库 commons-scxml commons-transaction 处理多级事务的集合 commons-validator 提供了一个简单的,可扩展的框架来在一个XML文件中定义校验器 (校验方法)和校验规则 commons-vfs 虚拟文件系统 httpcomponents-client 和 http 协议客户端一起协作的框架 httpcomponents-core jakarta-oro 一套文本处理工具,能提供perl5.0兼容的正则表达式,AWK-like正则表达式, glob表达式。还提供替换,分割,文件名过虑等功能 jakarta-regexp 是一个100%纯java正则式处理包,是Jonathan Locke捐给Apache软件基金会的
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值