Microsoft Word - 200612-582.doc



Similar documents


从 因 人 设 事 谈 起 一 部 文 学 作 品 ( 尤 其 是 长 篇 小 说 ) 的 结 构 至 关 重 要, 因 为 它 是 文 本 整 体 的 组 织 方 式 和 内 部 构 造, 既 是 形 式 又 是 内 容 ; 乃 是 表 达 主 题 最 有 效 的 艺 术 手 段 元 代 戏 曲

循经指压疗法

Microsoft Word - HERBRECIPES《中國藥膳》.doc

毛主席的猪

附件1.FIT)


北魏山东佛教文化个案研究

(\244j\257d\276\307\274\351_ C.indd_70%.pdf)

2016年5月11日泉鲤政文【2016】46号(关于调整区政府行政权力和公共服务事项的通知).doc

6寸PDF生成工具


qq

一 总 体 要 求 一 ) 严 格 把 握 定 义 地 方 政 府 融 资 平 台 是 指 出 地 方 政 府 自 资 设 立 并 承 担 连 带 还 款 责 任 的 机 关 事 业 企.l 三 类 法 人 ( 二 ) 完 善 " 名 单 制 " 管 理 各 银 行 要 继 旗 完 善 融 资 平

毕业生就业政策读本

水 平 考 试 管 理 部 门 办 理 报 名 登 记 手 续, 由 县 ( 市 区 ) 学 业 水 平 考 试 管 理 部 门 建 立 学 业 水 平 考 试 考 籍 ( 三 ) 在 云 南 省 借 考 的 外 省 户 籍 考 生, 经 本 人 申 请, 持 户 籍 等 相 关 材 料, 到 借


Microsoft Word - 103鐵路佐級-國文(二)

背 景 资 料 水 浒 传 写 的 是 北 宋 宣 和 年 间 (1119~1121 前 后 ) 宋 江 等 聚 众 起 义 的 故 事 全 书 描 写 北 宋 末 年 以 宋 江 为 首 的 一 百 零 八 人 在 山 东 梁 山 泊 聚 义 的 故 事 故 事 在 宋 史 和 宋 人 笔 记 里

产 品 出 口 企 业 当 年 减 半 缴 纳 企 业 所 得 税 的 核 准 外 商 投 资 企 业 财 产 转 让 收 益 分 期 计 入 应 纳 税 所 得 额 的 核 准 外 商 投 资 企 业 技 术 开 发 费 加 计 扣 除 的 核 准 财 政

学 习 贯 彻 中 央 尧 省 尧 市 纪 委 全 会 精 神 专 栏 中 国 共 产 党 第 十 八 届 中 央 纪 律 检 查 委 员 会 第 六 次 全 体 会 议 公 报 渊 2016 年 1 月 14 日 中 国 共 产 党 第 十 八 届 中 央 纪 律 检 查 委 员 会 第 六 次

Microsoft Word - 临政办发12.doc

中共山东省委高校工委

标题

目 录 第 一 部 分 国 家 知 识 产 权 局 概 况 一 主 要 职 能 二 部 门 预 算 单 位 构 成 第 二 部 分 国 家 知 识 产 权 局 2016 年 部 门 预 算 表 一 财 政 拨 款 收 支 总 表 二 一 般 公 共 预 算 支 出 表 三 一 般 公 共 预 算 基

ᄐ↓ᅯᄎ2015ᅣ↑ᄇ﾿ᅢᅤᅯ녜 ̄

科学技术部2013年度部门预算

一、二○○二年学校工作的简要回顾

Microsoft Word - 白俄罗斯公司法汉语译文2015年7月15日修改版.docx

第 一 部 分 中 国 气 象 局 职 责 及 概 况 一 主 要 职 责 ( 一 ) 拟 定 气 象 工 作 的 方 针 政 策 法 律 法 规 发 展 战 略 和 长 远 规 划 ; 制 定 发 布 气 象 工 作 的 规 章 制 度 技 术 标 准 和 规 范 并 监 督 实 施 ; 承 担

