




已阅读5页,还剩76页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第 2章 本章内容 析请求 送响应 署描述文件 实质上是运行在 主要封装了对 平台独立的框架 ,实现 器 之间的 通信 。 称为 个包组成: 定义开发独立于协议的服务器小程序的接口和类 。 定义开发采用 定义 9个注解类型和 2个枚举类型 。 定义访问 接口名 说 明 请求和响应之间执行过滤任务的过滤器对象 请求转发到其他资源的对象 有 来向 接口定义了一些方法, 供客户请求的对象 供服务器响应的对象 于监听 于监听 于监听请求对象的监听器接口 于监听请求对象属性的监听器接口 现单线程的接口,已不推荐使用 类 名 说 明 义了一般的、独立于协议的 客户请求读取二进制数据的类 客户发送二进制数据的类 求属性事件类 求事件类 求对象包装类 应对象包装类 1. 每个 或间接实现该接口 。 该接口定义了 5个方法: 1. 2. . 4. 5. 2. 1. 2. 3. 3. 实现 主要功能: 1. 提供 方法外所有方法的实现 2. 增加支持日志的方法 。 3. 扩展该类并实现 方法来创建任何类型的 4. 独立于任何协议的 请求对象 , 定义获取客户请求信息的方法 。 1. 2. 3. 5. 独立于任何协议的 响应对象 , 定义向客户发送响应的方法 。 1. 2. 该包提供创建 基于 该包共定义 8 个接口和 7 个类 , 实现对 接口名 说 明 接口提供了有关 接口提供了有关 现会话管理的接口,也用来存储用户信息 接口已不推荐使用 类 名 说 明 于创建 建 话事件类 话绑定事件或会话属性事件类 个工具类,已不推荐使用 1. 实现针对 扩展了 在 方法覆盖 实现针对 . 在 针对不同的 有两种请求方法: 和 。 . 扩展了 并提供了针对 求方法 。 例如:定义从请求对象中获取 3. 扩展了 并提供针对 应方法 。 例如:定义响应设置 “创建 调用服务 4个阶段。 加载、实例化 调用 方法 初始化 初始化完成后 ,容器 从客户收到请求时,将 调用方法 容器 在 方法, 进入销毁状态 加载和实例化 在 容器使用 方法加载 容器创建 进入生命周期阶段 。 初始化 容器创建 调用 初始化 调用 法后 , 容器将调用无参数的 方法 , 在 方法 仅被调用一次 。 为客户提供服务( 在 准备为客户提供服务 。 当容器接收到对 找到正确的 创建两个对象 (请求和响应 )。 在新线程中调用方法 , 将请求对象和响应对象作为参数传递给该方法 。 3. 获得输出流对象 , 将响应发送给客户浏览器 。 4. 服务结束后 , 线程将被销毁或者返回到容器管理的线程池 。 5. 请求和响应对象已经离开其作用域 , 也将被销毁 。 6. 客户得到响应 。 为客户提供服务 毁和卸载 当容器决定不再需要 通过) 释放资源 。 一旦被调用 , 一旦 将作为垃圾被回收 。如果 分析请求 客户向服务器的请求,或者服务器向客户的响应。 消息部分 说明 请求行或状态行 指定请求或响应消息的目的 请求头或响应头 指定元信息 , 如关于消息内容的大小 、 类型 、编码方式 空行 可选的消息体 请求或响应消息的主要内容 请求行 */* 求头 322; 0727) 080 行 数据 由 客户 向 服务器 发出的消息叫做 由 方法名 、 请求资源的 部分组成 , 使用 空格 分隔 。 2. 请求头 指定请求使用的浏览器信息 、 字符编码信息 、 客户能处理的页面类型等 。 3. 空行 4. 请求的数据 */* 322; 0727) 080 请求行的方法名指定了客户请求服务器完成的动作 。 方 法 说 明 方 法 说 明 求读取一个 除 求向服务器发送数据 回收到的请求 求存储一个 询特定选项 求读取一个 留作将来使用 在所有的 , 索资源 获得 ( 由 服务器发送需处理的数据 将数据发送 ( 到由 特征 资源类型 主动的或被动的 主动的 数据类型 文本 文本或 二进制数据 数据量 一般不超过 255个字符 没有限制 可见性 数据是 浏览器的地址栏中 对用户可见 数据不是 而是作为请求的消息体发送 , 在浏览器的地址栏中 对用户不可见 数据缓存 数据可 在浏览器的 数据不能 在浏览器的 发送 在客户端如果发生下面的事件 , 就向 用户在浏览器的地址栏中输入 按回车键 用户点击了 用户在 并提交 处理 在 除定义了 方法为客户提供服务外 , 还针对每个 方法 , 一般格式如下: 分析请求 客户发送给服务器的请求信息被封装在 其中包含 了由浏览器发送给服务器的数据 , 包括:请求参数 、 客户端有关信息等 。 1. 检索请求参数 请求参数 发送到服务器的数据 , 以 “ 键 /值 ” 对形式发送 。可用 。 返回由 如果指定的参数不存在 , 则返回 使用该方必须确信指定的参数只有一个值 。 1. 检索请求参数 返回指定参数 返回值是一个 如果指定的参数不存在 , 则返回 返回一个 包含请求中所有的请求参数名 ,元素是 如果没有请求参数 , 则返回一个空的 ap 返回一个包含所有请求参数的 该对象以参数名作为键 、 以参数值作为值 。 请求参数传递的方法 单 指定请求参数 每个表单域可传递一个请求参数 , 适用于 询串 指定请求参数 将参数名和值附加在请求的 只适用于 2. 检索客户端有关信息 3. 检索 以“ 键 /值 ” 对的形式发送 。 请求头 内 容 于浏览器和它的平台的信息 户能接受并处理的 户可以接受的字符集 户能处理的页面编码的方法 户能处理的语言 务器的 问密码保护的 客户用这个请求头来标识自己的身份 一个以前设置的 息被发送的日期和时间 示连接是否支持持续连接 , 值 3. 检索 请求转发 在实际应用 , 需要将请求转发 (其他资源 。 使用 将请求转发到服务器上的另一个动态或静态资源( 如 。 将控制转发到指定的资源 , 并将其输出包含到当前输出中 。 使用请求对象存储数据 实例:一个简单的考试系统 开发一个简单的考试系统 , 在 通过 发送响应 送状态码和错误消息 由 服务器 向 客户 发送的 息称为 一个典型的 状态行 00 01 004 23:59:59 应头 52 空行 响应数据 1. 状态行与状态码 状态行由三部分组成 , 各部分由空格分隔: 说明 请求结果的响应 状态码 描述 状态码 的短语 04 表示没有找到与给定的 00 表示服务器检测到一个内部错误 2. 响应头 响应头是服务器向客户端发送的消息 。 示消息发送的日期 。 定响应的内容类 。 示响应内容的长度 。 3. 响应数据 空行的后面是响应的数据 。 发送状态码和错误消息 服务器向客户发送的响应的第一行是 状态行 , 它由三部分组成: 状态码和状态码的描述信息: 00 由于 而状态的消息与状态码有关 , 因此 , 在 状态码 200是系统自动设置的 , 对其他状态码 , 可由系统自动设置 , 也可用响应对象的 方法设置: 设置任意的状态码 。 对于 404状态码 , 其消息为 发送状态码和错误消息 在 些状态码由 3位整数表示,一般分为 5类 。 状态码范围 含 义 示 例 100199 表示信息 100表示服务器同意处理客户的请求 200299 表示请求成功 200表示请求成功 , 204表示内容不存在 300399 表示重定向 301表示页面移走了 , 304表示缓存的页面仍然有效 400499 表示客户的错误 403表示禁止的页面 , 404表示页面没有找到 500599 表示服务器的错误 500表示服务器内部错误 , 503表示以后再试 发送状态码和错误消息 方法向客户发送状态码 , 有两个重载的形式 。 第一个方法使用一个状态码 , 第二个方法同时指定显示消息 。 在默认情况下 , 服务器创建一个 其中包含指定的错误消息 。 发送状态码和错误消息 应用服务器 一种可以通过网络访问的应用程序 。 由完成 特 定 任 务 的 各 种 件 ( 构成的 , 并通过 应用服务器 上驻留 。 应用服务器为 可管理的 , 对系统资源的访问机制 。 应用服务器也提供低级的服务 , 如 应用服务器 市场上可以得到多种应用服务器 , 其中包括 它们也提供对 一个 目录结构是按照资源和文件的位置严格定义的 。 1. 理解文档根目录 每个 它是应用程序所在的目录 。 如果要访问 件 , 应该使用下面的 存放级联样式表文件 ) 存放 存放 存放 存放 默认的欢迎文件 ) 文件目录) 文件目录) * 署描述文件 ) 2. 理解 每个 该目录中主要存放供服务器访问的资源 。 该目录主要包含三个内容 。 1) 2) 3) 3. 一个 可以将这些文件打包成一个扩展名为 一般称为 可 直 接 把 一 个 件 放 到 并创建一个与 4. 默认的 除用户创建的 用 程 序 。 它与其他的 只不过访问它的资源不需要指定应用程序的名称或上下文路径 。 部署描述文件 有些组件可使用注解配置 , 有些组件需使用部署描述文件配置 。 部署描述文件 (可用来初始化 为了保证跨 部署描述文件的 文档类型定义 ( 的标准由 这些规则包括一系列的元素和实体的声明 。 元素的 下面列出了 中常用元素的 在部署描述文件中定义的元素 元素名 说明 对应用程序的简短描述 义应用程序的显示名称 义应用程序的初始化参数 义 义 义应用程序的欢迎文件 义会话时间 义监听器类 义过滤器 义过滤器映射 义错误处理页面 义 义常用文件扩展名的 元素 元素为 用程序定义一个该元素的 1. 元素 该元素定义 必选项 , 定义的名称在 可以通过 方法检索 2. 元素 该元素指定 即需要带包的名称 , 例如 容器将使用该类创建 将类放到这两个地方就不需要设置类路径 。 3. 元素 该元素定义向 一个 元素中可以定义 任意多个元素 。 每个 元素必须 有且仅有 一组和 子元素 。 以 通 过 口 的)方法检索初始化参数 。 4. 元素 元素指定是否在 该元素的值是一个整数 。 1. 如果没有指定该元素 、 或者为 负数 , 容器将 根据需要 决定何时装入 2. 如果为 正数 , 则在 用程序 启动时 载入 针对不同的 可以指定不同的值 , 进而可控制容器装入这些 值小的先装入 。 元素 元素定义一个映射 , 用于指定哪个 容器使用映射指定实际的 访问合适的 元素的 元素 在浏览器地址栏中输入一个路径名称 , 而没有指定特定的文件 , 也能访问到一个页面 , 这个页面就是欢迎页面 , 文件名通常为 在 如果访问的 并没有特定的 如果找不到 , 将查找 如果找到上述文件 , 将该文件返回给客户 。 如果找不到 ( 包括目录也找不到 ) , 将向客户发送404错误信息 。 在 而不需要在 注解属于 因此在定义 元素名 类 型 说 明 定 等价于 素 。 如果没有显式指定 , 则使用 指定一组 射模式 , 素 该元素等价于 两个元素不能同时使用 定该 等价于 指
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 18910.64-2025液晶显示器件第6-4部分:测试方法带动态背光的液晶显示模块
- 计算机自动化技术试题及答案
- 材料疲劳寿命评估误差分析重点基础知识点
- 行政法学案例探讨与答案发布
- 社区火灾应急预案论文(3篇)
- 技术员考试准备试题与答案
- 森林火灾瞬间应急预案范文(3篇)
- 行政法学动态研究试题及答案
- 风险管理在企业优化决策中的应用试题及答案
- 《环保与生活》课件-第十三篇
- 热点主题作文写作指导:古朴与时尚(审题指导与例文)
- 河南省洛阳市2025届九年级下学期中考一模英语试卷(原卷)
- 2025年入团考试各科目试题及答案分析
- 电网工程设备材料信息参考价2025年第一季度
- 成都设计咨询集团有限公司2025年社会公开招聘(19人)笔试参考题库附带答案详解
- 2024年安徽省初中学业水平考试生物试题含答案
- 2024年浙江省中考英语试题卷(含答案解析)
- MOOC 理解马克思-南京大学 中国大学慕课答案
- 说明书hid500系列变频调速器使用说明书s1.1(1)
- ISO22716:2007标准(中英文对照SN T2359-2009)47
- RTO处理工艺PFD计算
评论
0/150
提交评论