文档章节

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
图解 & 深入浅出 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
J2EE规范系列之 JMS1.1 (一) 基本概念

什么是JMS JMS(Java Message Service) 即Java消息服务。它提供标准的产生、发送、接收消息的接口简化企业应用的开发。它是J2EE规范的一部分,定义的接口标准,针对不同的厂商有不同的实现库。...

Garrry
2015/07/06
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

没有更多内容

加载失败,请刷新页面

加载更多

下一页

idea新建springCloud项目(5)- 订单服务

1.创建订单api,如下: 2.创建订单实现逻辑 3.新建订单、订单商品表 -- 订单 create table `order_master` ( `order_id` varchar(32) not null, `buyer_name` varchar(32) not null comment......

monroeCode
10分钟前
0
0
游戏开发经验谈(二):对战类全球服游戏的设计与实现

上篇文章《游戏开发经验谈(一):游戏架构里隐藏的五个坑及其应对方案》,我们主要讲解了游戏架构设计当中隐藏的一些坑及其应对方案,错过的小伙伴可以回溯之前的内容。本期内容,将会重点介...

UCloudTech
19分钟前
0
0
Mysql基本语法

一.联合主键 drop table CONTENT_AND_CATALOG;CREATE TABLE `tobebetter`.`CONTENT_AND_CATALOG` ( `ID` VARCHAR(120) NOT NULL , `CONTENT_ID` VARCHAR(120) , `CA......

我是菜鸟我骄傲
21分钟前
0
0
179. centos7 安装mariadb

1. centos7 中安装mariadb 1.1 执行安装 centos7 自带了mariadb yum -y install mariadb mariadb-server 1.2 启动mariadb systemctl start mariadb 1.3 设置开机启动 systemctl enable maria......

Lucky_Me
28分钟前
0
0
【AI实战】动手训练自己的目标检测模型(YOLO篇)

在前面的文章中,已经介绍了基于SSD使用自己的数据训练目标检测模型(见文章:手把手教你训练自己的目标检测模型),本文将基于另一个目标检测模型YOLO,介绍如何使用自己的数据进行训练。 ...

雪饼
34分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部