中 国 科 学 技 术 大 学 工 程 硕 士 研 究 生 学 位 论 文 论 文 题 目 : 网 上 银 行 优 利 账 户 产 品 的 开 发 与 实 施 学 生 姓 名 : 学 校 导 师 : 企 业 导 师 : 工 程 领 域 : 凌 剑 明 季 海 波 教 授 党 华 锐 副 教 授 软 件 工 程 领 域 代 码 : 430113 研 究 方 向 : 网 上 银 行 系 统 所 在 单 位 : 花 旗 软 件 技 术 服 务 ( 上 海 ) 中 国 科 学 技 术 大 学 研 究 生 院
致 谢 在 研 究 生 学 习 生 活 即 将 结 束 之 际, 首 先, 我 由 衷 地 感 谢 我 尊 敬 的 导 师 季 海 波 教 授 和 校 外 导 师 党 华 锐 对 我 悉 心 的 指 导 和 无 私 的 帮 助 他 们 有 着 深 厚 的 学 术 造 诣 严 谨 的 治 学 态 度, 言 传 身 教 地 培 养 我 在 科 学 研 究 中 严 谨 求 实 的 态 度 其 次, 我 要 感 谢 田 浩 王 宗 勇 Nicholas 以 及 所 有 该 项 目 的 参 与 人 员, 正 是 由 于 大 家 的 共 同 努 力, 才 能 成 功 地 设 计 并 实 施 这 个 系 统 最 后, 感 谢 所 有 对 论 文 提 出 宝 贵 意 见 的 老 师 和 同 学, 感 谢 在 百 忙 之 中 评 阅 论 文 和 参 加 论 文 答 辩 的 各 位 专 家
目 录 中 文 内 容 摘 要... 3 Abstract... 4 第 一 章 背 景 分 析... 5 第 一 节 网 上 银 行 简 介... 5 一 网 上 银 行 的 定 义... 5 二 网 上 银 行 的 优 势... 5 三 国 外 网 上 银 行 的 发 展 及 现 状... 6 四 国 内 网 上 银 行 的 发 展 及 现 状... 7 第 二 节 优 利 账 户 产 品 简 介... 8 第 三 节 网 上 银 行 优 利 账 户 系 统 简 介... 8 第 二 章 相 关 技 术 概 述... 10 第 一 节 Struts 开 发 框 架... 10 一 Struts 概 述... 10 二 Struts 的 工 作 原 理... 11 第 二 节 Web Services 技 术... 12 一 Web Services 概 述... 12 二 Web Services 主 要 技 术... 13 第 三 章 网 上 优 利 账 户 系 统 的 设 计 与 实 现... 16 第 一 节 系 统 总 体 结 构... 16 第 二 节 前 端 系 统 设 计 与 实 现... 18 一 开 立 优 利 账 户 功 能... 18 二 查 询 所 有 优 利 账 户 功 能... 32 三 查 询 某 个 优 利 账 户 详 细 信 息 功 能... 36 第 三 节 通 讯 模 块 的 设 计 与 实 现... 38 第 四 节 Web Services 接 口 的 设 计... 40 一 取 得 客 户 信 息 GRBService... 40 二 取 得 客 户 账 户 ProductAndNumberService... 41 三 取 得 利 率 信 息 PDObjectService... 42 四 交 易 预 处 理 PreConfirmationService... 43 五 交 易 确 认 ConfirmationService... 44 六 查 询 优 利 账 户 HoldingSummaryService... 46 七 查 询 优 利 账 户 详 情 PDDetailService... 46 第 四 章 网 上 银 行 优 利 账 户 系 统 的 安 全 性... 48 第 一 节 网 上 银 行 系 统 的 总 体 安 全 性... 48 一 128 位 高 加 密 级 别... 48 二 注 册 用 户 和 个 人 密 码... 48 三 自 动 超 时... 49 第 二 节 针 对 安 全 隐 患 的 防 范... 49 一 跨 站 脚 本 执 行 (Cross Site Script)... 49 二 SQL 注 入 式 攻 击 (SQL Injection)... 50 三 未 正 确 处 理 的 异 常 (Unhandled Exception)... 51 1
第 五 章 工 作 总 结... 52 参 考 文 献... 53 2
中 文 内 容 摘 要 随 着 信 息 技 术 和 互 联 网 应 用 的 越 来 越 广 泛, 网 上 银 行 已 经 成 为 银 行 对 客 户 服 务 的 重 要 渠 道 之 一 目 前 国 内 网 上 银 行 发 展 迅 速, 但 是 提 供 的 服 务 内 容 和 银 行 产 品 相 对 较 少, 主 要 集 中 在 帐 务 查 询 转 账 等 方 面 本 系 统 要 实 施 的 是 在 网 上 银 行 开 通 优 利 账 户 的 功 能 优 利 账 户 属 于 一 种 外 汇 期 权 投 资 类 产 品 目 前 在 国 内 的 银 行 中 也 有 类 似 产 品, 但 均 没 有 在 网 上 银 行 中 开 通 此 项 业 务 系 统 在 网 上 银 行 部 分 采 用 J2EE 技 术 实 现 在 网 上 银 行 与 后 台 系 统 的 交 互 中, 采 用 Web 服 务 (WebService) 的 方 式, 通 过 SOAP 协 议 传 输 XML 数 据 消 息, 实 现 不 同 系 统 平 台 间 的 相 互 协 同 工 作 同 时, 项 目 结 合 现 有 的 网 上 银 行 系 统 的 安 全 技 术, 确 保 客 户 交 易 的 安 全 性 系 统 的 成 功 实 施 和 推 广, 将 极 大 地 方 便 银 行 客 户 进 行 该 产 品 的 投 资, 同 时 也 将 进 一 步 丰 富 网 上 银 行 的 服 务 内 容 3
Abstract As the information technology and the Internet application is widely used, the Internet banking is becoming a very important channel for banks to serve customers. Currently, the Internet banking of Chinese local banks is developing fast, but it has limited contents and products on the Internet banking, with balance summary and transfer as its the main function. This system is to implement the Premium Deposit on the Internet banking. Premium Deposit is a kind of foreign currency investment product. There are similar products in Chinese local banks too, but none of them can be opened online. The system uses the part of the J2EE technology and Web Services to interact between the front-end and the back-end by using SOAP to transfer data in XML format. Meanwhile, the project pays a lot of attention to the security to make sure the safety of the transaction. The successful implementation of the system can provide customer a convenient way to invest the Premium Deposit and enrich the content of the Internet banking. 4
第 一 章 背 景 分 析 第 一 节 网 上 银 行 简 介 一 网 上 银 行 的 定 义 网 上 银 行 是 指 银 行 通 过 互 联 网 向 客 户 提 供 金 融 服 务 的 业 务 处 理 系 统 通 过 网 上 银 行, 银 行 将 服 务 直 接 送 到 客 户 办 公 室 或 家 中, 使 客 户 足 不 出 户 就 可 以 享 受 银 行 的 服 务 [1] 二 网 上 银 行 的 优 势 1. 更 低 的 经 营 成 本 传 统 银 行 的 业 务 拓 展, 主 要 依 靠 新 设 营 业 网 点, 通 常 需 要 大 量 的 土 地 设 备 资 金 和 人 力 的 投 入 相 比 而 言, 网 上 银 行 的 存 在, 使 得 银 行 只 需 要 投 入 少 量 的 设 备 资 金 和 人 力, 就 可 以 将 银 行 业 务 通 过 Internet 覆 盖 到 更 大 的 范 围 2. 更 低 的 交 易 成 本 国 外 资 料 统 计 表 明, 对 银 行 来 说, 客 户 通 过 不 同 途 径 进 行 交 易 的 成 本 是 不 同 的, 通 过 营 业 网 点 进 行 交 易 的 成 本 大 约 是 1.07 美 元, 通 过 电 话 银 行 的 成 本 大 约 是 0.54 美 元, 通 过 ATM 的 成 本 大 约 是 0.27 美 元, 而 通 过 Internet( 网 上 银 行 ) 的 成 本 大 约 只 有 0.1 美 元 可 以 看 到, 网 上 银 行 的 交 易 成 本 只 是 营 业 网 点 的 1/10 网 上 银 行 的 实 施, 可 以 帮 助 银 行 大 大 降 低 交 易 的 成 本 [1] 3. 更 好 的 客 户 服 务 网 上 银 行 可 以 为 银 行 客 户 通 过 任 何 时 间 任 何 地 点 任 何 方 式 的 全 年 365 天, 每 天 24 小 时 不 间 断 的 服 务 网 上 银 行 除 了 能 提 供 基 本 的 查 账 转 账 功 能 外, 5
还 可 以 充 分 利 用 Internet 提 供 理 财 助 理 财 务 分 析 个 性 化 服 务 目 标 营 销 客 户 关 系 管 理 等 特 色 服 务 三 国 外 网 上 银 行 的 发 展 及 现 状 网 上 银 行 最 早 起 源 于 美 国, 其 后 迅 速 蔓 延 到 Internet 所 覆 盖 的 各 个 国 家 美 国 安 全 第 一 网 络 银 行 (SFNB) 从 1996 年 就 开 始 了 网 上 金 融 服 务, 美 国 银 行 业 6%~7% 的 客 户 使 用 网 上 银 行 系 统 目 前, 国 际 上 提 供 网 上 银 行 服 务 的 机 构 分 两 种 一 种 是 原 有 的 负 担 银 行 (Incumbent Bank), 机 构 密 集, 人 员 众 多, 在 提 供 传 统 银 行 服 务 的 同 时 推 出 网 上 银 行 系 统, 形 成 营 业 网 点 ATM POS 机 电 话 银 行 网 上 银 行 的 综 合 服 务 体 系 另 外 一 种 是 信 息 时 代 倔 起 的 直 接 银 行 (Direct Bank), 机 构 少, 人 员 精, 采 用 电 话 Internet 等 高 科 技 服 务 手 段 与 客 户 建 立 密 切 的 联 系, 提 供 全 方 位 的 金 融 服 务 作 为 负 担 银 行 的 代 表,Wells Fargo 是 美 国 第 七 大 银 行, 资 产 总 额 218 亿 美 元, 拥 有 5925 个 分 支 机 构, 资 本 收 益 率 高 达 34% 目 前, 它 被 认 为 是 美 国 银 行 业 提 供 网 上 银 行 服 务 的 优 秀 代 表, 网 上 银 行 客 户 数 量 高 达 160 万, 银 行 网 站 每 月 访 问 人 数 96 万, 接 受 网 上 银 行 服 务 的 客 户 占 其 全 部 客 户 的 20% Wells Fargo 的 网 上 银 行 系 统 不 仅 节 约 成 本, 更 主 要 的 是 带 来 新 增 收 入 和 客 户 使 用 网 上 银 行 的 客 户 素 质 好 收 入 高 账 户 余 额 大 需 求 种 类 多, 银 行 赚 取 的 收 益 和 手 续 费 收 入 相 对 较 多 在 160 万 网 上 银 行 客 户 中,15% 是 由 网 上 银 行 服 务 带 来 的 新 客 户 作 为 直 接 银 行 的 代 表,Entrium Direct Bankers 作 为 Quelle 邮 购 公 司 的 一 部 分 于 1990 年 成 立 于 德 国, 最 初 通 过 电 话 线 路 提 供 金 融 服 务,1998 年 开 辟 网 上 银 行 系 统 Entrium 经 营 的 业 务 品 种 主 要 包 括 消 费 信 贷 循 环 周 转 贷 款 信 用 卡 投 资 在 线 交 易 等 目 前 已 经 成 为 德 国, 乃 至 欧 洲 最 大 的 直 接 银 行 之 一 Entrium 没 有 分 支 机 构, 员 工 共 计 370 人, 依 靠 电 话 和 因 特 网 开 拓 市 场 提 供 服 务 370 人 服 务 77 万 客 户, 人 均 资 产 达 1000 万 美 元, 大 大 高 于 亚 洲 的 领 先 银 行 水 平 ( 新 6
加 坡 发 展 银 行 人 均 资 产 大 约 为 580 万 美 元 ) 目 前 国 际 金 融 界 的 发 展 状 况 表 明, 尽 管 不 同 的 银 行 有 其 不 同 的 发 展 战 略, 目 前 正 处 在 不 同 的 发 展 阶 段, 但 有 一 点 是 肯 定 的, 即 随 着 Internet 的 不 断 发 展, 随 着 金 融 业 的 不 断 创 新, 网 上 银 行 必 将 包 含 银 行 所 有 的 业 务, 成 为 银 行 主 要 的 业 务 手 段 四 国 内 网 上 银 行 的 发 展 及 现 状 我 国 商 业 银 行 内 部 网 络 建 设 起 步 较 早, 因 特 网 上 的 银 行 业 务 发 展 不 足, 与 国 外 的 银 行 有 较 大 差 距 1996 年 6 月, 中 国 银 行 在 因 特 网 上 设 立 网 站, 开 始 通 过 国 际 互 联 网 向 社 会 提 供 银 行 服 务 经 过 几 年 的 发 展 中 国 的 网 上 银 行 发 展 呈 现 以 下 特 点 : [2] 1. 设 立 网 站 或 开 展 交 易 性 网 上 银 行 业 务 的 银 行 数 量 增 加 目 前 许 多 银 行 已 经 设 立 或 正 在 设 立 网 上 银 行 业 务 2. 外 资 银 行 开 始 进 入 网 上 银 行 领 域 目 前, 获 准 在 中 国 内 地 开 办 网 上 银 行 业 务 的 外 资 银 行 包 括 汇 丰 银 行 东 亚 银 行 渣 打 银 行 恒 生 银 行 花 旗 银 行 等 另 外, 还 有 几 家 外 资 银 行 的 申 请 正 在 审 核 之 中 3. 网 上 银 行 业 务 量 在 迅 速 增 加 这 表 现 在 客 户 数 和 交 易 金 额 两 个 方 面 业 务 覆 盖 全 国 主 要 大 中 城 市 4. 网 上 银 行 业 务 种 类 服 务 品 种 迅 速 增 多 2000 年 以 前, 我 国 银 行 网 上 服 务 单 一, 一 些 银 行 仅 提 供 信 息 类 服 务 但 目 前, 交 易 类 业 务 已 经 成 为 网 上 银 行 服 务 的 主 要 内 容, 提 供 的 服 务 包 括 存 贷 款 利 率 查 询 外 汇 牌 价 查 询 投 资 理 财 咨 询 账 户 查 询 账 户 资 料 更 新 挂 失 转 账 汇 款 银 证 转 账 网 上 支 付 代 客 外 汇 买 卖 等, 部 分 银 行 已 经 开 始 试 办 网 上 小 额 质 押 贷 款 住 房 按 揭 贷 款 等 授 信 业 务 7
5. 银 行 日 益 重 视 业 务 经 营 中 的 品 牌 战 略, 出 现 了 名 牌 网 站 和 名 牌 产 品 但 目 前 我 国 尚 未 出 现 完 全 依 赖 或 主 要 依 赖 信 息 网 络 开 展 业 务 的 纯 虚 拟 银 行 第 二 节 优 利 账 户 产 品 简 介 优 利 账 户 是 一 种 结 合 了 定 期 存 款 和 外 汇 期 权 的 创 新 外 汇 理 财 产 品, 即 客 户 在 开 立 外 币 定 期 存 款 的 时 候, 同 时 出 售 一 个 外 币 的 选 择 权, 从 而 获 得 更 高 的 利 率 收 益 客 户 可 以 根 据 个 人 的 风 险 承 受 能 力 或 投 资 需 求 来 设 定 一 个 备 选 货 币 和 基 准 汇 率, 该 基 准 汇 率 将 决 定 优 利 账 户 收 益 的 高 低 优 利 账 户 期 满 后, 银 行 根 据 当 时 外 币 汇 率 的 变 化, 于 基 准 汇 率 相 比 较, 来 决 定 支 付 本 金 和 利 息 的 货 币 币 种 目 前, 优 利 账 户 的 开 立, 需 要 客 户 亲 自 到 银 行 办 理, 或 通 过 电 话 银 行 办 理 第 三 节 网 上 银 行 优 利 账 户 系 统 简 介 为 了 能 够 让 银 行 的 客 户 根 据 自 己 的 需 求, 更 方 便 地 开 立 优 利 账 户, 优 利 账 户 系 统 将 在 网 上 银 行 推 出 网 上 银 行 优 利 账 户 的 主 要 功 能 包 括 : 1. 开 立 优 利 账 户 在 开 立 过 程 中, 客 户 可 以 选 择 不 同 货 币 对 基 准 汇 率 以 及 账 户 的 存 期, 通 过 一 个 模 拟 计 算 器, 看 到 真 实 的 收 益 情 况 这 将 很 大 程 度 上 使 客 户 能 更 加 全 面 更 加 方 便 地 了 解 投 资 的 收 益 2. 查 询 已 开 立 的 优 利 账 户 客 户 可 以 通 过 网 上 银 行, 查 看 到 自 己 所 用 已 开 立 的 优 利 账 户 及 其 详 情 3. 利 率 计 算 器 损 益 平 衡 计 算 器 网 上 银 行 提 供 客 户 两 种 计 算 器, 方 便 客 户 计 算 相 关 投 资 数 据 8
4. 外 汇 市 场 信 息 及 评 论 由 于 优 利 账 户 的 收 益 与 外 汇 汇 率 的 变 化 密 切 相 关, 网 上 银 行 将 提 供 路 透 社 的 最 新 外 汇 市 场 信 息 和 专 业 评 论, 供 客 户 投 资 参 考 网 上 银 行 的 优 利 账 户 系 统 采 用 Struts 架 构, 同 时 通 过 Web Services 技 术 与 银 行 后 端 的 系 统 通 信 9
第 二 章 相 关 技 术 概 述 第 一 节 Struts 开 发 框 架 一 Struts 概 述 Struts 是 在 JSP Model 2 的 基 础 上 实 现 了 MVC 设 计 模 式 的 Web 开 发 框 架 (Framework) MVC 设 计 模 式 ( 模 型 Model 视 图 View 控 制 器 Controller) 是 80 年 代 出 现 的 一 种 软 件 设 计 模 式, 现 在 已 经 被 广 泛 的 使 用 它 把 应 用 程 序 的 输 入 处 理 输 出 分 开, 三 个 核 心 模 块 模 型 (Model) 视 图 (View) 控 制 器 (Controller) 分 别 负 担 不 同 的 任 务 模 型 是 应 用 程 序 的 主 体 部 分, 用 于 表 示 业 务 数 据 和 业 务 逻 辑, 一 个 模 型 可 以 为 多 个 视 图 提 供 数 据, 提 高 了 应 用 的 可 重 用 性 视 图 是 应 用 程 序 中 用 户 界 面 相 关 的 部 分, 视 图 向 用 户 显 示 数 据, 并 能 接 收 用 户 的 输 入 数 据, 但 它 并 不 进 行 任 何 实 际 的 业 务 处 理 控 制 器 工 作 就 是 根 据 用 户 请 求, 调 用 相 应 的 模 型 组 件 处 理 请 求, 然 后 调 用 相 应 的 视 图 显 示 模 型 返 回 的 数 据 MVC 的 出 现 不 仅 实 现 了 功 能 模 块 和 显 示 模 块 的 分 离, 同 时 它 还 提 高 了 应 用 系 统 的 可 维 护 性 可 扩 展 性 可 移 植 性 和 组 件 的 可 复 用 性 Struts 由 一 组 相 互 协 作 的 类 Serlvet 以 及 丰 富 的 标 记 库 (JSP TagLib) 和 独 立 于 该 框 架 工 作 的 实 用 程 序 类 (Validator) 组 成 Struts 有 其 自 己 的 控 制 器 (Controller), 同 时 整 合 了 其 他 的 一 些 技 术 去 实 现 模 型 层 (Model) 和 视 图 层 (View) 在 模 型 层,Struts 可 以 很 容 易 的 与 数 据 访 问 技 术 相 结 合, 包 括 EJB JDBC 和 Object Relation Bridge 在 视 图 层,Struts 能 够 与 JSP Velocity Templates XSL 等 等 这 些 表 示 层 组 件 想 结 合 Struts 开 发 框 架 主 要 有 如 下 功 能 : 包 含 一 个 Controller Servlet, 能 将 用 户 的 请 求 发 送 到 相 应 的 Action 对 象 JSP 自 由 Tag 库, 并 且 在 Controller Servlet 中 提 供 关 联 支 持, 帮 助 开 发 员 创 10
建 交 互 式 表 单 应 用 提 供 了 一 系 列 实 用 对 象 :XML 处 理 通 过 Java Reflection APIs 自 动 处 理 JavaBeans 属 性 国 际 化 的 提 示 和 消 息 二 Struts 的 工 作 原 理 图 1:Struts 的 工 作 原 理 在 Struts 中, 承 担 MVC 中 Controller 角 色 的 是 一 个 Servlet, 叫 ActionServlet ActionServlet 是 一 个 通 用 的 控 制 组 件 这 个 控 制 组 件 提 供 了 处 理 所 有 发 送 到 Struts 的 HTTP 请 求 的 入 口 点 它 截 取 和 分 发 这 些 请 求 到 相 应 的 动 作 类 ( 这 些 动 作 类 都 是 Action 类 的 子 类 ) 另 外 控 制 组 件 也 负 责 用 相 应 的 请 求 参 数 填 充 Action From( 通 常 称 之 为 FormBean), 并 传 给 动 作 类 ( 通 常 称 之 为 ActionBean) 动 作 类 实 现 核 心 商 业 逻 辑, 它 可 以 访 问 JavaBean 或 调 用 EJB 最 后 动 作 类 把 控 制 权 传 给 后 续 的 JSP 文 件, 后 者 生 成 视 图 视 图 主 要 由 JSP 生 成 页 面 完 成 视 图,Struts 提 供 丰 富 的 JSP 标 签 库 :Html Bean Logic Template 等, 这 有 利 于 分 开 表 现 逻 辑 和 程 序 逻 辑 模 型 由 一 个 或 多 个 JavaBean 的 形 式 存 在 这 些 Bean 分 为 三 类 :Action Form Action JavaBean 或 EJB Action Form 通 常 称 之 为 FormBean, 封 装 了 来 自 于 Client 的 用 户 请 求 信 息, 如 表 单 信 息 Action 通 常 称 之 为 ActionBean, 获 取 从 ActionSevlet 传 来 的 FormBean, 取 出 FormBean 中 的 相 关 信 息, 并 做 出 相 关 的 处 理, 一 般 是 调 用 Java Bean 或 EJB 等 11
在 Struts 中, 用 户 的 请 求 一 般 以 *.do 作 为 请 求 服 务 名, 所 有 的 *.do 请 求 均 被 指 向 ActionSevlet,ActionSevlet 根 据 Struts-config.xml 中 的 配 置 信 息, 将 用 户 请 求 封 装 成 一 个 指 定 名 称 的 FormBean, 并 将 此 FormBean 传 至 指 定 名 称 的 ActionBean, 由 ActionBean 完 成 相 应 的 业 务 操 作, 如 文 件 操 作, 数 据 库 操 作 等 每 一 个 *.do 均 有 对 应 的 FormBean 名 称 和 ActionBean 名 称, 这 些 在 Struts-config.xml 中 配 置 因 此,Struts 的 核 心 是 ActionSevlet,ActionSevlet 的 核 心 是 Struts-config.xml, 所 有 控 制 逻 辑 利 用 Struts-config.xml 文 件 来 配 置 [8] 一 Web Services 概 述 第 二 节 Web Services 技 术 Web Services 是 基 于 网 络 的 分 布 式 的 模 块 化 组 件, 它 执 行 特 定 的 任 务, 遵 守 具 体 的 技 术 规 范, 这 些 规 范 使 得 Web Service 能 与 其 他 兼 容 的 组 件 进 行 互 操 作 Web Services 可 以 帮 助 建 立 一 个 分 布 式 的 环 境, 在 这 个 分 布 式 的 环 境 中, 任 意 数 量 的 应 用 程 序 或 组 建 可 以 进 行 平 台 无 关 的 语 言 无 关 的 无 缝 的 交 互 一 个 Web Service 实 际 上 是 一 组 业 务 逻 辑, 它 位 于 Internet 或 Intranet 上 的 某 个 位 置, 可 以 通 过 HTTP SMTP 等 标 准 的 互 联 网 协 议 被 访 问 到 不 同 与 之 前 的 一 些 技 术 (CORBA,J2EE,CGI 等 ),Web Services 基 于 了 标 准 的 XML, 并 且 广 泛 地 得 到 了 主 要 技 术 公 司 的 支 持 XML 提 供 了 一 种 语 言 无 关 的 方 式 来 表 示 数 据, 而 主 要 技 术 公 司 的 支 持 确 保 了 Web Services 技 术 能 在 未 来 数 年 中 被 广 泛 地 应 用 [3] Web Services 技 术 包 括 了 以 下 几 个 重 要 的 特 点 : [4] 基 于 XML 通 过 采 用 XML 技 术 作 为 所 有 Web Services 相 关 技 术 的 数 据 展 示 层, 这 些 技 术 可 以 在 它 们 的 核 心 层 进 行 交 互 作 为 一 种 数 据 传 输 的 方 式,XML 消 除 了 所 有 的 网 络 操 作 系 统 平 台 绑 定 等 问 题 12
宽 松 耦 合 一 个 Web Services 的 使 用 者 不 是 和 Web Services 本 身 紧 密 耦 合 的 Web Services 接 口 可 以 被 改 变, 而 无 需 与 其 使 用 者 协 调 一 个 紧 密 耦 合 的 系 统, 意 味 着 其 客 户 端 和 服 务 器 端 之 间 是 相 互 紧 密 关 联 着 的, 假 如 一 方 做 出 改 变 时, 另 一 方 也 必 须 被 更 新 采 用 宽 松 耦 合 的 架 构 方 式, 可 以 有 效 地 提 高 系 统 的 可 维 护 性, 同 时 也 可 以 在 不 同 的 系 统 平 台 之 间 实 现 简 单 的 整 合 支 持 远 程 过 程 调 用 Web Services 技 术 允 许 客 户 端 通 过 使 用 一 个 基 于 XML 的 协 议, 访 问 远 程 对 象 上 的 过 程 方 法 和 函 数 支 持 文 档 交 换 XML 技 术 的 一 个 主 要 优 势 在 于 它 采 用 了 通 用 的 方 式, 不 仅 可 以 表 示 数 据, 而 且 可 以 表 示 复 杂 的 文 档 这 些 文 档 可 以 是 简 单 的, 也 可 以 是 复 杂 的 Web Services 支 持 透 明 地 传 输 这 些 文 档, 以 支 持 业 务 逻 辑 的 整 合 二 Web Services 主 要 技 术 经 过 几 年 的 发 展, 三 个 主 要 的 全 球 标 准 的 技 术 构 成 了 Web Services 技 术 的 核 心 技 术 这 三 个 技 术 是 : [6] 1. 简 单 对 象 访 问 协 议 SOAP (Simple Object Access Protocol) SOAP 是 用 于 交 换 XML 编 码 信 息 的 轻 量 级 协 议 它 有 三 个 主 要 方 面 : XML-Envelope 为 描 述 信 息 内 容 和 如 何 处 理 内 容 定 义 了 框 架 ; 将 程 序 对 象 编 码 成 为 XML 对 象 的 规 则 ; 执 行 远 程 过 程 调 用 (RPC) 的 约 定 SOAP 可 以 运 行 在 任 何 其 它 传 输 协 议 上 例 如, 可 以 使 用 SMTP, 即 因 特 网 电 子 邮 件 协 议 来 传 递 13
SOAP 消 息 在 传 输 层 之 间 的 头 是 不 同 的, 但 XML 有 效 负 载 保 持 相 同 SOAP 用 XML 将 消 息 编 码, 因 此 在 调 用 过 程 的 任 何 一 步 都 极 易 处 理 消 息 另 外, 调 试 SOAP 消 息 的 方 便 性 使 各 种 SOAP 执 行 能 快 速 聚 合 在 一 起, 这 点 很 重 要 因 为 SOAP 就 是 要 达 到 大 范 围 的 协 同 工 作 相 比 之 下,CORBA DCOM 和 RMI 对 参 数 和 返 回 值 使 用 二 进 制 编 码 除 此 之 外, 他 们 假 设 发 送 端 和 接 收 端 充 分 了 解 消 息 的 前 后 关 系, 因 此 对 诸 如 参 数 名 称 或 类 型 的 任 何 元 信 息 都 不 编 码 这 种 方 法 产 生 了 良 好 的 性 能, 但 使 中 介 很 难 处 理 消 息 因 为 每 个 系 统 使 用 不 同 的 二 进 制 编 码, 所 以 建 立 互 操 作 的 系 统 很 难 2. Web 服 务 描 述 语 言 WSDL (Web Services Description Language) WSDL 是 用 来 描 述 网 络 (network) 服 务 或 终 端 (endpoint) 的 一 种 XML 语 言, 它 用 于 定 义 Web Services 以 及 如 何 调 用 它 们 ( 描 述 Web 服 务 的 属 性, 例 如 它 做 什 么, 它 位 于 哪 里 和 怎 样 调 用 它 ) WSDL 文 档 可 用 于 动 态 发 布 Web Services 查 找 已 发 布 的 Web Services 以 及 绑 定 Web Services 在 WSDL 中 包 含 了 使 用 SOAP 的 服 务 描 述 的 绑 定, 也 包 含 了 使 用 简 单 HTTP GET 和 POST 请 求 的 服 务 描 述 的 绑 定 WSDL 将 Web 服 务 定 义 成 一 系 列 的 端 口 (Port), 每 个 端 口 用 来 表 示 从 抽 象 端 口 类 型 (Port Type) 到 用 于 调 用 Web 服 务 的 具 体 通 信 协 议 的 一 个 映 射 端 口 类 型 由 一 组 与 Service Provider 交 换 信 息 的 操 作 组 成, 它 支 持 对 包 含 消 息 的 数 据 类 型 的 定 义 3. 统 一 描 述 发 现 和 集 成 协 议 UDDI (Universal Description, Discovery, and Integration) UDDI 提 供 了 在 Web 上 描 述 并 发 现 商 业 服 务 的 框 架 UDDI 通 过 服 务 注 册, 以 及 使 用 SOAP 访 问 这 些 注 册 信 息 的 约 定 来 实 现 上 述 目 标 UDDI 的 核 心 组 件 是 UDDI 商 业 注 册, 它 使 用 一 个 XML 文 档 来 描 述 企 业 及 其 提 供 的 Web 服 务 从 概 念 上 来 说,UDDI 商 业 注 册 所 提 供 的 信 息 包 含 三 个 部 分 : 14