Tomcat基础教程(一)
Tomcat, 是Servlet和JSP容器,其是实现了JSP规范的servlet容器。它在servlet生命周期内包容,装载,运行,和停止servlet容器。
Servlet容器的三种工作模式:
1. 独立的Servlet容器
Servlet容器与基于JAVA技术的Web服务器集成,Servlet容器与Web服务器在同一个JVM中运行,作为独立的Web服务器运行。外部请求到达Servlet容器,Servlet容器通过解析请求消息将请求消息分发给目的Servlet,运行Servlet获得响应,并将响应以特定的格式返回给客户端。
2. 进程内的Servlet容器
Servlet容器与基于非Java技术的Web服务器一起使用,通过Web服务器插件将Servlet容器集成到Web服务器中。Web服务器插件将在Web服务器内部地址空间打开一个JVM,使得Servlet可以在该JVM中加载并运行Servlet。如果有客户端调用Servlet请求的到来,Web服务器插件会通过JNI接口将请求传递给Servlet容器,然后由Servlet容器处理该请求。
3. 进程外的Servlet容器
该模式也是通过服务器插件的形式将Servlet容器与Web服务器联系起来。在该模式下,Web服务器将Servlet容器运行在服务器外部的JVM中。Web服务器插件与Servlet容器使用IPC机制进行通信。当访问Servlet的请求到达Web服务器时,Web服务器插件通过使用IPC消息传递给Servlet容器。模式2和模式3的区别就是Servlet容器与Web服务器的耦合程度以及Web服务器插件与Servlet容器的通信方式不同。
Tomcat下载及安装
到Tomcat官网下载:http://tomcat.apache.org/
选择左边Navigation中Download下的相关版本进行下载,每个版本有Binary Distribution和Source Code Distribution两种形式,Binary Distribution下载应用程序,Source Code Distribution下载Tomcat源代码。

下载好Tomcat zip包后,可以解压缩到相关文件夹下,我这里加压缩到了C:\Tomcat\apache-tomcat-7.0.47
当我们进入到Tomcat文件夹下,可以看到如下目录结构:

安装好后,最好在系统环境变量中添加如下变量:
TOMCAT_HOME = C:\Tomcat\apache-tomcat-7.0.47 (选择你自己的安装路径)
然后到bin目录中,双击startup.bat就可以启动Tomcat服务了。之后你可以启动浏览器,输入http://localhost:8080,将会出现Tomcat默认的欢迎页面。
Tomcat基础教程(一)的更多相关文章
- Tomcat基础教程(二)
上一篇说到了Tomcat的介绍,下载及安装,这一篇我会详述Tomcat服务器结构 一.Tomcat服务器结构图: Tomcat服务器中可以配置多个Service,每个Service可以包含多个Conn ...
- Tomcat基础教程(四)
一.将Web应用部署到Tomcat中 为什么要部署?将Web应用部署到Tomcat中,那么Tomcat就能找到相应的Web应用,当Tomcat启动时就会加载和初始化Web应用,而在Tomcat启动后, ...
- Tomcat基础教程(三)
Tomcat中的Web应用 Web应用就是具有特定目录结构的目录和文件. 基于JAVA技术开发的Web应用中通常会包含以下的web对象: 静态文件对象:HTML页面,图片,普通文件 Servlet: ...
- Spring Cloud Alibaba基础教程:Nacos的集群部署
继续说说生产环境的Nacos搭建,通过上一篇<Spring Cloud Alibaba基础教程:Nacos的数据持久化>的介绍,我们已经知道Nacos对配置信息的存储原理,在集群搭建的时候 ...
- Dubbo 基础教程
原文地址:Dubbo 基础教程 博客地址:http://www.extlight.com 一.前言 当服务越来越多时,容量的评估,小服务资源的浪费等问题逐渐显现,此时需要增加一个调度中心基于访问压力实 ...
- Spring Boot 2.x基础教程:找回启动日志中的请求路径列表
如果您看过之前的Spring Boot 1.x教程,或者自己原本就对Spring Boot有一些经验,或者对Spring MVC很熟悉.那么对于Spring构建的Web应用在启动的时候,都会输出当前应 ...
- matlab基础教程——根据Andrew Ng的machine learning整理
matlab基础教程--根据Andrew Ng的machine learning整理 基本运算 算数运算 逻辑运算 格式化输出 小数位全局修改 向量和矩阵运算 矩阵操作 申明一个矩阵或向量 快速建立一 ...
- <<Bootstrap基础教程>> 新书出手,有心栽花花不开,无心插柳柳成荫
并非闲的蛋疼,做技术也经常喜欢蛋疼,纠结于各种技术,各种需求变更,还有一个很苦恼的就是UI总是那么不尽人意.前不久自己开源了自己做了多年的仓储项目(开源地址:https://github.com/he ...
- Memcache教程 Memcache零基础教程
Memcache是什么 Memcache是danga.com的一个项目,来分担数据库的压力. 它可以应对任意多个连接,使用非阻塞的网络IO.由于它的工作机制是在内存中开辟一块空间,然后建立一个Hash ...
随机推荐
- K - Candies(最短路+差分约束)
题目大意:给N个小屁孩分糖果,每个小屁孩都有一个期望,比如A最多比B多C个,再多了就不行了,会打架的,求N最多比1多几块糖 分析:就是求一个极小极大值...试试看 这里需要用到一个查分约束的东西 下面 ...
- angularJS测试一 Karma Jasmine Mock
AngularJS测试 一 测试工具 1.NodeJS领域:Jasmine做单元测试,Karma自动化完成单元测试,Grunt启动Karma统一项目管理,Yeoman最后封装成一个项目原型模板,npm ...
- [PWA] 17. Cache the photo
To cache photo, You need to spreate cache db to save the photo. So in wittr example, we cache the te ...
- [Javascrip] Logging Timing Data to the Console
Learn to use console.time with console.timeEnd to get accurate timings of operations in javascript. ...
- [CSS3] Text ellipsis
Link: http://www.w3schools.com/cssref/tryit.asp?filename=trycss3_text-overflow div{ white-space: now ...
- Eclipse中输入系统变量和运行参数--转
原文地址:http://chenzhou123520.iteye.com/blog/1931670 在开发时,有时候可能需要根据不同的环境设置不同的系统参数,我们都知道,在使用java -jar命令时 ...
- RT: np - new sbt project generation made simple(r)
np - new sbt project generation made simple(r) As pointed out in the comments by @0__ below, there's ...
- 图片预览(base64和blob:图片链接)和ajax上传、下载(带进度提示)
直接上代码 html和js <!DOCTYPE html> <html> <head> <meta name="viewport" con ...
- node.js的ejs模版引擎
ejs版本是0.8.8,生成的views目录下面只有index.ejs and error.ejs,没有layout.ejs. D:\lianchuangfile\nodeDevelop\microb ...
- 状态开关按钮(ToggleButton)及按钮(Swich)的使用
状态开关按钮(ToggleButton)和开关(Switch)也是由Button派生出来的,因此它们本质上都是按钮,Button支持的各种属性.方法也适用于ToggleButton和Switch.从功 ...