首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

动态规则

动态规则,是做规则引擎最想知道的问题,小编也加过一些群,大部分的人都喜欢问这样的问题。

规则只能写在文件里嘛

规则引擎能做什么

规则可动态配置嘛

在项目中使用规则引擎,业务人员怎么用呢?

规则变化了怎样才能不重启项目就能用呢

......总是一脸懵逼的在研究着...

小编今天就给大家分析说明一下:

首先规则可以写法有很多,像规则决策表就是写在Excel中的,规则文件,重点是还可以以字符串的方式编写,聪明的读者是不是有写到什么了?

问题1:规则只能写在文件里嘛?

回答:那肯定是不会的。如何证明呢:请看如下代码:

@Test

public void ruleDaseTestString() throws Exception {

KieHelper helper = new KieHelper();

helper.addContent(myRule, ResourceType.DRL);

KieSession ksession = helper.build().newKieSession();

int i = ksession.fireAllRules();

ksession.dispose();

}

问题二:规则引擎能做什么?

回答:规则引擎有强大的业务代码分离功能,对项目中,不变的业务,可变的业务,经常变化的业务进行统一管理。

问题三:规则可动态配置嘛

回答:答案很明显,我们可以通过以下7种方式对规则进行编辑进行动态变化

拼接规则语法,形成完成的规则内容,通过string方式调用规则

通过模板方式对规则进行修改

workbench自动扫描

workbench整合kie-server

通过执行规则文件执行规则

动态创建kjar

官方提供的方式

问题四:在项目中使用规则引擎,业务人员怎么用呢?

回答:看完前三个问题,我们大致有一个方向了,但总结起来就两大类:

通过Drools自带的workbench

通过拼接字符串方式实现页面的定制化。

动态规则核心是变化规则库中的规则,那什么是规则库呢,小编下次带着您一块解读Drools规则库的内部。前四个问题小编大致说明了一下,相信第五个问题读者已然明了,小编就不多说了

有的读者就会问小编了。动态规则实现有两大类,实现方式大致有7种,那这7种都有什么呢,小编你不给说说啊,哈哈, 那小编就来简单的说一说呗:

方式1:通过string方式调用规则

在回答问题1时,小编已经将这种方式的代码写到上面了

方式2:通过规则模板

方式3:workbench自动扫描

方式4:workbench整合kie-server

方式5:通过执行规则文件执行规则

方式6与方式7内容比较多,下次再与大家分享

----请看下方↓↓↓↓↓↓↓

百度搜索 Drools从入门到精通:可下载开源全套Drools教程

深度Drools教程不段更新中:

更多Drools实战陆续发布中………

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180425G0VI7W00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券