数学与统计学院教师支部“两学一做”学习教育实施计划

无 锡 职 业 技 术 学 院 国 有 资 产 管 理 办 法 第 一 章 总 则 第 一 条 为 加 强 学 校 国 有 资 产 管 理, 合 理 配 置 和 有 效 使 用 国 有 资 产, 确 保 国 有 资 产 安 全 与 完 整, 保 障 和 促 进 学 校 各 项 事 业 发 展, 根

省安委会2015冬防工作方案.doc

南 昌 大 学 人 力 资 源 工 作 简 讯 2015 年 第 2 期 ( 总 第 27 期 ) 目 录 1 人 力 资 源 综 合 信 息 2 人 员 调 配 及 机 构 编 制 管 理 信 息 3 劳 资 工 作 信 息 4 师 资 管 理 信 息 5 高 层 次 人 才 及 队 伍 建 设

国家邮政局2010年部门预算

国家邮政局2010年部门预算

11韶关市人力资源和社会保障局权责清单

三亚市政府投资建设项目代建制管理工作介绍

<4D F736F F D20C9FABBB7B9FAD6D CBB6CABFB8B4CAD4B7BDB0B8312E646F63>

目 录 一 部 门 职 责... 1 二 预 算 编 报 范 围... 3 三 2013 年 部 门 预 算 报 表 及 情 况 说 明... 5 收 支 预 算 总 表 及 情 况 说 明... 5 收 入 预 算 表 及 情 况 说 明... 7 支 出 预 算 表 及 情 况 说 明... 1

标题

目 录 一 重 要 提 示... 3 二 公 司 主 要 财 务 数 据 和 股 东 变 化... 3 三 重 要 事 项... 6 四 附 录 / 22

目 录 引 言... 3 第 一 部 分 电 价 水 平 基 本 情 况...4 一 上 网 电 价...4 二 输 配 电 价...6 三 销 售 电 价...9 四 政 府 性 基 金 和 附 加...12 第 二 部 分 电 价 政 策 执 行 情 况...13 一 电 价 水 平 调 整 情

西安邮电学院本科教学工作简报

密 级:

市六届人大--次

目 录 前 言 第 一 章 近 年 来 合 同 行 政 监 管 及 相 关 工 作 改 革 创 新 情 况 第 二 章 2014 年 合 同 行 政 监 管 及 相 关 工 作 情 况 第 一 节 合 同 格 式 条 款 监 管 一 银 行 业 电 信 业 合 同 格 式 条 款 专 项 整 治 二

中国文联部门预算


( 十 ) 其 他 会 计 工 作 第 四 条 单 位 不 得 任 用 ( 聘 用 ) 不 具 备 会 计 从 业 资 格 的 人 员 从 事 会 计 工 作 不 具 备 会 计 从 业 资 格 的 人 员, 不 得 从 事 会 计 工 作, 不 得 参 加 会 计 专 业 技 术 资 格 考 试

附 件 : 顺 德 区 2015 年 高 中 阶 段 学 校 招 生 考 试 工 作 意 见 根 据 佛 山 市 顺 德 区 教 育 事 业 发 展 十 二 五 规 划 2015 年 顺 德 区 教 育 工 作 意 见 的 文 件 精 神 和 上 级 教 育 主 管 部 门 工 作 要 求, 结 合

<C1ACD6DDCAD0CAD0B3A1BCE0B6BDB9DCC0EDBED6C8A8D4F0C7E5B5A5A3A8B9ABCABEA3A92E786C73>

Microsoft Word - Future CEDAW C CHN 7-8.doc


国家发展改革委法治机关建设规划( 年)

烟台经济技术开发区政府采购竞争性磋商文件

<4D F736F F D20342E31332D C4EACCECBDF2CAD0C6D5CDA8B8DFB5C8D1A7D0A3D5D0C9FABFBCCAD4B9A4D7F7B9E6B6A82DCEC4BCFEB8E52E646F63>

