《Drools7.0.0.Final规则引擎教程》第1章 Drools简介

1.1 什么是规则引擎

规则引擎是由推理引擎发展而来,是一种嵌入在应用程序中的组件,实现了将业务决策从应用程序代码中分离出来,并使用预定义的语义模块编写业务决策。接受数据输入,解释业务规则,并根据业务规则做出业务决策。

大多数规则引擎都支持规则的次序和规则冲突检验,支持简单脚本语言的规则实现,支持通用开发语言的嵌入开发。目前业内有多个规则引擎可供使用,其中包括商业和开放源码选择。开源的代表是Drools,商业的代表是Visual Rules ,I Log。

1.2 Drools规则引擎

Drools(JBoss Rules )具有一个易于访问企业策略、易于调整以及易于管理的开源业务规则引擎,符合业内标准,速度快、效率高。业务分析师或审核人员可以利用它轻松查看业务规则,从而检验是否已编码的规则执行了所需的业务规则。

JBoss Rules的前身是Codehaus的一个开源项目叫Drools。现在被纳入JBoss 门下,更名为JBoss Rules,成为了JBoss应用服务器的规则引擎。

Drools是为Java量身定制的基于Charles Forgy的RETE算法的规则引擎的实现。具有了OO接口的RETE,使得商业规则有了更自然的表达。

1.3 Drools使用概览

Drools是Java编写的一款开源规则引擎,实现了Rete算法对所编写的规则求值,支持声明方式表达业务逻辑。使用DSL(Domain Specific Language)语言来编写业务规则,使得规则通俗易懂,便于学习理解。支持Java代码直接嵌入到规则文件中。

Drools主要分为两个部分:一是Drools规则,二是Drools规则的解释执行。规则的编译与运行要通过Drools 提供的相关API 来实现。而这些API 总体上游可分为三类:规则编译、规则收集和规则的执行。

Drools是业务规则管理系统(BRMS)解决方案,涉及以下项目:

  • Drools Workbench:业务规则管理系统
  • Drools Expert:业务规则引擎
  • Drools Fusion:事件处理
  • jBPM:工作流引擎
  • OptaPlanner:规划引擎

1.4 Drools版本信息

目前Drools发布的最新版本为7.0.0.Final,其他版本正在研发过程中。官方表示后续版本会加快迭代速度。本系列也是基于此版本进行讲解。

从Drools6.x到7版本发生重大的变化项:

  • @PropertyReactive不需要再配置,在Drools7中作为默认配置项。同时向下兼容。
  • Drools6版本中执行sum方法计算结果数据类型问题修正。
  • 重命名TimedRuleExecutionOption。
  • 重命名和统一配置文件。

Drools7新功能:
(1)支持多线程执行规则引擎,默认为开启,处于试验阶段。
(2)OOPath改进,处于试验阶段。
(3)OOPath Maven 插件支持。
(4)事件的软过期。
(5)规则单元RuleUnit。

1.5 JDK版本及IDE

从Drools6.4.0开始已经支持JAVA8,最低版本JDK1.5。可通过Eclipse插件进行集成,也可通过Intellij IDEA中插件进行集成开发。Drools提供了一个Eclipse的集成版本,不过它核心依赖于JDK1.5。
关键Eclipse的集成官方有详细的文档可参考,这里不再赘述。本系列后续项目及示例演示均采用JAVA8和Intellij IDEA。

1.6 官方资料

官网地址:http://www.drools.org/
官方最新文档:https://docs.jboss.org/drools/release/7.0.0.Final/drools-docs/html_single/index.html

关于

你的支持是我努力的最大动力!此系列课程正在持续更新中,相关讨论QQ(593177274)已经建立,欢迎大家加入讨论。
这里写图片描述

  • 11
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序新视界

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值