- 浏览: 49957 次
- 性别:
- 来自: 杭州
最新评论
-
NIIT_zhu:
Wangwei86609 写道非常好的规则引擎框架,支持决策树 ...
规则引擎教程--规则池 -
Wangwei86609:
非常好的规则引擎框架,支持决策树和多线程运行规则https:/ ...
规则引擎教程--规则池 -
flyqantas:
真是牛人呀,开始寻找不同规则实现的共性!
Ilog、Drools、Jess规则引擎的Rule Language 对比 -
NIIT_zhu:
felix_alone2012 写道恩,thanks楼主的耐心 ...
规则引擎案例 -
felix_alone2012:
恩,thanks楼主的耐心解答,很希望和这样的技术牛人一起交流 ...
规则引擎案例
文章列表
Ilog JRules 是最有名的商用BRMS,刚拿了JOLT;
Drools 是最活跃的开源规则引擎,一路高歌猛进;
Jess 是Clips的java实现,就如JRuby之于Ruby,是AI系的代表。
今天对比了一下这三个颇有代表性的规则引擎的规则语言。其中Ilog是商业产品,没有机会实战。
1.一样的If--Then 句式与Rete引擎
三者都邑把原本杂乱不勘的if---else---elseif----else,拆成N条带优先级的
"If 前提语句 then 实施语句" 的句式。
三者都主要使用foreward-chaining的R ...
展示一个可以采用文本方式编写配置业务规则的方式
首先我们在对象库中把需要用到的变量全部定义好,举个例子,如下所示
变量定义完成后,就可以用文本的方式来编写规则了
然后我们可以直接把文本中写好的规则 复制到规则配置器中
在企业的业务和管理中,Excel总免不了被大量使用,比如说用来记录批量的字典数据,保存特定的对应关系的数据,尤其是业务和财务部门,对Excel的使用就更频繁了,一般情况是,40-50个人分配一个专门的服务器来保存这些Excel数据文件,但是这其中有一些问题
1:日积月累,Excel数目繁多
2:Excel数据量大,可能有200-300M
3:Excel不能很好的形成版本管理
4:随着人员流失,造成资源流失不可追溯
通过应用规则引擎,将规则引擎中的决策表和Excel结合起来,可以在很大的 ...
外部调用接口对象
点击“对象库”,选择选项卡“外部调用”,点击 ,如下图:
弹出窗体,在文本框中输入类的全名“com.flagleader.test.Test”,选择该类型后确定,如下:
弹出窗体,勾选方法“Test()”,如下图: 点击确定,显示如下,右键名称为“Test()” —“添加子方法”,如下图:
弹出窗体,勾选方法“counter(double,double)”,如下:
点击确定,显示如下:
Java类对象
右键点击“对象库” —“添加java类对象”,如下图:
弹出窗体,在文本框中输入类的全名“com.flagleader.test.Test”,选择该类型后确定,如下: 显示如下,勾选上方法“count(double,double)”,如下如: 点击规则包“java类相关” —“添加规则”,并将其命名为“java类对象”,如下图:
根据规则“接口实例”配置的方法,配置如下规则
接口实例
右键点击“对象库” —“添加接口实例”,如下图: 弹出如下窗体:
输入接口的参数信息:
点击接口“求和”,选择选项卡“求和操作”,点击添加图标 ,如下:
弹出如下窗体,勾选方法“counter(double,double)”,如下图:
规则引擎调用Java类
通过myEclipse编写一个简单工程,其中方法是两数相加等到结果,既结果1=输入值1+输入值2。实现规则调用外部接口的方法有三种。
1:接口实例:在myEclipse中制作一个TestInterface.java接口类和Test.java实现类,在Test.java实现类中写一个double型的方法,该方法中接收参数有两个,两数相加等到结果值。 2:Java类对象:在myEclipse中制作一个TestInterface.java接口类和Test.java实现类,在Test.java实现类中写一个double型的方法,该方 ...
查询分析器
弹出窗体“执行sql语句”,在下面编辑sql语句,编辑完后点击执行,结果查看在“执行结果数据”选项卡中,如下图:
生成数据库连接配置文件
右键点击数据库连接文件“hr”—“生成数据库连接配置文件”,如下图:
弹出窗体,将生成的hr.conf文件放在规则引擎安装目录下的class目录下,点击保存,如下图:
保存后会弹出提示,提示如下:
视图
右键点击数据库连接文件“hr”—“添加视图”,如下图: 勾选上视图“view_dep”,点击“确定”,如下图:
点击视图“view_dep”,选择选项卡“view_depViewModel.data”,查询视图信息,如下图:
存储过程
右键点击数据库连接文件“hr”—“添加存储过程”,如下图:
勾选上视图“add”,点击“确定”,如下图:
SQL执行语句
右键点击数据库连接文件“hr”—“添加SQL执行语句”,如下图:
弹出窗体,如下图:
将显示名称改为“部门名称”,返回至类型设置为“string”,在编写sql语句,如下图:
点击确定后,如下图:
查询结果集
右键点击数据库连接文件“hr”—“添加查询结果集”,如下图: 弹出窗体,如下图:将显示名称改为“根据部门编号查询部门名称”,在编写sql语句,如下图:
点击确定后,查询结果集就生成了,查看“根据部门编号查询部门名称”结果集,在弹出窗体中的“dipid”文本框中输入“1”,如下图:
- 2013-08-21 09:22
- 浏览 595
- 评论(0)
根据向导生成查询语句
找到规则包的对象库中数据库连接文件“hr”,然后在上面点击右键选择“根据向导生成查询语句”,如下图:
弹出“打开”窗体,开始寻找dbs文件,找到后点击打开,如下图:
弹出窗体,选择“部门信息”,点击“确定”,如下图: 弹出窗体,勾选上部门编号、部门名称,点击“下一步”,进行条件设置,如果不需要条件,可点击“完成”,如下图:勾选上部门编号,点击“完成”,如下图:这样根据部门编号查询部门编号和名称的查询语句就生成好了,将弹出窗口中的显示名称改为“根据部门编号查询部门信息”,然后点击“确定”,如下图:
本章通过经典的“Hello World”、“员工管理”、“学生管理”等案例,开始VisualRules开发的最初体验,建立对 VisualRules最基本的感性认识。
通过对案例的分析,帮助您更深刻地理解最核心的数据流转原理和处理过程。 通过同案例的讲解,了解一下几个方面: 在规则引擎中创建,配置,发布规则包。 规则包文件存储方式 ...
规则引擎是面向技术人员的工具。目前技术人员为什么会选择规则引擎来使用,主要是基于如下情形来考虑:
1、业务逻辑从程序代码中脱离出来。通过配置来实现业务规则。
2、业务规则的变更,可以直接由用户通过web界面来修改和变更。
针对这一类需求情况,其实我们有一般由以下的几种可选方案:
1、选择规则引擎来实现。
现有的规则引擎产品一般都能满足以上这两种要求。可以不用代码,比如Java来实现业务逻辑,而采用规则语言通过规则配置器来完成。用户需要变更时,一般都会提供C/S或者B/S版本的规则配置器来实现。
2、采用动态语言:
...
目前的系统中,前端的变化越来越多样。光web前端而言,HTML+JS,JQuery,Ext以及其他的各种框架等。曾经Ext刚出来时,我们为其美观、整洁的样式所吸引,但当我们开始熟悉并使用Ext时,却发现其界面让人审美疲劳。前 ...