2014 年 12 月 16 日 广 西 春 茂 投 资 股 份 有 限 公 司 ( 原 名 广 西 汽 牛 农 业 机 械 股 份 有 限 公 司, 以 下 简 称 春 茂 股 份 挂 牌 公 司 公 司 ) 召 开 2014 年 第 五 次 临 时 股 东 大 会, 通 过 向 特 定 对 象

四、实施步骤

Microsoft Word - 面向合格投资者公开发行公司债券上市预审核反馈意见公告(截至2015年10月8日)

律 师 执 业 必 须 以 事 实 为 根 据, 以 法 律 为 准 绳 律 师 执 业 应 当 接 受 国 家 社 会 和 当 事 人 的 监 督 律 师 依 法 执 业 受 法 律 保 护, 任 何 组 织 和 个 人 不 得 侵 害 律 师 的 合 法 权 益 第 四 条 司 法 行 政 部

(Microsoft Word - \270t\270g\254\354\305\252\270g\274\372\300y\255p\271\ docx)

自 觉 实 践 科 学 发 展 观, 扎 实 推 进 管 理 服 务 工 作 四 川 大 学 档 案 馆 ( 校 史 办 公 室 )2007 年 上 半 年 工 作 总 结 2007 年 上 半 年, 四 川 大 学 档 案 馆 ( 校 史 办 公 室 ) 在 学 校 党 委 行 政 领 导 和 上

2014


第 一 部 分 广 州 市 广 播 电 视 大 学 概 况 一 学 校 的 主 要 任 务 和 业 务 范 围 根 据 市 编 委 的 批 复, 广 州 市 广 播 电 视 大 学 为 市 局 级 事 业 单 位, 归 口 市 教 育 局 管 理 主 要 承 担 以 下 任 务 : ( 一 ) 承

Microsoft Word - 关于印发《云南保险业高级管理人员任职资格考试办法》的通知

<4D F736F F D20CBD5D6DDBFC6BCBCD1A7D4BAB8DFB5C8D1A7D0A3BDCCCAA6D7CAB8F1C8CFB6A8B9A4D7F7CAB5CAA9D2E2BCFB2E646F63>

自评报告合成.doc

第一部分 界定和测量歧视


一 前 言 2 作 為 我 國 儒 家 經 典 及 十 三 經 之 一, 孟 子 流 傳 千 年 不 輟, 足 以 證 明 其 對 中 華 文 化 的 重 要 性 與 影 響 力, 除 了 道 德 文 化 意 識 的 開 發, 也 弘 揚 仁 政 王 道 的 政 治 觀, 大 多 數 人 都 肯 定

法 工 作 计 划 滨 州 市 安 全 生 产 监 督 管 理 局 2016 年 2 月 4 日 ( 此 件 主 动 公 开 ) 2


附件3

关于印发西北政法大学“十二五”

君泰所 稿纸

的 权 利 义 务, 依 照 本 法 在 基 金 合 同 中 约 定 基 金 管 理 人 基 金 托 管 人 依 照 本 法 和 基 金 合 同 的 约 定, 履 行 受 托 职 责 通 过 公 开 募 集 方 式 设 立 的 基 金 ( 以 下 简 称 公 开 募 集 基 金 ) 的 基 金 份

关 于 建 立 失 联 ( 异 常 ) 私 募 机 构 公 示 制 度 的 通 知 私 募 基 金 登 记 备 案 相 关 问 题 解 答

000545C.DOC

世界上最伟大的推销员.doc

第 一 编 国 家 法 律 法 规 - 1 -

隐公(元年~十一年)

目 1 录 第 一 部 分 国 家 省 相 关 法 律 法 规 中 华 人 民 共 和 国 教 育 法 中 华 人 民 共 和 国 高 等 教 育 法 中 华 人 民 共 和 国 学 位 条 例 中 华 人 民 共 和 国 学 位 条 例

<4D F736F F F696E74202D20A5ACB355C0B8B0D1A6D2B8EAAEC6205BB0DFC5AA5D>

E /...ec6

(一)收入支出预算总表及情况说明

