文档章节

Servlet Specification V2.4——SRV.1 Overview

悟空太多啦
 悟空太多啦
发布于 2015/12/20 23:53
字数 637
阅读 9
收藏 0

SRV.1 Overview

 

SRV.1.1 What is a Servlet?

  • 基于Java技术,由容器管理,可以生成动态内容的web组件。

  • 和其他基于Java技术的组件一样,servlet是跨平台的。并且它还运行于可以支持Java技术的web服务器

  • container,我们有时候称为servlet引擎,是支持servlet的web server。

  • servlet通过container实现的request/response模型与web client进行交互。

 

SRV.1.2 What is s Servlet Container?

        Servlet container是web server/application server的一部分, 这种server通过发送request/response,解码基于MIME的request,并且格式化基于MIME的response来提供网络服务。

        一个servlet container必须构建在宿主web服务器之内,或者作为一个附加组件被安装到web服务器上,通过其服务器的原生扩展API。Servlet container也可以或者有能力被被构建在支持web的应用程序服务器上。

        所有的servlet container必须支持HTTP作为request和reponse的协议,但附加的基于request/response的协议,比如HTTPS也可以被支持。Container必须实现的HTTP规范版本为HTTP/1.0和HTTP/1.1。因为container必须有一个在RFC2616(HTTP/1.1)中描述的缓存机制,它可以在分发来自client的request至servlet之前修改它们,也可以响应request而不分发它至servlet,像RFC2616描述的那样。

        Servlet container可以在servlet执行的环境上设置安全限制。在Java 2平台上,标准版(J2SE1.3或更高)或者企业版(J2EE1.3或更高)的环境中,这些限制应该通过使用Java2平台定义的权限架构被设置。比如,高端的应用服务器可以限制Thread对象的创建来确保container的其他组件不受到不好的影响。

        J2SE 1.3是构建Java平台下web container所需的最低版本。

 

 

SRV.1.3 An Example

  1. client访问web server,并且发起一个http request;

  2. web server收到request并转交给servlet container;

  3. servlet container根据servlet的相关配置决定调用哪个servlet,并且使用展现request/response所需的对象去调用那个servlet;

  4. servlet通过request对象找出谁是远程调用者,这个request通过http post的方式发送了那些参数,以及其他相关数据。servlet会执行代码指定的业务逻辑,并且生成数据,通过response对象返回到client。

  5. 一旦servlet完成了对request处理,container会确认response已经被正确地flush了,并将控制权还给web server。

© 著作权归作者所有

共有 人打赏支持
悟空太多啦
粉丝 20
博文 85
码字总数 70979
作品 1
南京
项目经理
JPA/EJB3 Relationship

The Java Persistence API introduced in Java EE 5 is a subset of EJB 3 and replaces the persistence solution of EJB 2.0 CMP. JPA 1.0 has been defined as part of the EJB 3.0 speci......

Barudisshu
2014/09/21
0
0
web.xml中load-on-startup的含义

<servlet-mapping> <servlet-name>proResponse</servlet-name> <url-pattern>/test</url-pattern> </servlet-mapping> <servlet> <servlet-name>proResponse</servlet-name> <servlet-class>......

2012/02/21
0
0
web.xml中load-on-startup标签的含义

在servlet的配置当中,<load-on-startup>5</load-on-startup>的含义是: 标记容器是否在启动的时候就加载这个servlet。 当值为0或者大于0时,表示容器在应用启动时就加载这个servlet; 当是一...

随智阔
2014/04/02
0
0
图解 & 深入浅出 JavaWeb:Servlet必会必知

Writer :BYSocket(泥沙砖瓦浆木匠) 微 博:BYSocket 豆 瓣:BYSocket FaceBook:BYSocket Twitter :BYSocket “眨眼间,离上一篇写技术博文时隔1个月。怕自己真的生疏了,都是备案太慢惹...

泥沙砖瓦浆木匠
2015/08/21
0
50
图解 & 深入浅出 JavaWeb:Servlet必会必知

Writer :BYSocket(泥沙砖瓦浆木匠) 微 博:BYSocket 豆 瓣:BYSocket FaceBook:BYSocket Twitter :BYSocket “眨眼间,离上一篇写技术博文时隔1个月。怕自己真的生疏了,都是备案太慢惹...

KeepMoving
2015/08/25
0
0

没有更多内容

加载失败,请刷新页面

加载更多

原型模式

1、原型模式-定义 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象 克隆(浅度克隆->拷贝值类型或者引用,深度克隆->创建新的对象,开辟新的内存) 例如客户端知道抽象Pro...

阿元
今天
30
0
awk命令扩展使用操作

awk 中使用外部shell变量 示例1 [root@centos01 t1022]# A=888[root@centos01 t1022]# echo "" | awk -v GET_A=$A '{print GET_A}'888[root@centos01 t1022]# echo "aaaaaaaaaaaaa" | aw......

野雪球
今天
27
0
深入解析MySQL视图VIEW

Q:什么是视图?视图是干什么用的? A:视图(view)是一种虚拟存在的表,是一个逻辑表,本身并不包含数据。作为一个select语句保存在数据字典中的。   通过视图,可以展现基表的部分数据;...

IT--小哥
今天
34
0
虚拟机学习之二:垃圾收集器和内存分配策略

1.对象是否可回收 1.1引用计数算法 引用计数算法:给对象中添加一个引用计数器,每当有一个地方引用它时,计数器值就加1;当引用失效时,计数器值就减1;任何时候计数器值为0的对象就是不可能...

贾峰uk
今天
21
0
smart-doc功能使用介绍

smart-doc从8月份底开始开源发布到目前为止已经迭代了几个版本。在这里非常感谢那些敢于用smart-doc去做尝试并积极提出建议的社区用户。因此决定在本博客中重要说明下smart-doc的功能,包括使...

上官胡闹
昨天
33
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部