请问:
1,Catalina Servlet就是通常所说的Servlet容器吗
2,Engine代表什么 一本书上说是代表Servlet引擎 但是有另一本书上说Servlet引擎就是Servlet容器 不知道该怎么理解
3,Catalina Servlet是不是代表整个tomcat
4,tomcat本身就是一个Servlet容器吗
谢谢 

解决方案 »

  1.   

    Tomcat服务器是由一系列可配置的组件构成的,其中核心组件是Catalina Servlet容器,它是所有其他Tomcat组件的顶层容器。Tomcat各组件之间的层次关系如图1-20所示。
    -Server
    ---Service
    ------Connector
    ------Engine
    ---------Context
    图1-20  Tomcat组件之间的层次结构我们下面简单介绍一下各组件在Tomcat服务器中的作用。(1)Server
    Server表示整个的Catalina Servlet容器。Tomcat提供了Server接口的一个默认实现,这通常不需要用户自己去实现。在Server容器中,可以包含一个或多个Service组件。(2)Service
    Service是存活在Server内部的中间组件,它将一个或多个连接器(Connector)组件绑定到一个单独的引擎(Engine)上。在Server中,可以包含一个或多个Service组件。Service也很少由用户定制,Tomcat提供了Service接口的默认实现,而这种实现既简单又能满足应用。(3)Connector
    连接器(Connector)处理与客户端的通信,它负责接收客户请求,以及向客户返回响应结果。在Tomcat中,有多个连接器可以使用。(4)Engine
    在Tomcat中,每个Service只能包含一个Servlet引擎(Engine)。引擎表示一个特定的Service的请求处理流水线。作为一个Service可以有多个连接器,引擎从连接器接收和处理所有的请求,将响应返回给适合的连接器,通过连接器传输给用户。用户允许通过实现Engine接口提供自定义的引擎,但通常不需要这么做。(5)Host
    Host表示一个虚拟主机,一个引擎可以包含多个Host。用户通常不需要创建自定义的Host,因为Tomcat给出的Host接口的实现(类StandardHost)提供了重要的附加功能。(6)Context
    一个Context表示了一个Web应用程序,运行在特定的虚拟主机中。什么是Web应用程序呢?在Sun公司发布的Java Servlet规范中,对Web应用程序做出了如下的定义:“一个Web应用程序是由一组Servlet、HTML页面、类,以及其他的资源组成的运行在Web服务器上的完整的应用程序。它可以在多个供应商提供的实现了Servlet规范的Web容器中运行”。一个Host可以包含多个Context(代表Web应用程序),每一个Context都有一个唯一的路径。用户通常不需要创建自定义的Context,因为Tomcat给出的Context接口的实现(类StandardContext)提供了重要的附加功能。
      

  2.   

    Tomcat 服务器是一个免费的开放源代码的Web 应用服务器
    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服务器。
      

  3.   

    server port 指定一个端口,这个端口负责监听关闭tomcat的请求 
    shutdown 指定向端口发送的命令字符串 
    service name 指定service的名字 
    Connector 
    (表示客户端和service之间的连接) port 指定服务器端要创建的端口号,并在这个断口监听来自客户端的请求 
    minProcessors 服务器启动时创建的处理请求的线程数 
    maxProcessors 最大可以创建的处理请求的线程数 
    enableLookups 如果为true,则可以通过调用request.getRemoteHost()进行DNS查询来得到远程客户端的实际主机名,若为false则不进行DNS查询,而是返回其ip地址 
    redirectPort 指定服务器正在处理http请求时收到了一个SSL传输请求后重定向的端口号 
    acceptCount 指定当所有可以使用的处理请求的线程数都被使用时,可以放到处理队列中的请求数,超过这个数的请求将不予处理 
    connectionTimeout 指定超时的时间数(以毫秒为单位) 
    Engine 
    (表示指定service中的请求处理机,接收和处理来自Connector的请求) defaultHost 指定缺省的处理请求的主机名,它至少与其中的一个host元素的name属性值是一样的 
    Context 
    (表示一个web应用程序,通常为WAR文件,关于WAR的具体信息见servlet规范) docBase 应用程序的路径或者是WAR文件存放的路径 
    path 表示此web应用程序的url的前缀,这样请求的url为http://localhost:8080/path/**** 
    reloadable 这个属性非常重要,如果为true,则tomcat会自动检测应用程序的/WEB-INF/lib 和/WEB-INF/classes目录的变化,自动装载新的应用程序,我们可以在不重起tomcat的情况下改变应用程序 
    host 
    (表示一个虚拟主机) 
    name 指定主机名 
    appBase 应用程序基本目录,即存放应用程序的目录 
    unpackWARs 如果为true,则tomcat会自动将WAR文件解压,否则不解压,直接从WAR文件中运行应用程序 
    Logger 
    (表示日志,调试和错误信息) 
    className 指定logger使用的类名,此类必须实现org.apache.catalina.Logger 接口 
    prefix 指定log文件的前缀 
    suffix 指定log文件的后缀 
    timestamp 如果为true,则log文件名中要加入时间,如下例:localhost_log.2001-10-04.txt 
    Realm 
    (表示存放用户名,密码及role的数据库) 
    className 指定Realm使用的类名,此类必须实现org.apache.catalina.Realm接口 
    Valve 
    (功能与Logger差不多,其prefix和suffix属性解释和Logger 中的一样) 
    className 指定Valve使用的类名,如用org.apache.catalina.valves.AccessLogValve类可以记录应用程序的访问信息 directory 指定log文件存放的位置 
    pattern 有两个值,common方式记录远程主机名或ip地址,用户名,日期,第一行请求的字符串,HTTP响应代码,发送的字节数。combined方式比common方式记录的值更多  
      

  4.   

    最近发现一款SSH代码生成的工具,介绍给大家,下面是我原文copy过来的,希望对大家有帮助,呵呵。AutoCode代码生成器(SSH版)
    【用于JAVA开发中的 Struts2.0 + Spring2.0 + Hibernate3.2 框架整合程序开发】  
    强大的支撑功能,堪称JAVA SSH编程的利器,你绝对值得拥有!
    自动生成以下所有内容(即:完整的Java SSH支持的工程)  Sturts2.0配置--> sturts.xml、struts.properties
      Spring2.0配置--> applicationContext.xml
    Hibernate3.2配置--> hibernate.cfg.xml
      JSP文件--> 具有Struts2.0支持的增、删、改、查页面及自定义查询、自动分页等操作
      Action--> 业务Action.java和导出Excel的Action等
      VO --> bean.java及 bean.hbm.xml配置文件
      Service --> Service接口定义类
      DAO --> DAO接口定义类
      DAOImpl --> DAO接口Implements实现类
      程序配置 --> web.xml
      验证框架--> bean-validation.xml (实体验证)、SaveAction-validation.xml (保存验证)、UpdateAction-validation.xml (修改验证)
      日志管理配置 --> log4j.xml 国际化配置-->globalMessages_zh.properties(中文) globalMessages_en.properties(英文)
      页面美工 --> 页面按钮样式及CSS样式文件生成的代码直接拷贝到MyEclipse里,做简单设置,发布后即可运行!最多3分钟的生成过程,一次生成,全程无忧!更有9组页面按钮,6套页面样式供您选择,灵活的SSH架构、清晰的SSH层次结构!一旦拥有,JAVA无忧!
    有需要的朋友,可以到天空软件园 www.skycn.com 输入autocode 下载 SSH版来用,呵呵。。
    ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||