Tomcat 是一款优秀的JSP/Servlet容器,最初由SUN开发,后来被贡献给了Apache社区。Tomcat现在的版本已到6。Tomcat6实现了Servlet2.5和JSP2.1规范。针对web开发和web服务,提供了更多的新功能。本文使用的版本为Tomcat6.0.14,要求的JDK版本至少为1.5。Tomcat不同版本间的配置有差异,如果读者使用的是其他版本,请仔细阅读Tomat官方文档,或者到网上寻找相关的资料。

Tomcat有安装版和解压缩版两种版本,安装版除了提供一个图形界面的后台和Windows服务外,其他的和解压缩版没有区别。我使用压缩版。

第一步,我们需要下载Tomcat,下载地址是http://tomcat.apache.org。下载完成后,解压缩,我的Tomcat位于D:\softer\tomcat下,以下用$TOMCAT表示这个目录。

一、配置环境变量(如果您用的是myeclipse开发的话不用配置环境变量的,直接在myeclipse里面配置即可):

下面是环境变量的具体设置
变量名                            变量值
TOMCAT_HOME    =    Tomcat的根目录 如: D:\tomcat

CATALINA_BASE    =    Tomcat的根目录

CATALINA_HOME    =    Tomcat的根目录

变量名的解析:
catalina.home和catalina.base这两个属性仅在你需要安装多个Tomcat实例而不想安装多个软件备份的时候使用,这样能节省磁盘空间。
以Tomcat6.0为例,其Tomcat目录结构如下:

bin (运行脚本)
conf (配置文件)
lib (核心库文件)
logs (日志目录)
temp (临时目录)
webapps (自动装载的应用程序的目录)
work (JVM临时文件目录[java.io.tmpdir])
让我们看看这些目录那些可以被多个Tomcat实例公用,其实只有 bin 和 lib 目录,其它目录conf、logs、temp、webapps和work每个Tomcat实例必须拥有其自己独立的备份。
明白了上述关系就容易理解catalina.home和catalina.base的用途了。
catalina.home指向公用信息的位置,就是bin和lib的父目录。
catalina.base指向每个Tomcat目录私有信息的位置,就是conf、logs、temp、webapps和work的父目录。
仅运行一个Tomcat实例时,这两个属性指向的位置是相同的

简单的说,CATALINA_HOME是Tomcat的安装目录,CATALINA_BASE是Tomcat的工作目录。如果我们想要运行Tomcat的 多个实例,但是不想安装多个Tomcat软件副本。那么我们可以配置多个工作 目录,每个运行实例独占一个工作目录,但是共享同一个安装目录。

如果我们希望再运行另一个Tomcat实例,那么我们可以建立一个目录,把conf、logs、temp、webapps、work拷贝 到该目录下,然后让CATALINA_BASE指向该目录即可。

TOMCAT_HOME是为了配置环境变量方便起见

 

classpath:
    .;%TOMCAT_HOME%\lib\servlet-api.jar;%TOMCAT_HOME%\lib\jsp-api.jar;
" . " 意思是当前路径 一般装好jdk 配置好path以后 在classpath上 加上 " . "就可以编译java文件了
%TOMCAT_HOME%\lib\下的两个jar包是关键api 没有他们你写的servlet就没有办法编译 所以说一定要的。

$TOMCAT\bin下面是Tomcat用到的脚本程序,扩展名为.bat是用于windows平台的批处理文件,扩展名为.sh的是用于linux或Unix平台的脚本。我们通常用到的是startup.bat、shutdown.bat脚本。我们也可以用catalina.bat start启动Tomcat,用catalina.bat stop关闭Tomcat,事实上,startup.bat正是catalina.bat start的别名,同理shutdownup.bat 是catalina.bat stop的别名。

Catalina.bat才是操作Tomcat的核心脚本,可以通过catalina –help查看catalina可以使用的参数及其说明。双击startup.bat启动tomcat,启动Tomcat后,我们输入如下网址:http://localhost:8080/,如果看到Tomcat的页面,证明安装成功,如果不成功,请检查是否设置了正确的JAVA_HOME,JDK的版本是否太低。如果还是不成功,可能是端口冲突,下面将会介绍如何修改端口号。

 二、在myeclipse里面配置tomcat6

菜单上面:“window”-->"Preferences"-->

输入"tomcat"-->选择对应tomcat的位置,勾选“enable” 点击OK或APPly即可
服务器-->tomcat6.x-->start 即可启动

控制台显示启动时间

