控制bean定制器的技巧

时间:2010-01-16 09:10:46   来源:第二电脑网  作者:第二电脑网

  第二电脑网导读: 以 满 足 它 的 适 应 性, 灵 活 性 和 美 学 目 的, 本 文 论 述 的 是 怎 样 在 设 计 时( 当 然, 有 时 也 在 运 行 时) 定 制bean。 这 两 个 月 你 将 要 学 习 怎 样 定 制 你 的beans。 我 们 希 望 我 们 的 beans 不 仅 让 用 户 易 用, 更 重 要 的 是 使 应 用 程 序 的 开 发 者 方 便 的 通 过 改 变 参 数 来 设 计 自 己 的bean。 在11 月 号 的 专 题 文 章 ...
  正文:

概 要: 集 成 开 发 环 境(IDEs) 可 以" 解 剖" 一 个bean 类 的 文 件 并 且 生 成 一 个 带 参 数 的 对 话 框, 开 发 者 可 以 利 用 它 来 定 制 自 己 的bean。 但 是 这 些" 标 准 的" 定 制 对 话 框 留 下 了 很 多 参 数 以 满 足 它 的 适 应 性, 灵 活 性 和 美 学 目 的, 本 文 论 述 的 是 怎 样 在 设 计 时( 当 然, 有 时 也 在 运 行 时) 定 制bean。 这 两 个 月 你 将 要 学 习 怎 样 定 制 你 的beans。

我 们 希 望 我 们 的 beans 不 仅 让 用 户 易 用, 更 重 要 的 是 使 应 用 程 序 的 开 发 者 方 便 的 通 过 改 变 参 数 来 设 计 自 己 的bean。 在11 月 号 的 专 题 文 章 定 制 你 的Java?? 根 据 应 用 剪 裁JavaBeans 里, 我 们 看 到 了 怎 样 定 制JavaBeans。 一 个 简 单 的 命 名 方 案(nameing scheam) 提 供 了 一 个 最 小 化 机 制, 这 个 机 制 使 用 户 可 以 在 一 个 集 成 开 发 环 境(IDE) 或 其 他bean 的 对 象 集 成 环 境-- 如BeanBox 里 定 制bean。 当 要 定 制 一 个bean 时, 这 个 集 成 开 发 环 境(IDE) 确 定 这 个bean 的 类 并 弹 出 一 个 对 话 框, 每 一 个 属 性 都 有 自 己 的 子 编 辑 框。 而 控 制, 替 换 和 扩 展 这 些 编 辑 框 正 是 本 文 要 讨 论 的 问 题。

本 文, 我 们 将 回 顾 一 下 基 础 概 念, 以 便 于 理 解JavaBeans 的 独 特 的 定 制 方 便 性。 你 将 要 了 解 到 实 现Bean 的 不 同 的 步 骤 和 类。 然 后 我 们 将 讲 述 一 个 用BeanInfo 界 面 生 成 的 简 单 构 件(form), 这 个form 讲 明 了 如 何 配 置 一 个bean。 我 们 还 将 写 一 个 很 简 单 的 定 制 属 性 编 辑 器( 它 使 你 方 便 的 编 辑 属 性) 并 把 它 装 在BeanBox 里。 这 个 过 程 中 我 们 将 接 触 到Introspector 类, 所 谓Introspector 类 是 一 种 被 集 成 开 发 环 境(IDE) 或 其 他 bean 集 成 环 境 用 来 分 析 类 文 件 的JavaBeans 类。

注 意: 本 文 中, 我 使 用 的 术 语IDE 指 的 是" 任 何 涉 及 到bean 内 部 的bean 集 成 环 境"。 它 当 然 不 局 限 于IDEs: 指 像BeanBox, 信 息 公 路(information"buses") 等 类 似 于 此 的, 需 要 知 道bean 内 部 情 况 的Beans 浏 览 器,Bean 测 试 器。 我 使 用"IDE" 只 因 为 它 只 需 三 个 字 母, 而 且 在 本 文 中 很 常 用。

