转载自:Drools Drools(JBoss Rules )具有一个易于访问企业策略、易于调整以及易于管理的开源业务规则引擎,符合业内标准,速度快、效率高。业务分析师或审核人员可以利用它轻松查看业务规则,从而检验是否已编码的规则执行了所需的业务规则。Drools是为Java量身定制的基于Charles Forgy的RETE算法的规则引擎的实现。具有了OO接口的RETE,使得商业规则有了更自然的表达。 1、什么是Drools
2、Drools学习过程中编写的相关例程的github网址: https://github.com/ShiqiRen/nut-drools.git
3、MyEclipse如何打开一个java工程
如何打开一个java项目? 1.File-->Import 2.选择Existing Projects into Workspace 3.选择要打开的项目: MyEclipse工程文件夹中会有“.project” 文件
(3)Drools环境安装 参考:Drools入门-----------环境搭建,分析Helloworld Drools官网:http://www./
Eclipse3.5安装Drools5.2.0.Final插件 到Drools下载页面(现在是http://www./download/download.html) -下载并解压Drools:drools-distribution-5.2.0.Final.zip (解压目录随意) -下载并解压插件:droolsjbpm-tools-distribution-5.2.0.Final.zip(解压目录随意) - 打开 Eclipse. - 点 "Help"—"Install new software..." - 点击 "Add..." - 在name中输入"DroolsLocaluUpdateSite"(名字随意起) - 点击 "Local..." 并且选择"......./binaries/org.drools.updatesite" (此目录在刚刚解压的插件中) - 点击OK - 选择所以插件。 -下面就是点击next,finish
插件安装完后还需在Eclipse中添加Drools的运行环境: - 点击"Windows"—"Preferencess" - 在窗口的树形菜单中选择"Drools"—"Installed Drools Runtimes" - 在右边的空的Drools运行库列表中,点击"Add" - 在弹出窗口中name输入DroolsRuntime(随意起个名字),在Path选择"......./drools-distribution-5.2.0.Final\drools-distribution-5.2.0.Final\binaries" (此目录在刚刚解压的Drools中), - 点击"OK" - 点击"OK" ----------------------------------------------------------------------------------------------------------------------- HelloWorld例子
- "New"—"Project"—"Drools Project"—输入项目名—"Next" - 这里显示可以选择要生成的样例文件的类型(3种类型的6种样例文件:规则引擎样例的规则文件和java测试类;决策表开发的决策表文件和java测试类;工作流的流程文件和java测试类)。勾选规则引擎样例的规则文件和java测试类,点击"Next"
- 进入到Drools运行时库的选择界面。环境搭建中已经设置了默认的运行时库,这里加载。然后选择编译代码所使用的规则引擎版本,这里选择"Drools 5.1 or above",点击"Finish" Sample.drl :规则引擎的样例文件,该文件根据Drools规则语言语法编写
(4)Drools基本语法规则 参考:Drools学习笔记 .drl文件 :规则引擎的样例文件,该文件根据Drools规则语言语法编写。 说明了规则引擎的规则。
(5)规则引擎 常用在商业规则中。 规则引擎由推理引擎发展而来,是一种嵌入在应用程序中的组件,实现了将业务决策从应用程序代码中分离出来,并使用预定义的语义模块编写业务决策。接受数据输入,解释业务规则,并根据业务规则做出业务决策。 为什么要用规则引擎,规则引擎有什么用(相比于一般用if else方法写的简单逻辑规则) 参考:Java规则引擎:开源Drools项目 (1)规则引擎可以让你的系统变得更简单,因为你无需在代码中编写商务逻辑,如怎样选择股票,选择股票过程中奇怪的条件组合等。这些逻辑不再进入你的代码。你将可以专注于数据模型。 (2)通过从应用代码中剥离出易变的商业逻辑,你的效率会更高。 简单应用可能并不能从规则系统中获益。但如果你开发一个大型系统,有很多易变的商业逻辑,你可以考虑在应用中集成规则引擎。 |
|