五 增 加 一 条 作 为 第 三 十 五 条, 内 容 为 : 按 照 消 防 技 术 标 准 不 需 要 设 置 火 灾 自 动 报 警 系 统 的 养 老 院 福 利 院 寄 宿 制 学 校 幼 儿 园 学 生 校 外 托 管 机 构 小 旅 店 小 型 娱 乐 场 所 以 及 生 产 存 储

民 政 部 废 止 的 政 策 性 文 件 目 录 序 号 标 题 文 号 社 会 组 织 管 理 1 民 政 部 关 于 转 发 民 政 部 财 政 部 关 于 进 一 步 明 确 社 会 团 体 会 费 政 策 的 通 知 的 函 民 函 2006) 240 号 2 民 政 部 关 于 进 一

国家信访局部门预算公开信息说明

目 录 第 一 部 分 国 家 能 源 局 概 况 一 主 要 职 能 二 基 本 情 况 说 明 三 部 门 决 算 单 位 构 成 第 二 部 分 国 家 能 源 局 2015 年 度 部 门 决 算 表 一 收 入 支 出 决 算 总 表 二 收 入 决 算 表 三 支 出 决 算 表 四 财

证券代码: 股票简称:滨化股份 公告编号:

证券代码: 证券简称:岳阳林纸 公告编号:

17 省 物 价 委 员 会 关 于 甘 肃 省 档 案 馆 实 行 利 用 档 案 收 费 的 批 复 甘 价 综 号 1988 年 5 月 30 日 省 物 价 委 18 省 物 价 委 员 会 广 播 电 视 厅 文 化 厅 关 于 制 定 我 省 电 影 电 视 录 像 带

