java复习之tomcat配置详解

来源:互联网 发布:linux中less v - 编辑:程序博客网 时间:2024/06/11 04:26

tomcat

由来

Tomcat最初是由Sun的构架师詹姆斯·邓肯·戴维森开发的。后来他帮助将其变为开源项目,并由Sun贡献给Apache软件基金会。
由于大部分开源项目O'Reilly都会出一本相关的书,并且将其封面设计成某个动物的素描,因此他希望将此项目以一个动物的名字命名。因为他希望这种动物能够自己照顾自己,最终,他将其命名为Tomcat(英语公猫或其他雄性猫科动物)。而O'Reilly出版的介绍Tomcat的书籍(ISBN 0-596-00318-8)[1的封面也被设计成了一个公猫的形象。而Tomcat的Logo兼吉祥物也被设计成了一只公猫。目前Tomcat最新版本为7.0.34

用途

Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应对HTML 页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。
  这里的诀窍是,当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。
在程序使用中,最优的处理就是apche处理html页面服务,tomcat专门用于处理jsp, servlet类

下载

Tomcat可从www.apache.org网站下载




在跳出页面的左侧



选择相对于适合你的版本,一般我会选择zip形式,解压即可

目录解析

在解压文件后,进入tomcat后可以看见如下目录结构




bin为了便于记忆,解释下bin这个缩写的含义:bin一般来讲是机器代码,汇编语言编译后的结果。在就是说在bin文件里面,tomcat放了一些可执行文件以及一些批处理程序。

conf:config的缩写,字面上来讲就是配置的意思,也就是说这个文件夹里面我们放了tomcat的一些xml配置文件

lib:tomcat使用到的一些库

logs:运行后的日志文件就存放在这里

temp:临时目录

webapps:以后我们的应用需要部署到这个文件下面,用户就能访问到了

work:编译文件会放在此处


配置环境变量

由于tomcat需要是用java编写的,你首先需要配置jdk环境,然后配置tomcat环境



配置原因


tomcat启动

在bin文件中你可以看到两个文件,一个名为startup.bat,另一个为startup.sh,如果你的系统是xp或者win7的话,启动前者,如果是linux,启动后者
在tomcat启动后,如果你的屏幕是一闪而过的,那就说明你的环境变量配置有问题,如果成功,会启动tomcat。




验证

输入:http://localhost:8080,如果服务器跳出如下页面,说明tomcat正确配置了




注意下面显示页面的下面语句:$CATALINA_HOME/webapps/ROOT/index.html,其实tomcat打开的就是这句语句制定的html文件

使用telnet了解tomcat协议

请求语句:
GET /index.html HTTP/1.1
Host:localhost

HEAD /index.html HTTP/1.1
Host:localhost
Connection:Keep-Aliver



足以最后一句话出现时间是等待数秒后次才出现,也就是说tomcat是默认持续连接的。从代码角度来说其实和下列代码的含义是一样的。
HEAD /index.html HTTP/1.1
Host:localhost
Connection:Keep-Aliver
顺带提一下,需要断开,写成Connection:Close

配置web项目

当你在用eclipse或者myeclipse时创建好web项目后,你需要设置tomcat,使tomcat与项目相串联

1、打开C:\Program Files\apache-tomcat-6.0.36\conf下的server.xml
2、在server.xml中输入如下代码:


3、path后面填写的是你的web项目名称,docBase制定的是你的项目路径的WebRoot文件路径,通俗讲就是path是告诉服务器上下         文路劲,docBase指的的是当前文件所在的硬盘的位置,前者是逻辑路劲,或者是物理路径,其实就是一个映射的过程,当要           path时,服务器就从docBase那去找,对于java来说,麻烦的是当我们修改了java内容的时候,必须重新启动服务器,                           realoadable=“true”, 这句函数就是解决该问题的,它让服务器发现当我们修改了内容后,服务器会做相应改动,当然这个只是在       大部分情况下,有些小范围的内容修改,我们还是需要重新启动tomcat


提一下web项目文件下的webRoot文件



在web—inf文件里面有个classes文件,这个文件的话是存放我们编译好的class文件,这是根据j2ee规范好的
在web—inf文件里面有个web.xml,叫做部署描述符,这个文件使我们整个web项目部署的核心。

在myeclipse中集成tomcat

1)  MyEclipse -> Windows -> Preferences -> Java -> Installed JREs
 
         检查是否为空   如果为空则手动添加机器安装的一个JDK
 
2)找到MyEclipse -> Windows -> Preferences -> MyEclipse -> Servers -> Tomcat 6.x     
         Tomcat server 为Enable ;
         Tomcat home directory:D:\Tomcat 6.0;(tomcat安装路径)
         Tomcat base directory:D:\Tomcat 6.0
         Tomcat temp directory:D:\Tomcat 6.0\temp;
 
3)MyEclipse -> Windows -> Preferences -> MyEclipse -> Servers -> Tomcat 6.x ->JDK  
   
         设置为默认的 或者自己安装的JDK
 
4) MyEclipse -> Windows -> Preferences -> MyEclipse -> Servers -> Tomcat 6.x  
->  Launch  
      
         设置tomcat launch mode 为 Run mode