`
风子柒
  • 浏览: 55548 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

风言风语JSP之Tomcat与容器

    博客分类:
  • web
 
阅读更多


这个logo相信接触过web的同志们都熟悉——Tomcat,学名公猫,并非汤姆家的猫。很多人都在做web项目的时候用到了它,但是它是神马东西呢?有什么功能呢?它是怎么工作的呢?且听我一一道来:
什么是Tomcat
我们在写servlet的时候,会发现servlet里面没有main()方法,那么它是怎么工作的呢?我们这时就需要一种像Tomcat这样的容器了。Tomcat是Apache软件基金会下的一个免费的、开源的、轻量级的Web应用服务器。类似的容器还有:Webshere、JBoss、WebLogic等等。在JSP和servlet编程中,它担任着很重要的一个角色。它具有以下一些功能:
JSP支持:对JSP来说,这是最最基本的。它可以将JSP代码翻译为Java代码;
生命周期管理:Tomcat掌控着servlet的生死大权。从加载类到实例化servlet、初始化servlet以及回收servlet,都在容器的职责范围内。至于具体的servlet的周期管理,敬请期待我的下一篇博客;
通信支持:容器懂得servlet和Web服务器之间的一系列通信协议,因此它担当着两者之间的友谊的桥梁;
多线程支持:容器会为每一个servlet请求(是每一个请求,而不是每一个客户)分配一个线程(可以是创建,也可以是从线程池中分配)。
当然,Tomcat还有其他一些功能,在此就只举出这几个比较重要的进行说明了。

容器的工作流程
其实,此处与其说是Tomcat的工作流程,不如说是一次客户请求的流程。



①客户端向服务器端发出请求;
②这个过程比较重要,这时候Tomcat会创建两个对象:HttpServletResponse和HttpServletRequest。并将它们的引用(注意:是引用!)传给刚分配的线程中;
③线程开始着手接洽servlet;
④servlet根据传来的是GET和POST,分别调用doGet()和doPost()方法进行处理;
⑤和⑥servlet将处理后的结果通过线程传回Tomcat,并在之后将这个线程销毁或者送还线程池;
⑦Tomcat将处理后的结果变成一个HTTP响应发送回客户端,这样,客户端就可以接受到处理后的结果了。
在这个过程中,还有很多细节需要注意,比如:GET请求和POST请求还是有什么不同?又如初始化servlet都干了些什么?后面会陆续讲到。敬请期待!

拓展阅读:JAVA/JSP学习系列之 Tomcat安装http://java.chinaitlab.com/ServletJsp/21305.html
  • 大小: 6.9 KB
  • 大小: 14.2 KB
7
3
分享到:
评论
3 楼 zhumeilian 2012-02-21  
2 楼 风子柒 2012-02-21  
hulibo 写道

咋了??
1 楼 hulibo 2012-02-21  

相关推荐

    jsp班级信息管理系统

    在描述中提到的"风言风语"模块,是一个类似于留言板、论坛或聊天室的功能。这个模块通常需要用户注册、登录,然后可以发布、回复消息,查看他人留言等功能。由于这部分代码没有包含在提供的压缩包内,使用者需要根据...

    软件开发中没有所谓正确的方法

    我们之所以成功是因为我们使用的是远程开发人员。等等等等……  像这样的话每天我都能看见。  像这样的风言风语十分能蛊惑人心,它愚弄我们,让我们认为这是我们不能遇到阿拉丁的那个茶壶里的精灵的原因。终,...

    CCD式铆合测定机保养说明书.doc

    CCD式铆合测定机保养说明书

    IOS操作系统开发/调试的案例

    IOS操作系统开发/调试的案例 iOS操作系统开发和调试是一个复杂但非常有趣的过程。下面是一个简单的iOS应用开发案例,展示了如何使用Swift和Xcode开发一个基本的iOS应用,并进行调试。

    【精美排版】基于STCC单片机的简易电子琴.doc

    单片机

    【精品】毕业设计:单片机模拟交通灯设计.doc

    单片机

    ATM系统需求说明书.doc

    ATM系统需求说明书

    线性离散系统的Z变换分析法-2

    线性离散系统的Z变换分析法的后续部分,计算机控制系统知识

    DF8B机车32位微机控制柜使用维护说明书.doc

    说明书

    ip2region.xdb

    ip2region.xdb

    IBM业务流程和运营决策管理产品词汇表中英文

    IBM业务流程和运营决策管理产品词汇表,包含中英文词汇,官方文档。

    【精美排版】基于单片机ATC电子琴课程设计.doc

    单片机

    数据挖掘与数据分析应用案例 数据挖掘算法实践 基于Python的数据挖掘在超市中的应用与分析.doc

    由于超市所面对的竞争环境越来越严峻,使得很多超市的管理人员和决策人员逐渐的认识到超市在信息时代要想获得更好的发展空间,数据支持是一项必不可少的手段,尤其是近10年来商品条码技术、收银POS系统等在超市中广泛运用,这为超市企业积累了大量的销售以及库存等方面的数据,这为超市的数据分析提供了很庞大的数据资源,由于以往超市很少对这些数据资源进行完整的分析和应用,使得超市在进货选择的类型、数量、厂家等都有一定的盲目性,同时对顾客的购买行为、购买趋势以及客户的关系没有进行透彻分析和研究,导致这些方面都基本缺乏较为科学的数据进行支持,这对提高超市核心竞争力和超市以后的发展极为不利。当人们逐渐认识到数据支持对于超市发展的作用和意义,他们也认识到在21世纪信息时代要想在如此激烈的竞争中占取有利的地位,得到最大的利润,必须要充分的利用好网络计算机信息技术、数据技术等,更深层次的去挖掘和分析以往的所有数据以及相关的数据的关系,从中提取对超市发展有利的核心决策数据,再根据决策数据来制定出相应的决策,最终使超市能够可持续的发展。

    基于Bootstrap实现的完全响应式后台管理模板页面,多平台自动适应

    基于Bootstrap实现的完全响应式后台管理模板页面,多平台自动适应,亲测完整。

    电力变压器保护毕业设计.doc

    变压器

    图论的思维导图-复习.xmind

    图论的思维导图-复习.xmind

    小米的声音世界-声音基础模型如何推动声音理解和生产

    1. 小米为什么做AI声学语音 小米的发展战略是“软件+硬件”结合AI,构建人车家全生态。 小米拥有庞大的硬件基础,包括智能手机、汽车、IoT设备等,需要AI声学语音技术来提升用户体验。 2. AI声学语音的技术和应用 小米已经建立了完善的声学语音算法体系,涵盖语音交互、拾音降噪、声音情境感知、视觉抠音、跨设备声纹识别等技术。 小爱同学作为语音交互平台,拥有庞大的用户群体和应用场景。 3. 声音基础模型赋能声学语音 小米提出了“声音基础模型”的概念,并以Xiaomi Dasheng为例进行介绍。 Xiaomi Dasheng是一个深度音频信号整体嵌入模型,拥有1.2B参数和27万小时的训练数据。 声音基础模型可以应用于多种场景,例如: SCAR (Sound Component Analysis & Reconstruction):提取视频中的语音和环境音,实现声音橡皮擦功能。 大模型语音合成:实现更自然、流畅的语音合成效果。 Unified Model:将语音识别和语音合成模型统一,提升效率和效果。 小米通过AI声学语音技术和声音基础模型,不断提升用户体验,并探索更多应用场景

    使用hadoop进行数据分析.pdf

    Hadoop 是一个分布式系统框架,它允许使用简单的编程模型跨大型集群进行大数据的存储和处理。以下是如何使用 Hadoop 进行数据分析的基本步骤: 环境准备: 1.安装 Hadoop 集群。这通常包括 NameNode、DataNode、ResourceManager、NodeManager 等角色。 2.配置 Hadoop 环境,包括 Hadoop 配置文件(如 core-site.xml, hdfs-site.xml, yarn-site.xml, mapred-site.xml 等)。 3.确保集群中的节点之间可以相互通信。 数据上传: 1.使用 Hadoop 的分布式文件系统(HDFS)将数据上传到集群中。你可以使用 hadoop fs -put 命令将本地文件或目录上传到 HDFS。 数据预处理: 1.如果数据需要清洗、转换或整合,可以使用 Hadoop 的 MapReduce 编程模型或其他工具(如 Apache Pig、Hive 等)进行预处理。 2.MapReduce 允许你编写两个函数:Mapper 和 Reducer,以处理数据并产生结果。 数据分析: 1.Map

    source+insight使用技巧.txt

    source+insight使用技巧

    应用密码学课题研究.docx

    ssl的应用与原理

Global site tag (gtag.js) - Google Analytics