宜 都 改 革 开 放 30 年 宜 都 年 鉴 编 纂 委 员 会 主 任 院 陈 行 甲 副 主 任 院 张 白 华 宋 化 力 胡 卫 东 委 员 院 陈 微 向 家 金 沈 绪 文 王 德 清 郑 蕾 艳 ( 女 ) 张 红 桥 ( 女 ) 张 鸿 庞 友 春 夏 友 生 史 玉 英 ( 女

中共中央党校2011年部门决算

<B8DFC8FDD3EFCEC4A3A838D4C2D4C2BFBCCAD4CCE2A3A9>


Microsoft Word - 诸教〔2016〕97号.doc

人身保险公司管理人员法律法规指引手册(最终版).doc

Transcription:

Drools 规 则 引 擎 在 实 现 业 务 逻 辑 中 的 应 用 刘 际 赵 广 利 大 连 海 事 大 学, 大 连 (116026) E-mail:henterji@gmail.com 摘 要 : 现 今, 企 业 级 java 应 用 中 的 业 务 逻 辑 越 来 越 复 杂, 而 这 些 复 杂 的 业 务 逻 辑 又 广 泛 的 分 布 在 应 用 程 序 中 无 论 是 软 件 的 开 发 或 是 软 件 的 维 护, 花 费 的 成 本 都 非 常 高, 且 软 件 开 发 的 难 度 将 越 来 越 大 而 规 则 引 擎 可 以 通 过 将 业 务 规 则 集 中 管 理 来 降 低 实 现 复 杂 业 务 逻 辑 的 组 件 的 复 杂 性, 同 时 降 低 应 用 程 序 的 维 护 和 可 扩 展 性 成 本 本 文 阐 述 了 如 何 使 用 Drools 规 则 引 擎 使 Java 应 用 程 序 的 开 发 更 能 适 应 用 户 需 求 变 化, 降 低 软 件 开 发 的 复 杂 度 关 键 词 :Drools, 规 则 引 擎, 业 务 逻 辑 1. 引 言 要 求 施 加 在 当 今 软 件 产 品 上 的 大 多 数 复 杂 性 是 行 为 和 功 能 方 面 的, 从 而 导 致 组 件 实 现 具 有 复 杂 的 业 务 逻 辑 企 业 级 Java 应 用 中 业 务 逻 辑 最 常 见 的 方 法 是 编 写 Java 代 码 来 实 现 需 求 文 档 的 规 则 和 逻 辑 在 大 多 数 情 况 下, 代 码 的 错 综 复 杂 性 使 得 维 护 和 更 新 应 用 程 序 的 业 务 逻 辑 成 为 一 项 令 人 畏 惧 的 任 务, 甚 至 对 于 经 验 丰 富 的 开 发 人 员 来 说 也 是 如 此 业 务 逻 辑 需 求 的 任 何 更 改, 不 管 多 么 简 单, 仍 然 会 产 生 重 编 译 和 重 部 署 的 成 本 而 与 此 同 时, 出 于 以 下 原 因, 实 现 应 用 程 序 业 务 逻 辑 的 组 件 可 能 必 须 更 改 [4] : (1) 在 开 发 期 间 或 部 署 后 修 复 代 码 缺 陷 ; (2) 应 付 特 殊 状 况, 即 客 户 一 开 始 没 有 考 虑 到 的 业 务 逻 辑 ; (3) 处 理 客 户 已 更 改 的 业 务 目 标 ; (4) 符 合 组 织 对 敏 捷 或 迭 代 开 发 过 程 的 使 用 如 果 存 在 以 上 这 些 可 能 性, 尤 其 是 当 更 改 复 杂 if-else 逻 辑 的 开 发 人 员 并 不 是 以 前 编 写 代 码 的 开 发 人 员 时, 则 更 迫 切 需 要 一 个 无 需 太 多 复 杂 性 就 能 处 理 业 务 逻 辑 更 改 的 应 用 程 序 2. Drools 规 则 引 擎 Drools 是 Codehaus 的 一 个 开 源 项 目 最 近 被 纳 入 JBoss 门 下, 更 名 为 JBoss Rules, 成 为 了 JBoss 应 用 服 务 器 的 规 则 引 擎 [2] Drools 是 用 Java 语 言 编 写 的 开 放 源 码 规 则 引 擎, 基 于 Charles Forgy 的 RETE 算 法 的 规 则 引 擎 的 实 现 Drools 允 许 使 用 声 明 方 式 表 达 业 务 逻 辑 可 以 使 用 Java/XML 语 法 编 写 规 则, 这 对 于 入 门 Drools 十 分 有 用, 因 为 Java 代 码 可 以 直 接 嵌 入 规 则 文 件 中 Drools 还 具 有 如 下 一 些 优 点 : (1) 非 常 活 跃 的 社 区 ; (2) 易 用 ; (3) 快 速 的 执 行 速 度 ; (4) 在 Java 开 发 人 员 中 流 行 ; (5)JSR 94 [1] 兼 容 (JSR 94 是 Java Rule Engine API); (6) 免 费 3. 本 文 所 使 用 的 实 例 本 文 利 用 一 个 简 单 的 实 例 来 说 明 如 何 使 用 Drools 规 则 引 擎 来 实 现 业 务 逻 辑 - 1 -

下 列 假 设 为 应 用 程 序 解 决 的 虚 构 问 题 设 置 了 场 景 : (1) 某 人 的 年 龄 大 于 或 等 于 18 岁, 则 允 许 登 记 信 用 卡 ; (2) 某 人 的 年 龄 小 于 18 岁, 则 不 允 许 登 记 信 用 卡 3.1 不 利 用 规 则 引 擎 实 现 的 代 码 实 例 清 单 1. 使 用 if-else 语 句 实 现 业 务 规 则 逻 辑 String personname = person.getname(); int age = person.getage(); if (age >= 18) { System.out.println("credit allowed for " + personname); else { System.out.println("credit denied for " + personname); 清 单 1 中 的 代 码 只 是 一 个 实 例, 很 简 单, 不 是 太 复 杂 但 是 企 业 级 java 应 用 中 的 业 务 逻 辑 要 远 比 这 个 复 杂 得 多 如 果 要 对 这 些 复 杂 的 业 务 逻 辑 进 行 更 改, 需 要 十 分 小 心 一 堆 互 相 缠 绕 的 if-else 语 句 正 试 图 捕 获 已 经 为 应 用 程 序 标 识 的 业 务 逻 辑 如 果 您 对 业 务 规 则 不 甚 了 解, 就 无 法 一 眼 看 出 代 码 的 意 图 [4] 3.2 利 用 Drools 规 则 引 擎 实 现 的 代 码 实 例 (1) 规 则 规 则 是 对 商 业 知 识 的 编 码 一 条 规 则 有 attributes, 一 个 Left Hand Side(LHS) 和 一 个 Right Hand Side(RHS) rule "name" <attribute> <value> End <LHS> <RHS> 清 单 2. 规 则 的 一 般 形 式 业 务 规 则 的 理 论 基 础 是 : 设 置 一 个 或 多 个 条 件, 当 满 足 这 些 条 件 时 会 触 发 一 个 或 多 个 操 作 [3] 规 则 的 LHS 由 一 个 或 多 个 条 件 (Conditions) 组 成 当 所 有 的 条 件 (Conditions) 都 满 足 并 为 真 时,RHS 将 被 执 行 RHS 被 称 为 结 果 (Consequence) LHS 和 RHS 类 似 于 清 单 3 中 的 if 语 句 : if (<LHS>) { <RHS> 清 单 3. 与 规 则 等 价 的 if 语 句 (2) 本 文 中 所 用 实 例 的 规 则 文 件 - 2 -

rule "Credit Allowed" end person : Person( age >= 18 ) 清 单 4. 本 文 中 所 用 实 例 的 规 则 文 件 credit.drl( 截 取 ) System.out.println( "credit allowed for " + person.getname() ); rule "Credit Denied" end Person( personname : name, age < 18 ) System.out.println( "credit denied for " + personname ); (3) 构 建 核 心 代 码 drl 规 则 文 件 创 建 后, 它 们 被 读 入 一 个 解 析 器, 使 用 ANTLR 3 语 法 进 行 解 析 解 析 器 对 语 法 进 行 正 确 性 的 检 查, 然 后 产 生 一 种 中 间 结 构 descr,descr 用 AST 来 描 述 规 则 AST 然 后 被 传 到 PackageBuilder, 由 PackagBuilder 来 产 生 Packaged 对 象 PackageBuilder 还 承 担 着 一 些 代 码 产 生 和 编 译 的 工 作, 这 些 对 于 产 生 Package 对 象 都 时 必 需 的 RuleBase 是 一 个 运 行 时 组 件, 它 包 含 了 一 个 或 多 个 Package 对 象 可 以 在 任 何 时 刻 将 一 个 Package 对 象 加 入 或 移 出 RuleBase 对 象 一 个 RuleBase 对 象 可 以 在 任 意 时 刻 实 例 化 一 个 或 多 个 WorkingMemory 对 象, 在 它 的 内 部 保 持 对 这 些 WorkingMemory 的 弱 引 用 WorkingMemory 由 一 系 列 子 组 件 组 成 当 应 用 程 序 中 的 对 象 利 用 assertobject() 方 法 被 assert 进 WorkingMemory 后, 调 用 fireallrules() 方 法 来 执 行 规 则 清 单 5. 本 文 中 所 用 实 例 的 核 心 代 码 CreditExample.java( 截 取 ) // PackageBuilder 提 供 了 简 便 的 API, 利 用 addpackagefromdrl 方 法 // 从 传 入 的 Reader 实 例 产 生 descr AST 模 型 PackageBuilder builder = new PackageBuilder(); try { Reader arg0 = new InputStreamReader(CreditExample.class.getResourceAsStream("/credit.drl")); builder.addpackagefromdrl(arg0); catch (DroolsParserException e) { catch (IOException e) { // RuleBase 用 RuleBaseFactory 来 实 例 化, 默 认 返 回 一 个 ReteOO RuleBase // 可 以 传 入 参 数 来 指 定 采 用 ReteOO 或 Leaps // 然 后, 用 addpackage 方 法 加 入 Package 实 例 RuleBase rulebase = RuleBaseFactory.newRuleBase(); try { rulebase.addpackage(builder.getpackage()); - 3 -

catch (Exception e) { // rulebase 保 持 着 到 它 所 产 生 的 WorkingMemoryd 的 弱 引 用 WorkingMemory workingmemory = rulebase.newworkingmemory(); // 业 务 逻 辑 相 关 代 码 // // 调 用 fireallrules() 激 发 规 则 workingmemory.fireallrules(); 这 样, 原 本 需 要 写 在 程 序 中 的 业 务 逻 辑 便 抽 取 出 来, 形 成 一 个 规 则 文 件, 当 我 们 需 要 修 改 这 些 规 则 的 时 候 就 不 需 要 对 编 译 好 的 代 码 进 行 修 改, 而 只 是 修 改 一 下 规 则 文 件 中 的 具 体 规 则 即 可 同 时 也 就 省 去 了 重 新 编 译 和 部 署 的 成 本 另 一 方 面, 对 规 则 的 集 中 管 理 也 使 得 开 发 和 维 护 人 员 将 更 多 的 精 力 投 入 到 程 序 的 流 程 上, 而 业 务 规 则 也 可 以 由 熟 悉 业 务 逻 辑 的 规 则 管 理 人 员 来 进 行 集 中 开 发 和 维 护 上 从 而 大 大 提 高 了 应 用 的 开 发 效 率 和 维 护 成 本 4. 结 束 语 本 文 简 单 介 绍 了 基 于 规 则 开 发 应 用 系 统 的 一 些 主 要 概 念, 并 用 Java 和 Drools 开 发 了 一 个 基 于 规 则 引 擎 的 示 例 应 用 从 实 例 可 以 看 出 规 则 引 擎 技 术 为 管 理 多 变 的 业 务 逻 辑 提 供 了 一 种 解 决 方 案 规 则 引 擎 既 可 以 管 理 应 用 层 的 业 务 逻 辑 又 可 以 使 表 示 层 的 页 面 流 程 可 订 制 这 就 给 软 件 架 构 师 设 计 大 型 信 息 系 统 提 供 了 一 项 新 的 选 择 - 4 -

参 考 文 献 [1] 缴 明 洋 谭 庆 平. Java 规 则 引 擎 工 作 原 理 及 其 应 用. 计 算 机 与 信 息 技 术, 2006-04-06. [2] FORGYCL.Rete:a fast Algorithm for the many pattern/many object pattern match problem[j].artificial Intelligence,1982:17-37. [3] 李 国 乐. Java 规 则 引 擎 与 其 API. http://www-128.ibm.com/developerworks/cn/java/j-java-rules/. 2005-07-01 [4] Ricardo Olivieri. 使 用 Drools 规 则 引 擎 实 现 业 务 逻 辑. http://www-128.ibm.com/developerworks/cn/java/j-drools/. 2006-06-19 Application of Business Logic with Drools Rule Engine Liu Ji,Zhao Guangli Dalian Maritime University, Dalian Liaoning (116026) Abstract Nowadays, in enterprise Java application, business logics become more and more complicated, and these complex business logics are widespread distributed in the application. The costs both in the perspective of development and maintenance are very high, and very difficult. But rule engine, which centralized manage the business rules, can reduce the complexity of the realization of complex business logics, in mean while, reduce the costs of development and maintenance. This paper will show you how to use Drools to do this in an enterprise Java application. Keywords: Drools; Rule Engine; Business Logic 作 者 简 介 : 刘 际, 男, 大 连 海 事 大 学 计 算 机 学 院 硕 士 研 究 生, 在 Web 架 构 以 及 企 业 级 Java 应 用 方 面 有 较 丰 富 的 经 验 ; 赵 广 利, 男, 副 教 授, 大 连 海 事 大 学 计 算 机 学 院 硕 士 生 导 师, 主 要 从 事 网 络 方 向 的 研 究 - 5 -