Drools规则引擎浅谈.docx

  1. 1、本文档共68页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Drools规则引擎浅谈

1. 学习前的准备Drools是一款基于Java的开源规则引擎,所以在使用Drools之前需要在开发机器上安装好JDK环境,Drools5要求的JDK版本要在1.5或以上。开发环境搭建大多数软件学习的第一步就是搭建这个软件的开发环境,Drools也不例外。本小节的内容就是介绍如何搭建一个Drools5的开发、运行、调试环境。下载开发工具Drools5提供了一个基于Eclipse3.4的一个IDE开发工具,所以在使用之前需要到网站下载一个3.4.x版本的Eclipse,下载完成之后,再到/drools/downloads.html 网站,下载Drools5的Eclipse插件版IDE及Drools5的开发工具包,如图1-1所示。除这两个下载包以外,还可以把Drools5的相关文档、源码和示例的包下载下来参考学习使用。将下载的开发工具包及IDE包解压到一个非中文目录下,解压完成后就可以在Eclipse3.4上安装Drools5提供的开发工具IDE了。1.1.2. 安装Drools IDE打开Eclipse3.4所在目录下的links目录(如果该目录不存在可以手工在其目录下创建一个links目录),在links目录下创建一个文本文件,并改名为drools5-ide.link,用记事本打开该文件,按照下面的版本输入Drools5 Eclipse Plugin文件所在目录:path=D:\\eclipse\\drools-5.0-eclipse-all这个值表示Drools5 Eclipse Plugin文件位于D盘eclipse目录下的drools-5.0-eclipse-all下面,这里有一点需要注意,那就是drools-5.0-eclipse-all文件夹下必须再包含一个eclipse目录,所有的插件文件都应该位于该eclipse目录之下,接下来要在win dos下重启Eclipse 3.4,检验Drools5 IDE是否安装成功。进入win dos,进入Eclipes3.4所在目录,输入eclipse –clean启动Eclipse3.4。启动完成后打开菜单Window寐Preferences,在弹出的窗口当中如果能在左边导航树中发现Drools节点就表示Drools5 IDE安装成功了,如图1-2所示。IDE安装完成后,接下来需要对Drools5的IDE环境进行简单的配置,打开菜单Window寐Preferences,在弹出的窗口当中选择左边导航树菜单Drools寐Installed DroolsRuntimes设置Drools5 IDE运行时依赖的开发工具包,点击“Add…”按钮添加一个开发工具包,如图1-3所示。图1-3当中添加了一个开发工具包,名称为“drools-5.0.0”,对应的工具包目录为D盘doc\about rule\drools5.x\drools-5.0-bin目录。添加完成后这样Drools5的开发环境就搭好了。下面我们就来利用这个环境编写一个规则看看运行效果。编写第一个规则规则的编译与运行在Drools当中,规则的编译与运行要通过Drools提供的各种API来实现,这些API总体来讲可以分为三类:规则编译、规则收集和规则的执行。完成这些工作的API主要有KnowledgeBuilder、KnowledgeBase、StatefulKnowledgeSession、StatelessKnowledgeSession、、等,它们起到了对规则文件进行收集、编译、查错、插入fact、设置global、执行规则或规则流等作用,在正式接触各种类型的规则文件编写方式及语法讲解之前,我们有必要先熟悉一下这些API的基本含义及使用方法。KnowledgeBuilder规则编写完成之后,接下来的工作就是在应用的代码当中调用这些规则,利用这些编写好的规则帮助我们处理业务问题。KnowledgeBuilder的作用就是用来在业务代码当中收集已经编写好的规则,然后对这些规则文件进行编译,最终产生一批编译好的规则包(KnowledgePackage)给其它的应用程序使用。KnowledgeBuilder在编译规则的时候可以通过其提供的hasErrors()方法得到编译规则过程中发现规则是否有错误,如果有的话通过其提供的getErrors()方法将错误打印出来,以帮助我们找到规则当中的错误信息。创建KnowledgeBuilder对象使用的是KnowledgeBuilderFactory的newKnowledgeBuilder方法。代码清单1-1就演示了KnowledgeBuilder的用法。代码清单1-1:import java.util.Collection;importjava.util.Iterator;import or

文档评论(0)

pangzilva + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档