定 制 的 步 骤(levels)
由 于bean 越 来 越 复 杂, 属 性( 或 称 存 取 方 法) 越 来 越 多。 更 多 的 属 性 出 现 在 对 话 框 里, 于 是 我 们 用 来 定 制 bean 的 对 话 框 越 便 越 大, 使 用 起 来 很 不 方 便, 容 易 混 乱。

bean 的 使 用 者 不 一 定 很 清 楚 它 的 属 性 的 意 义 以 及 它 们 之 间 的 联 系。 某 些 属 性, 特 别 是 索 引 属 性, 在 没 有 屏 幕 时 很 不 好 理 解。 另 一 些 如 果 在 图 形 状 态 下 编 辑 会 很 容 易 理 解。

JavaBeans 规 范 和JavaBeans 包 解 决 了 这 个 问 题, 原 因 是 它 灵 活, 开 放, 易 扩 展 的 规 定, 分 类 和 界 面。 这 就 使bean 的 开 发 者 可 以 了 解 用 户 将bean 加 入 自 己 的 程 序 中 来 定 制 它 时 的 屏 幕 显 示。

当 统 一 设 计 面 板 和 让IDE 创 制 自 己 的 对 话 框 时, 为 了 写 一 个 使 用 户 可 以 在 全 图 形 用 户 界 面( complete GUI) 下 自 己 配 置 的 bean , 定 制 控 制 分 为 几 步(levels)。

定 制 步 骤(level)1: 使 用 设 制 模 板
如 果 你 已 经 读 过 这 个JavaBeans 系 列 的 上 一 篇 关 于 定 制bean 的 文 章, 你 已 经 知 道 存 取 方 法 可 以 改 变bean 的 内 部 状 态。 你 还 会 记 得 设 制 模 板(design pattern) 是JavaSoft 用 来 表 示 存 取 方 法 的 术 语, 是 根 据"JavaBeans 规 范" 的 命 名 规 则 定 义 的, 所 以 它 们 的 程 序 包 可 以 表 示 出 所 有 的 属 性 和 设 置 方 法。 如 果 你 没 有 读 过 上 述 文 章, 我 来 做 一 个 小 结: 属 性 是 一 个 软 件 对 象 的 内 部 状 态 的 子 集( 这 里 的 软 件 对 象 指 的 是bean)。 属 性 的 存 取 方 法 提 供 了 改 变 一 个bean 的 某 个 外 部 特 性 的 唯 一 方 法。JavaBeans 规 范 中 规 定 每 一 个 属 性 必 需 有 像 这 样 的 存 取 方 法

SomeType getProperty() (getter)
void setProperty(SomeType value) (setter)

如 果JavaBean 遵 守JavaBeans 规 范, 集 成 开 发 环 境 就 可 以 分 析 一 个bean, 找 到 名 字 附 和 上 述 模 式 的 存 取 方 法 并 且 指 出 它 的 属 性 和 设 置 方 法。 当IDE 知 道 属 性 的 名 字, 类 型 和 存 取 方 法 后, 它 立 即 可 以 生 成 一 个 定 制 对 话 框。 如 果 你 对 这 段 不 是 很 理 解, 可 以 参 阅 我 上 面 提 到 的11 月 号 的 关 于"JavaBeans" 的 文 章。
来源:http://www.002pc.com/master/College/Programming/JSP/11901.html

 1/6    1 2 3 4 5 6 下一页 尾页
收藏到:

关于《控制bean定制器的技巧》文章的评论

共有 0 位网友发表了评论 此处只显示部分留言 点击查看完整评论页面

随机文章

    SQL Error: select * from ***_ecms_article where classid='85' and checked=1 order by rand() limit 10

顶出来的热门

    SQL Error: select * from ***_ecms_article where classid='85' and checked=1 order by diggtop desc,id desc limit 10
站内搜索: 高级搜索

热门搜索: Windows style 系统 tr IP QQ CPU 安装 function 注册 if td