上一篇说到了Tomcat的介绍,下载及安装,这一篇我会详述Tomcat服务器结构

一、Tomcat服务器结构图:

Tomcat服务器中可以配置多个Service,每个Service可以包含多个Connector和一个Engine。

每个Connector是负责与外界交流的模块,负责在指定的服务器端口上监听来自客户端的请求,并将请求交给处理引擎,待处理引擎处理后再将结果返回给客户端。Connector要支持不同的传输协议。

一个Service只有一个Engine,其出来来自各个Connector的客户端请求。Engine上可以有多个Host(Host指的是虚拟主机,即在物理服务器上配置的多个域名)。每个Host上又可以部署一个或多个Web应用,即结构图中的Context,而每个应用中又可以配置多个Servlet来处理相应的请求。

Tomcat通过分级的结构将其提供的多服务,多协议,多主机进行层层分解,最终都归结到一个一个的Servlet来执行具体的任务,这也是Tomcat被称为Servlet容器的原因。

二、Tomcat基础配置 - server.xml配置文件

Tomcat有层级结构,也体现在server.xml配置文件中,它是用于配置Tomcat服务器的最主要的配置文件,默认的配置文件有如下元素:

黑体部分位server.xml中的元素,红色部分为元素的属性。

Connector可以有两种,一种是HTTP Connector,使得Tomcat可以通过http协议通信,一种是AJP Connetor,表示使用AJP协议通信,用于Tomcat与Apache服务器通信。他们都是根据protocol属性值进行区分,默认是HTTP Connector。

Tomcat其他配置文件

web.xml: Tomcat中每个Web应用都拥有一个对Web应用进行配置的web.xml文件

tomcat-user.xml: 给文件对登陆Tomcat后台管理的用户做定义,包括角色和用户名/密码

logging.properties: Tomcat服务器日志功能属性文件,定义了每一种日志的级别,存放目录,日志文件名前缀,使用的日志处理器等属性

三、在Eclipse中安装Tomcat插件

1. 先下载Tomcat插件,可以到eclipse官网上免费下载:http://www.eclipsetotale.com/

下载得到文件tomcatPluginV321.zip,对该文件解压缩,获得文件夹com.sysdeo.eclipse.tomcat_3.2.1,该文件就是根目录

2. 在elipse中完成插件安装

将插件根目录直接复制到Eclipse根目录下的plugins目录中已完成插件安装

3. 配置Tomcat插件

  • 设置Tomcat version
  • 设置Tomcat home,可以参考教程一

配置好之后Tomcat插件就可以使用了

Tomcat基础教程(二)的更多相关文章

  1. Tomcat基础教程(四)

    一.将Web应用部署到Tomcat中 为什么要部署?将Web应用部署到Tomcat中,那么Tomcat就能找到相应的Web应用,当Tomcat启动时就会加载和初始化Web应用,而在Tomcat启动后, ...

  2. Tomcat基础教程(三)

    Tomcat中的Web应用 Web应用就是具有特定目录结构的目录和文件. 基于JAVA技术开发的Web应用中通常会包含以下的web对象: 静态文件对象:HTML页面,图片,普通文件 Servlet: ...

  3. Tomcat基础教程(一)

    Tomcat, 是Servlet和JSP容器,其是实现了JSP规范的servlet容器.它在servlet生命周期内包容,装载,运行,和停止servlet容器. Servlet容器的三种工作模式: 1 ...

  4. MySQL8.0数据库基础教程(二)-理解"关系"

    1 SQL 的哲学 形如 Linux 哲学一切都是文件,在 SQL 领域也有这样一条至理名言 一切都是关系 2 关系数据库 所谓关系数据库(Relational database)是创建在关系模型基础 ...

  5. Java基础教程——二维数组

    二维数组 Java里的二维数组其实是数组的数组,即每个数组元素都是一个数组. 每个数组的长度不要求一致,但最好一致. // 同样有两种风格的定义方法 int[][] _arr21_推荐 = { { 1 ...

  6. numpy基础教程--二维数组的转置

    使用numpy库可以快速将一个二维数组进行转置,方法有三种 1.使用numpy包里面的transpose()可以快速将一个二维数组转置 2.使用.T属性快速转置 3.使用swapaxes(1, 0)方 ...

  7. AngularJS 基础教程二:

    5.过滤器 过滤器的主要功能是格式化数据 可以使用Angular提供的过滤器,也可以自定义过滤器 Angular过滤器: currency(货币).date(日期).filter(子串匹配).json ...

  8. SpringCloud2.0 Eureka Server 服务中心 基础教程(二)

    1.创建[服务中心],即 Eureka Server 1.1.新建 Spring Boot 工程,工程名称: springcloud-eureka-server 1.2.工程 pom.xml 文件添加 ...

  9. mysql基础教程(二)-----分组函数、多表查询、常见函数

    分组函数 什么是分组函数 分组函数作用于一组数据,并对一组数据返回一个值. 组函数类型 • AVG() • COUNT() • MAX() • MIN() • SUM() 组函数语法 AVG(平均值) ...

随机推荐

  1. Android程序的入口点和全局变量设置--application

    首先看看 application的官方文档 我之前一直以为Android程序的入口点就是带MAIN和LAUNCHER的Activity的onCreate方法,看来我是错了~  原来真正的入口点是 Ap ...

  2. ORA-01078:failure in processing system parameters

    一.使用环境操作系统:rhel 6.5 x64数据库:Oracle 11.2.0.1.0数据库主目录:/u01/app/oracle/product/11.2.0/ 二.问题描述用sys用户登录sql ...

  3. kafka单机安装配置

    1.下载kafka wget https://www.apache.org/dyn/closer.cgi?path=/kafka/0.8.2.1/kafka_2.9.2-0.8.2.1.tgz 2.解 ...

  4. PHP学习之[第05讲]PHP5.4 循环结构、系统函数和自定义函数

    一.while/for/break/continue: while (expr){ statements } for (expr1:expr2:expr3){ statement } break n  ...

  5. android.view.WindowLeaked解决办法

    08-07 14:51:28.129: E/WindowManager(22277): Activity com.xxx.xxx.xxx.xxx.LoginActivity has leaked wi ...

  6. Android 图片选择器

    图片选择器,遍历系统所有图片并显示,点击查看大图,长按选中,并将结果返回 字体颜色res/color建立text_selecor.xml <selector xmlns:android=&quo ...

  7. [置顶] poj1416数字切割解题报告

    题意:有一段纸片,就是一个不超过7位数的整数,现在给定你一个目标值 aim ,让你去选择把纸片切成几段,然后这个几段的和值 最接近 aim 且不超过 aim, 分析: 对于这个纸段,比如一个 四位数的 ...

  8. [PWA] 12. Intro to IndexedDB

    Use the library indexedDB-promised. Create a database and stroe: import idb from 'idb'; // Open(db_n ...

  9. 多版本号并发控制(MVCC)在分布式系统中的应用

    QQ群:289150599 问题 近期项目中遇到了一个分布式系统的并发控制问题.该问题能够抽象为:某分布式系统由一个数据中心D和若干业务处理中心L1,L2 ... Ln组成:D本质上是一个key-va ...

  10. Percona Live 2016 PPT整理-zhaiwx_yinfeng

    https://yq.aliyun.com/articles/54454?spm=5176.100239.bloglist.32.CllwIr