MLDN
课程咨询[孔老师]QQ 1031143579孔老师QQ课程咨询留言 课程咨询[徐老师 ]QQ 945313230
徐老师QQ课程咨询留言
课程咨询[刘老师 ]QQ 514543793
刘老师QQ课程咨询留言
java培训
北京java培训
IT电子教育门户 高端JAVA培训 -=> 资源中心 -=> J2EE服务器 -=> Apache/Tomcat -=> 正文

Tomcat深入内部结构描述

 发布日期:2009-4-13 9:13:00 发布者:[IT电子教育门户]   评论:[]  浏览:

tomcat服务器是一种Servlet/jsp容器,更实质性的说是Servlet容器,因为jsp最终还是被编译成servlet来执行的。而对于servlet来说,其最长见的用途是扩展java web服务器功能,为来自web客户的请求提供服务。它完全运行在java虚拟机上。由于它的运行在服务器端,因此他的运行不依赖于浏览器。

  tomcat作为servlet容器,负责处理客户请求,把请求传给servlet并把结果返回给客户。servlet容器与servlet之间的接口是由java servlet api定义的,在此api中定义了servlet的各种方法,这些方法在servlet生命周期的不容阶段被servlet容器调用,servlet api还定义了servlet容器传递给servlet的对象类,如请求对象ServletRequest和相应对象ServletResponse

  tomcat服务器是由一系列可配置的组件构成,其中核心组件是Catalina Servlet容器,它是所有其他tomcat组件的顶层容器。tomcat的组件可以在conf/server.xml文件当中进行配置,每个tomcat组件在server.xml文件中进行配置,每个tomcat组件在server.xml文件中对应一种配置元素。具体见下:   < server>
  < service>
  < Connector>
  < /Connector>
  < Engine>
  < Host>
  < Context>< /Context>
  < /Host>
  < /Engine>
  < /service>
  < /server>
  1.顶层类元素:

  < Server>和< Service>,他们位于整个配置文件的顶层

  < Server>元素代表整个Catalina Servlet容器,它是tomcat实例的顶层元素。< Server>元素当中可包含一个或多个< service>元素。

  < service>元素中包含一个< Engine>元素,以及一个或多个< Connector>元素,这些< Connector>元素共享同一个< Engine>元素

  2.连接器类元素:

  connector,它代表了介于客户与服务器之间的通信接口,负责将客户的请求发送给服务器,并将服务器的相应结果传递给客户。

  3.容器类元素

  < Engine>,< Host>和< context〉

  其中< Engine>组件处理在同一个< service>中所有< Connector>元素接受到的客户请求

  < Host>组件为特定的虚拟机处理所有客户请求。每个< Host>元素定义了一个虚拟主机,它可以包含一个或多个web应用。

  < context>组件为特定的web应用处理所有客户请求。它是使用最频繁的元素。每个< Context>元素代表了运行在虚拟机上的单个web应用,一个< Host>元素中可以包含多个< context>元素

  说到< context>元素,java web应用的主要特征之一就是它与Context的关系,每个web应用有唯一的Context。当java web应用运行时,Servlet容器为每个web应用创建唯一的ServletContext对象,它被整个web应用中所有的组件共享。

如下代码:   < Context path="/reglog" docBase="reglog" debug="0"
  crosscontext="true" reloadable="true">
  < /Context>
  你可以自己在server.xml当中定义一个context元素,设定你所存在项目的参数及属性。其中path指定访问web应用的url入口

  docBase指定web应用的文件路径,可以给定绝对路径,也可以给定向对于host的appBase属性的相对路径

  reloadable,如果这个属性设为true,tomcat服务器在运行状态下会监视在WEB-INF/classes和WEB-INF/lib目录下class文件的改动,如果监测到有class文件被更新,服务器会自动重新加载web应用。

  另外说一下tomcat的运行脚本

  如果仔细研究一下tomcat的启动和关闭脚本,会发现startup.bat和shutdown.bat都执行同一个目录下的catalina.bat脚本。其实质是这样的:执行startup.bat脚本,相当于执行了catalina start命令,执行shutdown.bat相当于执行了catalina stop命令。

  common\lib,server\lib,shared\lib这三个目录相信大家都见过吧,但具体是干什么用的呢?

  其中server\lib下的jar文件只能被tomcat服务器访问。

  shared\lib下的jar文件可以被所有的web应用访问,但不能被tomcat服务器访问。

  common\lib目录下的jar文件可以被tomcat服务器和所有的web应用访问  

java视频教程
JAVA核心_75对象序列化练习
 JAVA核心_75对象序列化..
JAVA核心_74对象序列化
 JAVA核心_74对象序列化..
JAVA核心_73字符编码
 JAVA核心_73字符编码 ..
JAVA核心_72Scanner
 JAVA核心_72Scann..
JAVA核心_71 IO练习 二
 JAVA核心_71 IO练习..
相关文章 推荐文章
实践中整理出tomcat集群和负..[12.19]
过滤器[11.12]
数据源的配置及使用[11.12]
JSP中tomcat的SQL S..[11.5]
tomcat频繁死掉的问题[9.21]
Tomcat深入内部结构描述
数据源的配置及使用
过滤器
监听器
WEB发展及Tomcat配置(二)
热门文章
Apache+JK+Tomcat负载平..
使用Tomcat-5.5.20配置数据..
完整图解 Tomcat 5.0.28 ..
Tomcat集群与负载均衡
JDK和Tomcat的安装与配置
Tomcat深入内部结构描述
Apache与Tomcat的整合
超简单整合apache2.0 +Tom..
Tomcat配置技巧
tomcat频繁死掉的问题
今日更新
Tomcat深入内部结构描述
实践中整理出tomcat集群和负载均衡..
数据源的配置及使用
过滤器
监听器
WEB发展及Tomcat配置(二)
WEB发展及Tomcat配置(一)
JSP中tomcat的SQL Serv..
tomcat频繁死掉的问题
Apache Synapse 的概述
JAVA招聘网
 评一评
正在读取…
  姓名:
  评论:
    
【注】 发表评论必需遵守以下条例: !!!
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款
关于我们 | 商务合作 | 招聘信息 | 客服中心 | 服务条款 | 免责声明 | 网站导航 QQ留言
Copyright 2009 魔乐培训MLDN.CN all rights reserved 版权所有 京ICP备07008611号