在浏览器里面输入地址即可看到一个小猫

三、TOMCAT其他配置

     $TOMCAT\conf下是Tomcat的配置文件,最重要的配置文件是Servler.xml。Server.xml可以重新指定,方式是catalina.bat –config,比如指定config.xml取代Servler.xml,命令如下:

catalina.bat run –config conf\config.xml

Server.xml中可以配置部署应用需要的所有信息,从Tomcat5开始,应用配置可以从Server.xml独立出来,这也是Tomcat现在所推荐的配置方式,带来的一个好处,显而易见,更容易维护了。另一个好处,是在Servler.xml的修改,只能通过重启Tomcat才能发生作用,分拆后,修改完成,可以不用重启Tomcat就发生作用。本文就采用这种配置方式。下面进行详细的介绍。

(1) 端口的修改

Server元素下可以有多个Service,端口就是在Service元素下配置的。Connector元素的配置如下:

<Connnector port=”8080” protocal=”HTTP/1.1” connectionTimeout=”20000” redirectPort=”8443”/>

其中protocal制定了该端口侦听的协议类型,HTTP/1.1表示侦听的是客户的HTTP请求,即我们通过浏览器访问需要输入的端口,当端口号是80的时候,可以不用在浏览器地址栏输入端口号,这就是我们访问很多网站不需要指定端口的原因。有时候protocal没有指定,这时候默认的是HTTP/1.1。注意这个端口必须是闲置的。

Service下面可以配置多个端口,用于侦听不同的协议。

(2) 虚拟主机

Service元素下必须有一个Engine元素,Engine有一个名称,和一个默认的虚拟主机名,形式如下:

<Engine name="Catalina" defaultHost="localhost">

虚拟主机就配置在Engine元素下。形式如下:

<Host name="localhost"  appBase="webapps"

unpackWARs="true" autoDeploy="true"

xmlValidation="false" xmlNamespaceAware="false">

</Host>

name是虚拟主机的名字,appBase是虚拟主机指向的目录,Tomcat启动时,会自动加载appBase下的应用。unpackWARs表示是否自动解压缩appBase下已打成WAR包的应用,autoDeploy表示在服务器运行的时候,将一个应用放入appBase下,是否自动部署。

Tomcat应用部署

应用可以配置在Server.xml中,这里介绍分拆后的配法。

应用的独立配置文件应该配置在路径$TOMCAT\conf\engineName\hostName\下,其中engineName是应用所在的Engine的名字,对于本例而言是Catalina,hostName是应用所在的虚拟主机的名字,本例为localhost。配置文件的名字是这样约定的:如果访问路径就在虚拟主机下,那么名字为空,如 .xml,其他情况下,文件名就是访问路径,不过需要用#替换路径中的/。本例中访问路径为/struts,相应的文件名是struts.xml,内容如下:

<Context docBase="C:/WAP/struts" reloadable="true"/>

其中docBase指定应用所在的目录,如果是相对目录,对应的就是虚拟主机下appBase的目录,也可以是绝对目录,这个时候应用在什么地方都可以。reloadable表示是否支持热部署,比如class更新,如果reloadable为true,应用会重新部署。注意:在分拆后,Context的path属性将不再起作用,这是Tomcat6和之前的版本不同的地方。

以上配置完成,我们就可以访问应用了,访问地址是http://localhost:8080/struts

下面介绍资源的配置

这里指的主要是数据源的配置。Tomcat6使用的是DBCP数据源,它的配置方式如下:

<Resource name="jdbc/test" auth="Application" type="javax.sql.DataSource" maxActive="100"

maxIdle="30" maxWait="10000" username="sa" password="123456" driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"

url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=test"/>

它可以直接配置在Context元素下,这时数据源就只有他所属的应用能够访问。如果需要所有的应用能够访问,可以配置在$TOMCAT\conf\context.xml中,直接配置下根元素下即可。这个文件在启动tomcat的时候,所有的应用都会加载。

如果需要节省资源,共享同一个数据源,可以配置在Server.xml的GlobalNamingResources节点下,在应用中可以通过别名访问,提供别名的方式是在应用所在的元素下添加如下的子元素,例:

<ResouceLink name=”jdbc/test2” global=”jdbc/test” type=”javax.sql.DataSource”/>

name就是别名,global是在GlobalNamingResources所定义的资源

