drools学习笔记

Drools简介:
    Drools 是用 Java 语言编写的开放源码规则引擎,使用 Rete 算法对所编写的规则求值。Drools 允许使用声明方式表达业务逻辑。可以使用非 XML 的本地语言编写规则,从而便于学习和理解。并且,还可以将 Java 代码直接嵌入到规则文件中,drools与 Java Rule Engine API(JSR 94)兼容。
    Rete算法是一种前向规则快速匹配算法,其匹配速度与规则数目无关。Rete是拉丁文,对应英文是net,也就是网络。Rete算法通过形成一个rete网络进行模式匹配,利用基于规则的系统的两个特征,即时间冗余性(Temporal redundancy)和结构相似性(structural similarity),提高系统模式匹配效率。Rete算法由 Carnegie Mellon University 的Dr Charles L. Forgy设计发明,在1974年初次发表他的工作底稿。

Drools软件包介绍:
    Drools Guvnor (Business Rules Manager) 规则集管理器
    Drools Expert (rule engine) 规则引擎
    jBPM 5 (process/workflow) 工作流
    Drools Fusion (event processing/temporal reasoning) 规则集引擎搜索与规划
    Drools Planner (automated planning) 决策表

下载包介绍:
    下载地址:http://download.jboss.org/drools/release
    drools-distribution-5.4.0.Final.zip  规则引擎相关类库
    drools-osgi-bundles-distribution-5.4.0.Final.zip 规则引擎osgi规范的类库
    drools-planner-distribution-5.4.0.Final.zip  决策集 相关类库
    droolsjbpm-integration-distribution-5.4.0.Final.zip 工作流相关类库
    droolsjbpm-tools-distribution-5.4.0.Final.zip  工作流开发工具类库
    guvnor-distribution-5.4.0.Final.zip 规则集管理器类库,规则管理和热部署
    guvnor-distribution-wars-5.4.0-20120413-jboss-eap-5.1.war
    guvnor-distribution-wars-5.4.0-20120516-jboss-as-7.0.war

eclipse插件安装 :
    插件安装地址:http://download.jboss.org/drools/release/(版本)/org.drools.updatesite

规则引擎核心类介绍:
    KnowledgeBuilder   规则load和 编译
    KnowledgeBase  知识库,保存编译后的规则的容器
    StatefulKnowledgeSession  执行规则的有状态会话,需要主动close
    StatelessKnowledgeSession 执行规则的无状态会话,不需要主动close

例子:
        官方包里和插件内置的样例已经非常详细和简单易懂。

猜你喜欢

转载自ywjgift2012.iteye.com/blog/1746208