Drools规则引擎远程加载规则文件
来源:互联网 发布:windows 共享 无权限 编辑:程序博客网 时间:2024/05/18 07:12
1.创建一个drools工程:
2.创建一个Dynamic Web Project(主要体现远程加载规则文件,将规则文件放在这个工程中,并配上服务器):
其中,Sample.drl是个规则文件,在浏览器中访问如图所示:
3.再drools工程中创建一个类,我这里类名为:RemoteLoadRule,意思就是远程加载规则文件
代码为:
package com.sample;import org.drools.KnowledgeBase;import org.drools.KnowledgeBaseFactory;import org.drools.builder.KnowledgeBuilder;import org.drools.builder.KnowledgeBuilderFactory;import org.drools.builder.ResourceType;import org.drools.io.ResourceFactory;import org.drools.runtime.StatefulKnowledgeSession;import com.sample.DroolsTest.Message;/** * 远程加载规则文件 * @author sihang * */public class RemoteLoadRule {public static void main(String [] args) {//远程加载规则包KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();kbuilder.add(ResourceFactory.newUrlResource("http://localhost:8080/test/Sample.drl"), ResourceType.DRL);//创建知识库KnowledgeBase kbase = KnowledgeBaseFactory.newKnowledgeBase();//将规则包加载到知识库中kbase.addKnowledgePackages(kbuilder.getKnowledgePackages());//创建Fact对象Message message = new Message(); message.setMessage("Hello World"); message.setStatus(Message.HELLO); //创建KnowledgeSession,将Fact对象插入到WorkingMemory中 StatefulKnowledgeSession ksession = kbase.newStatefulKnowledgeSession(); ksession.insert(message); ksession.fireAllRules(); ksession.dispose();}}
4.运行RemoteLoadRule类,结果如下:
远程加载规则文件成功!
其中:如果远程 加载的规则是基于决策表类型的规则文件,则将ResourceType指定为决策表类型就可以了!
希望这篇文章对于研究规则引擎的人有所帮助!
1 0
- Drools规则引擎远程加载规则文件
- Drools动态加载规则文件
- Drools动态加载规则文件
- [Drools]JAVA规则引擎 -- Drools
- [Drools]JAVA规则引擎 -- Drools
- [Drools]JAVA规则引擎 -- Drools
- [Drools]JAVA规则引擎 -- Drools
- [Drools]JAVA规则引擎 -- Drools
- [Drools]JAVA规则引擎 -- Drools
- [Drools]JAVA规则引擎 -- Drools
- [Drools]JAVA规则引擎 -- Drools
- [Drools]JAVA规则引擎 -- Drools
- [Drools]JAVA规则引擎 -- Drools
- [Drools]JAVA规则引擎 -- Drools
- [Drools]JAVA规则引擎 -- Drools
- [Drools]JAVA规则引擎 -- Drools
- [Drools]JAVA规则引擎 -- Drools
- [Drools]JAVA规则引擎 -- Drools
- Deepin Linux Desktop, 截图工具剖析(三) python - namedtuple
- 写自己的代码之未解决
- 【黑马程序员】深入理解VS环境下的类继承和强制类型转换(自己的理解,如有偏差,请轻喷....)
- 创业者盯上语音IM新玩法
- [Jweb] JSP 编程 00 -Declaration- Scriptlet-表达式-Directive (推出原因 : Servlet写标签非常麻烦!)
- Drools规则引擎远程加载规则文件
- VC-摄像头控制SDK源码
- CoAP协议学习——CoAP基础
- hdu 1002 大整数加法模板
- JVM优化策略
- Emacs Tips
- 利用MovieClip对象的rotationY属性实现翻转动画效果
- 我的2013----默默的积累
- c# 线程中任务Task的实际运用