Tomcat免安装配置2的更多相关文章

  1. Tomcat免安装配置

    大家都知道tomcat吧!因为Tomcat 技术先进.性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器,也是运行Servlet和JS ...

  2. Tomcat的免安装配置

    Tomcat免安装配置 以下配置说明全部针对免安装版本 基于tomcat的安装目录和运行目录是可以不同的,本文都会进行说明 首先简单介绍一下tomcat的目录结构,一般情况下,tomcat包括以下子目 ...

  3. 如何在Eclipse中配置Tomcat(免安装版)

    如何在Eclipse中配置Tomcat(免安装版) 2013-10-09 23:19wgelgrsh | 分类:JAVA相关 | 浏览642次 分享到:   2013-10-10 17:10提问者采纳 ...

  4. MySQL 5.7.9 免安装配置

    MySQL 5.7.9 免安装配置 环境:win10 64位 mysql版本:mysql-5.7.9-winx64.zip (http://dev.mysql.com/downloads/mysql/ ...

  5. Mysql在windows下的免安装配置步骤和重新安装的步骤

    windows下mysql免安装配置 1. 下载mysql免安装压缩包 下载mysql-5.6.22-winx64.zip 解压到本地D:\mysql-5.6.22-winx64 2. 修改配置文件 ...

  6. oracle客户端免安装配置、64位机器PL/SQL和VS自带的IIS连接问题

    一.oracle客户端免安装配置 1.到oracle官网下载Oracle InstantClient, 把它解压缩到单独目录,例如C:\OracleClient,2. 添加环境变量 ORACLE_HO ...

  7. centos tomcat/resin安装配置 卸载系统自带的java tomcat安装配置 安装JDK resin安装配置 第二十八节课

    centos  tomcat/resin安装配置  卸载系统自带的java  tomcat安装配置  安装JDK   resin安装配置    第二十八节课 tomcat和java都不需要编译 tom ...

  8. mysql5.6免安装配置(菜鸟版)

    mysql5.6免安装配置 MySQL5.6.13安装步骤(Windows7 32位) 1. 下载MySQL Community Server 5.6.13 2. 解压MySQL压缩包 将以下载的My ...

  9. win7中下mysql-5.6.22免安装配置

    windows下mysql免安装配置 1. 下载mysql免安装压缩包 下载mysql-5.6.22-winx64.zip 解压到本地D:\mysql-5.6.22-winx64 2. 修改配置文件 ...

随机推荐

  1. js 的点击事件

    <button id="btn">click</button> var btn=document.getElementById('btn'); 第一种: b ...

  2. jQuery演示10种不同的切换图片列表动画效果

    经常用到的图片插件演示jQuery十种不同的切换图片列表动画效果 在线演示 下载地址 实例代码 <!DOCTYPE html> <html lang="en" c ...

  3. cssSlidy.js 响应式手机图片轮播

    cssSlidy是一款支持手机移动端的焦点图轮播插件,支持标题设置,滑动动画,间隔时间等. 在线实例 实例演示 使用方法 <div id="slidy-container"& ...

  4. Dynamics.js - 创建逼真的物理动画的 JS 库

    Dynamics.js 是一个用来创建物理动画 JavaScript 库.你只需要把dynamics.js引入你的页面,然后就可以激活任何 DOM 元素的 CSS 属性动画,也可以用户 SVG 属性. ...

  5. Node异步

    一 Node异步工作原理 Node.js 异步编程的直接体现就是回调,回调函数在完成任务后就会被调用,Node 使用了大量的回调函数,Node 所有 API 都支持回调函数. 二 同步代码示例 先建立 ...

  6. Urban Planning and Public Health - Reflection on Professor Webster's article in Urban Planning Forum

    1. General review. Professor Webster published this article in Urban Planning Forum, one of the top ...

  7. TextView显示颜色高亮的问题

    TextView textView = (TextView) findViewById( R.id.tv ); String text = "<font color=\"#d ...

  8. Android 4.4沉浸式状态栏的实现

    要实现Android 4.4上面的沉浸式状态栏要用到开源项目SystemBarTint(https://github.com/hexiaochun/SystemBarTint) public clas ...

  9. 图解六大UML类图关系

    在学习UML类图的过程中,UML类图关系是必须要掌握的问题,UML定义的关系主要有六种:依赖.类属.关联.实现.聚合和组合.下面对其定义和表示方法逐一说明. UML类图关系简介 依赖(Dependen ...

  10. WCF学习资料汇总

    微软官方讲解教程: 跟我一起从零开始学WCF系列课程 http://msdnwebcast.net/webcast/1/2692/ 构建WCF面向服务的应用程序系列课程 http://msdnwebc ...