RuleEngine是一款轻量级的开源规则引擎模块,针对规则的定义和检查大多数关联到数据库的情况,RuleEngine可以直接使用SQL语句来定义规则的LHS部分,大大的节省了开发工作量。同时也支持各种扩展功能,可以自定义执行体部分(RHS),可以自定义运算操作符,可以自定义和增加Log日志输出,也可以使用自定义的规则引擎格式。目前支持Drools的drl文件,XML文件,DB table 3种规则定义模式。
在数据库链接方法,RuleEngine可以使用独立的DB Connection/Druid,也可以无缝链接到Spring-MVC等框架的数据库。
使用方法
您可以直接在maven repository中直接下载使用,在Pom.xml文件中添加下面的内容就可以了。
<dependency> <groupId>com.github.hale-lee</groupId> <artifactId>RuleEngine</artifactId> <version>0.1.0</version> </dependency>
规则引擎是嵌入在应用程序中的组件,实现了决策逻辑和业务系统的分离功能。在现实业务场景中,决策逻辑的复杂性和可变性,使得决策引擎的应用越来越多,把决策逻辑单独分离出来也显得越来越重要了。 目前市场上常用的规则引擎有Ilog JRules,Drools,Jess,Visual Rules等。Ilog JRules 是最有名的商用BRMS;Drools 是最活跃的开源规则引擎;Jess 是Clips的j
当编写应用程序时,经常性需要花费大量的时间与精力处理业务逻辑,往往业务逻辑的变化需要重构或者增加大量代码,对开发测试人员很不友好。 之前在这篇文章说过,可以使用脚本引擎来将我们需要经常变化的代码进行动态编译执行,自由度非常大,不过对应的需要资源也多。如果c#教程只是针对非常具体业务逻辑的变化,可以尝试使用RulesEngine对程序进行操作。 下文使用了官方示例且部分内容翻译自说明文档 简介# R
规则引擎 (Rule Engine)介绍 规则引擎起源于基于规则的专家系统,而基于规则的专家系统又是专家系统的其中一个分支。专家系统属于人工智能的范畴,它模仿人类的推理方式,使用试探性的方法进行推理,并使用人类能理解的术语解释和证明它的推理结论。 利用它就可以在应用系统中分离商业决策者的商业决策逻辑和应用开发者的技术决策,并把这些商业决策放在中心数据库或其他统一的地方,让它们能在运
这里主要介绍基于java的开源规则引擎,下面列出从网上收集的一些代表: Drools: Drools规则引擎介绍Drools是Jboss公司旗下一款开源的规则引擎,它完整的实现了Rete算法;提供了强大的EclipsePlugin开发支持;通过使用其中的DSL(DomainSpecificLanguage),可以实现用自然语言方式来描述业务规则,使得业务分析人员也可以看懂业务规则代码。最新版本Dr
from: IBM DeveloperWorks Java URL: http://www.ibm.com/developerworks/cn/java/j-java-rules/#N10041 本文对Java规则引擎与其API(JSR-94)及相关实现做了较详细的介绍,对其体系结构和API应用有较详尽的描述,并指出Java规则引擎,规则语言,JSR-94的相互关系,以及JSR-94的不足之处
什么是规则引擎? A Rule Engine is a software system that contains rules on behalf of another system. Many different kinds of rules can be contained in a rules engine: business, legal, company policy, navigati
Those rule engines in python are: pyDatalog Pyke PyCLIPS durable_rules (目前看较新的项目) Intellect business-rules PyKnow Relative question link in stackoverflow: Python Rule Based Engine Open Source based Ru
本文向大家介绍浅谈轻量级js模板引擎simplite,包括了浅谈轻量级js模板引擎simplite的使用技巧和注意事项,需要的朋友参考一下 模板地址:https://github.com/zhangshaolong/simplite欢迎各位提出宝贵意见及贡献代码。特点: 1:代码量少,学习成本低; 2:默认jsp语法标签方式,熟悉jsp的朋友可以直接按照jsp的语法书写模板; 3:使用原生js语法
本文向大家介绍javascript轻量级模板引擎juicer使用指南,包括了javascript轻量级模板引擎juicer使用指南的使用技巧和注意事项,需要的朋友参考一下 使用方法 编译模板并根据数据立即渲染出结果 仅编译模板暂不渲染,返回一个可重用的编译后的函数 根据给定的数据对之前编译好的模板进行渲染 注册/注销自定义函数(对象) 默认参数配置 修改默认配置,逐条修改 修改默认配置,批量修改
问题内容: 编写新的工作流引擎还是使用现有的BPM引擎更好吗:jBPM 5,Activiti 5? 我的应用程序是基于Web的应用程序,性能非常重要。我的疑问是,与编写简单的工作流引擎相比,使用jBPM / Activiti是否会增加性能开销。 如果我采用自我实现,我会错过工作流程的可视化。为了性能,可以进行交易。 问题答案: 这确实取决于您的要求。首先,查看您是否真的需要工作流引擎(此资源或其他
我正在为我的项目评估一个规则引擎。该项目将基于hadoop。我用DROOLS做了一些POC。基本上,我使用DROOL在映射器一侧。基于此,以下是我的观察和质疑。 1) a)我使用DROOLS在300万对象上启动了规则(大约需要17秒)b)我使用简单的Java对象(大约需要17秒)为没有DROOLS的300万对象使用了与DRL文件中相同的if/else循环逻辑。b大约比a快100倍。这是正常行为吗?
我正在向drools规则引擎插入数据,但我无法理解它是如何处理插入的数据的。插入数据的代码是:
我们已经使用Drools引擎几年了,但是我们的数据已经增长了,我们需要找到一个新的分布式解决方案来处理大量数据。我们有复杂的规则,可以查看几天的数据,这就是为什么Drools非常适合我们,因为我们的内存中只有数据。 你对类似于流口水但分布式/可扩展的东西有什么建议吗? 我确实对这件事进行了研究,但我找不到任何符合我们要求的东西。 谢谢
我正在从事这个项目,我的角色是开发使用标准健康保险xml的服务。服务必须在不同的xml字段上进行验证,这涉及将xml数据与数据库表中的数据进行比较。目前,我们假设所有保险公司的验证保持不变。但我怀疑它会保持不变,并且每家公司可能有不同的验证要求。在这种情况下,使用Drools规则引擎并为每家公司开发drl文件并使用规则引擎进行xml验证是个好主意吗
问题内容: 我正在寻找使用C或Python编写的规则引擎,但是如果您知道用另一种语言实现的规则引擎,我将非常高兴知道。 该引擎将用作使房屋自动化的方式,例如当有人离开房间等时关闭电灯等。因此,那里没有“办公室”规则(也就是您在Excel等程序中规则)。 我研究了Java中的Jess和Drools,它们做得很出色。我想知道其他人,并且可能使用的内存少于Java。我听说过Python中的RuleCor