`
presses
  • 浏览: 116049 次
  • 性别: Icon_minigender_1
  • 来自: 中山
社区版块
存档分类
最新评论

tomcat 7 doc笔记

    博客分类:
  • java
阅读更多

中英互译:terminology:术语。term:词。

 

context指一个web application。

 

tomcat的主配置文件是/conf/server.xml。所有配置文件只在tomcat启动时启动,若要使启动后的配置文件生效,需要重启tomcat。

 

在运行tomcat前,请确保系统已经配置好JAVA_HOME和CATALINA_HOME变量。

 

tomcat7运行在jdk6下。

 

全局(所有) context共享的lib可以放到$Catalina_home/lib下,例如jdbc驱动。

 

$context/META-INF/context.xml文件可以用来定义tomcat的一些特殊配置。

 

通过复制app文件夹或app.war到$Catalina_Home/webapps/下的方法,可以让tomcat自动加载该app。该app的context path为app的文件名。

 

通过$catalina_home/webapps/Manager应用可以在运行时动态布置app。

 

context代表一个app。早期的tomcat把context的配置放在$catalina_home/conf/server.xml下。虽然现在也可以这样,但不建议。context应该在以的其中一个地方配置$catalina_home/conf/[enginename]/[hostname]/context.xml。$catalina_home/webapps/[webappname]/META-INF/context.xml。

 

如果不为应用配置context.xml文件,tomcat会使用默认的值配置这个context。

 

默认情况下,tomcat启动时会先启动有context.xml的应用,然后再布置没有context.xml文件的应用,最后会解压.war文件(旧的被解压的.war目录会被删除)。

 

如果Host节点设置了autoDeploy属性为true,即tomcat后台线程会动态检测应用的改变实现动态布置。移入新的war文件、加入新的app、更改/web-inf/web.xml文件、更改对应和context.xml文件都会使tomcat重新加载该应用。

 

/manager模块可以实现应用的动态部署、删除、重新加载、列举在线应用等功能。另外也可以查看session的状况。

 

在/catalina_home/conf/tomcat-users.xml中可以配置/manager模块的用户。

 

 

realm是一个放置用户名和密码的集合。你可以实现自已的jdbc/datasource/等类形的realm。默认采用/catalina_home/conf/tomcat-users.xml中的realm。realm可以设置在engine/host/context下,在不同的地方设置,作用域也不同。

 

tomcat7的classloader各个app拥用自已的classloader,上一层是common,然后是system、bootstrap。

 

bootstrap装载的是jre及jre/lib/ext下的类。system装载的是$catalina_home/bin/bootstrap.jar和juli.jar里的类。common装载的是$catalina_home/lib下的类。app装载的是web/lib和class下的类。

 

类加载体系加载类的顺序为jvm/systemclass loader、web-inf/classes、web-inf/lib/*.jar、$catalina_home/lib。

 

有一个默认的servlet,配置文件在$catalina_base/conf/web.xml下。作用是列举目录。这个配置文件还为一些文件配置了doctype及欢仰文件。

 

在server.xml的engine节点下可以配置多个不同的virtual host,不同的host可以设置不同的appBase(webapps目录)。需要注意的是context节点的docbase不能为任何一个appbase相同。而ROOT的文件夹名应用为根应用。

 

tomcat7的架构。最外层的是Server。Server代表整个容器。下一层是Service,Service是Server下的一个中间组件。再下一层是Engine。Engine是处理请求与响应的管道。再下一层是Host,一个Engine可以有多个Host,而一个Host可以有一个网洛名及多个别名。再下一层是Context。一个Host下可以有多个Context。每个Context代表一个应用。Connector在Service之下,与Engine并排。Connector处理与用户的交互,它包含http connector/ajp connector等。简单一点就是:Server-Service-(Conector)/(Engine-Host-Context)。

 

$Catalina_home/conf/server.xml的配置说明如下:

 

Server节点中的address属性用于设置可发出关闭命令的地址,默认为localhost。port为接收关闭命令的端口,设置为-1可以关闭该功能,同时让shutdown.bat失效。

 

Service下可以配置executor节点,其中属性maxThreads用于设置最大线程池的大小,默认为200,minSpareThreads用于设置最小闲置线程,默认为25。maxIdleTime用于设置线程被关闭前的时间,默认为一分钟。Service下配置executor节点是全局共享下。另外也可以为每个connector配置单独的线程词。

 

http connector中的maxPostSize用于设置最大post表单url大小,默认为2m,port用于设置请求端口,protocol用于设置协议,URIEncoding用于设置URL编码,,默认为iso-8859-1。acceptCount用于设置最大的请求队列,默认为100,超出该出求队列的请求将会被拒绝。address用于在一台机多个IP情况下只处理一部份IP的情况。默认情况下处理所有的IP。disableUploadTimeout用于设置是否在上传文件时延长超时,默认为ture,executor用于设置该connector所有的executo,如果设置了,即executor的参数将复盖该connector的参数。keepalivetimeout用于设置关闭一个connection前等待另一个请求的时间。maxHttpHeaderSize用于设置最大的http报头,默认为8k,maxThreads用于设置最大的链接线程数。

 

context可以定义在$home/conf/server.xml中,但不建议这样做。另外可以定义在$home/conf/Context.xml中。也可以定义在$home/conf/[enginename]/[hostname]/context.xml或者$home/conf/[enginename]/[hostname]/[contextname].xml

 

Context中的一些重要属性:docBase用行设置应用的目录。path用于设置上下文路径。reloadable用于设置是否在运行时监测class/lib目录的改变并重新另载。

 

可以在Context元素下增加一个<Value className/prefix/suffix/pattern来设置日志。

 

在web.xml中设置<context-param><param-name><param-value>和在context元素中设置<Parameter name是一样的效果。

 

可以在context元素中增加元素<value className/allow/deny来限制IP。

 

Engine节点中也可以设置Value元素限制IP。

 

Host节点的元素意义如下:appBase用于设置默认的webapp目录,放到该目录下的所有app都会被加载。xmlBase用于设置加载context.xml文件的路径。autoDeploy用于设置在运行时是否自动检查有新的应用被布置。deployOnStartup用于设置是否在tomcat启动时自动加载应用。name用于设置host的域名。

 

在Host节点下也可以增加Value节点用于设置log的位置和命名。

 

在host下可以设置多个<alias节点,用于设置多个域名。

 

Host同样可以通过Value设置过虑IP。

 

 

分享到:
评论

相关推荐

    tomcat6.0 数据源配置

    - **Tomcat配置文档**:`tomcat配置.doc`可能包含了更详细的Tomcat配置信息,如虚拟主机设置、session配置、错误页面处理等,这些都是运行和管理Tomcat服务器时需要了解的关键知识点。 总之,理解并正确配置Tomcat...

    Jsp笔记.doc

    1. 在MyEclipse中关联Tomcat:通过`Window -&gt; Preferences`,搜索Tomcat并启用。 2. 发布Web工程到Tomcat。 3. 运行Web应用。 **JSP文件结构**: JSP文件可以包含静态HTML、CSS、JavaScript,以及内嵌的Java代码...

    java学习笔记.doc

    Java学习笔记涵盖了从基础到进阶的多个知识点,主要集中在Java开发环境的搭建、文档查阅、应用服务器的使用以及Java应用程序的运行环境。首先,Java Development Kit (JDK)是学习Java编程的基础,由Sun Microsystems...

    Oracle 10g 学习笔记

    这个笔记是学习oracle数据库过程中整理出来的,比较详细,适合于初学者。 │ oracle与tomcat端口冲突.txt │ Oracle学习笔记.pdf │ Oracle学习笔记.wps ... 7上机.doc DEMOScript.sql T7.ppt 演示代码.sql

    linux常用命令笔记.doc

    linux常用命令笔记 。文件与目录操作、查看文件内容、文本内容处理、查询操作、压缩、解压、yum安装器、网络相关、系统相关、XSheel 5相关操作、Tomcat、关机 (系统的关机、重启以及登出 ) 、linux 重启命令。抓包、...

    Solr学习笔记.doc

    Solr学习笔记 Solr 是一种基于 Lucene 的搜索服务器,可以满足企业对搜索解决方案的需求。它支持层面搜索、命中醒目显示和多种输出格式,易于安装和配置,並且附带了一个基于 HTTP 的管理界面。 Solr 的主要特点...

    韩顺平servlet笔记

    - "51CTO下载-韩顺平2011最细servlet笔记2.doc" 可能进一步探讨了Tomcat服务器的安装、配置与管理,包括端口号设置、虚拟主机配置、部署Web应用等。此外,可能还会讲解Cookie和Session的创建、存储、读取、过期策略...

    Web程序设计课堂笔记.doc

    1.Tomcat和HTTP协议 2.Servlet基础 3.HttpServletRequest请求对象 4.JSP技术和会话跟踪 5.JSTL和EL表达式 6.过滤器 7.监听器 8.JDBC 9.文件上传和下载 10.JSP的开发模型——MVC设计架构

    Openbravo erp 实施笔记.doc

    通常,Openbravo ERP会与Apache Tomcat或其他Web服务器集成。配置Web服务器以托管Openbravo应用,并设置适当的虚拟主机和端口。 3. **Openbravo ERP 安装** - **下载与解压** 从Openbravo官网下载最新版本的ERP...

    JavaEE课堂笔记_rw.doc

    - **基于Web服务器实现**:这种方式依赖于特定的Web服务器,如Tomcat、JBoss等,不同的服务器可能有不同的实现方式,导致程序移植性较差。 - **独立于Web服务器的专用数据库连接池**:推荐使用这种方法,比如...

    韩顺平servlet笔记.rar下载

    韩顺平老师的2011细说Servlet完整笔记.doc可能涵盖了上述所有内容,通过阅读笔记,你可以深入了解Servlet的工作原理,学会如何编写、配置和调试Servlet,以及如何在实际项目中应用Servlet进行Web开发。这份笔记对于...

    吴天雄--JavaWeb完整笔记.doc

    本文档总计92页,20928个字,共分为九大模块,模块一:javaWeb入门概念(资源分类、网络通信三要素、软件架构、web服务器软件tomcat配置、虚拟路径和虚拟主机);模块二:使用eclipse和idea快速开发jsp(idea和tomcat...

    面试笔记-带答案.docx

    - 安装Web服务器(如Tomcat),并将其集成到Eclipse中。 2.3 数据类型: - int占4个字节,共32位。 - Java有8种基本数据类型,包括boolean,占用1位。 2.4 面向对象的特征: - 封装:隐藏对象的内部细节,只...

    JSP 完全学习笔记 全

    "配置Eclpise+tomcat并实现JSP的编写与部署.doc"指导了如何在Eclipse集成开发环境中设置Tomcat服务器,以及如何部署和调试JSP应用。这是每个JSP开发者都需要掌握的基本技能。 **七、Struts框架** Struts是一个基于...

    韩顺平老师Linux_视频笔记.doc

    在PC平台上,Linux软件工程师使用GCC、GDB进行编译调试,利用Makefile组织项目,以及JDK进行Java开发,搭配Tomcat服务器和MySQL数据库。在嵌入式领域,开发涉及单片机和芯片级别的编程,通常需要较小的内存占用和...

    JAVA WEB学习笔记

    【JAVA WEB学习笔记】——Tomcat中数据源的配置与使用 在Java Web开发中,数据源(DataSource)是管理数据库连接的关键组件。它提供了一种高效、灵活的方式来获取和管理数据库连接,尤其是在大型企业级应用中。...

    servlet学习笔记_监听器.doc

    - `contextDestroyed()`方法在Tomcat服务器停止或Web应用被卸载时被调用,用于清理资源,如关闭数据库连接、释放内存等。 2. **HttpSessionListener**: - 该监听器关注的是用户会话的生命周期。当一个新的会话被...

    Eclipse开发分布式商城系统+完整视频代码及文档

    ├─补充1:拔高课程(Redis3.0持久化、集群、MySQL5.6优化、Tomcat7优化) │ │ 打开必读.txt │ │ │ ├─课前资料 │ │ ├─MySQL5.6优化 │ │ │ MySql5.6性能优化.docx │ │ │ │ │ ├─Redis集群 │ ...

    达内Servlet笔记完全版

    要运行Tomcat,首先需要安装Java Development Kit (JDK),因为Tomcat是用Java编写的,需要JVM来执行。接着,设置环境变量JAVA_HOME指向JDK的安装路径,而CATALINA_HOME则指向Tomcat的安装目录。启动Tomcat可以通过...

    MLDN李兴华JAVA_WEB笔记pdf文档

    不错的笔记。是java26通里边web开发的部分。代码就不发了。文档中都有。照着敲吧!!搬来饿代码不是自己的。 第19天 WEB开发环境搭建 |-第1节 WEB发展史 |-第2节 使用Tomcat搭建WEB开发环境 |-第3节 MyEclipse中...

Global site tag (gtag.js) - Google Analytics