分享好友 最新动态首页 最新动态分类 切换频道
Drools 规则引擎(包括动态加载数据库中规则引擎)
2024-12-27 01:50


随着互联网的不断发展,有很多平台存在比较复杂的业务规则并且这些规则会随着需求频繁变换,这时候就需要找到一个可以将活动规则和代码解耦的技术,那就是规则引擎。


规则引擎:全称为业务规则管理系统,英文名为BRMS。需要注意的是规则引擎,而是指的一类系统,即业务规则管理系统。

java开源的规则引擎有:Drools、Easy Rules、Mandarax、IBM ILOG。使用最为广泛并且开源的是Drools。

主要应用场景

  • 风控系统-------风险贷款、风险评估
  • 反欺诈项目-----银行贷款、征信验证
  • 决策平台-------财务计算
  • 电商平台------满减、打折、加价购

Drools 是用 Java 语言编写的开放源码规则引擎,使用 Rete 算法对所编写的规则求值。Drools 允许使用声明方式表达业务逻辑。可以使用非 XML 的本地语言编写规则,将规则与业务代码解耦,规则以脚本的形式存储在一个文件中,使规则的变化不需要修改代码,重新启动机器即可在线上环境中生效。并且,还可以将 Java 代码直接嵌入到规则文件中,这令 Drools 的学习更加吸引人。

官网:http://www.drools.org/#
官方文档:http://www.drools.org/learn/documentation.html


原文链接:https://huaweicloud.csdn.net/63356f78d3efff3090b56d8f.html

电商平台促销积分规则

 

开发实现
第一步:创建Maven项目,添加Drools 规则引擎依赖。

 

第二步:根据drools要求创建resources/META-INF/kmodule.xml 配置文件

需要有一个配置文件告诉代码规则文件drl 在哪里,在drools中这个文件就是kmodule.xml。

 

第三步:创建业务实体对象

 

第四步:创建规则文件,在resources/rules/score-rules.drl

 

第五步:单元测试

 

效果截图:

 
 

电商平台促销积分规则

 

开发实现
第一步:创建Maven项目,添加Drools 规则引擎依赖。

 

第二步:根据drools要求创建resources/META-INF/kmodule.xml 配置文件

 

第三步:创建业务实体对象

 

第四步:创建规则文件,使用insert into 语句插入数据库

数据库字段为 serialNo(主键)、rule(规则内容

 


第五步:单元测试

 

附加
这里写一下对此字段的增删改查语法
原文链接:https://huaweicloud.csdn.net/63355c9ad3efff3090b5418d.html?spm=1001.2101.3001.6650.3&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Eactivity-3-120262609-blog-126691379.pc_relevant_recovery_v2&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Eactivity-3-120262609-blog-126691379.pc_relevant_recovery_v2&utm_relevant_index=6

 

效果截图:

 

Drools规则引擎构成
drools规则引擎由以下几部分构成

  • Working Memory(工作内存
  • Rules(规则库
  • Inference Engine(推理引擎
  • 其中Inference Engine(t推理引擎)又包含如下

Fact 事实,是指在drools 规则应用当中,将一个普通的JavaBean插入到Working Memory后的对象就是Fact对象,例如本案例中的Order对象就属于Fact对象。Fact对象是我们的应用和规则引擎进行数据交互的桥梁或通道。

Rules 规则库,我们在规则文件中定义的规则都会被加载到规则库中。

Pattern Matcher 匹配器,将Rule Base中的所有规则与Working Memory中的Fact对象进行模式匹配,匹配成功的规则将被激活并放入Agenda中。

Agenda 议程,用于存放通过匹配器进行模式匹配后被激活的规则。


以上就是今天要讲的内容,本文仅仅简单介绍了Drools 规则引擎,而Drools 提供了大量能使我们快速便捷地处理数据的函数和方法。大家可以看一下原文链接,里边讲解了一些关于Drools 基础语法等内容。

最新文章
谷歌集中火力猛攻AI智能体
12月12日,在OpenAI宣布ChatGPT全面接入苹果之际,谷歌发布新一代大模型Gemini 2.0,值得注意的是,Gemini 2.0专为AI智能体(AI Agent)而生。谷歌首席执行官Sundar Pichai在公开信中称,“在过去一年中,我们一直在投资开发更具“代理性”
手机SEO工具全面对决,揭秘最佳助手!
本文对多款SEO手机优化软件进行对比分析,旨在帮助用户找到最适合自己需求的得力助手。从功能、易用性和效果等方面,对比了各大热门软件,为读者提供选购指南。在互联网高速发展的今天,搜索引擎优化(SEO)已经成为网站推广的重要手段,随
打造高质量的外链相册,提升网站权重118
网站外链规划计划* 创建高质量的外链相册,提升目标网站的搜索引擎排名和流量。* 建立多样化的外链组合,避免被搜索引擎惩罚。1. 确定目标关键词* 研究目标网站的利基市场和竞争对手。* 确定相关且具有高搜索量的关键词。2. 创建优质内容*
最新有关校园社团活动的工作总结 学校社团年度工作总结(7篇)
一、学生社团建设内容本学期学校学生社团课程开设同学校绿色课程建设融合,设置了三个层面四大类的社团课程。三个层次分别为校级、年级、班级。四个类别为书法艺术类、体育技能类、阅读思维类、运用创新类。校级社团以体艺教师为主、外请教
谷歌二次验证器安卓版app下载(Authenticator)
谷歌二次验证器app是一款提供了身份验证的软件,使用其是能够帮助用户快速进行验证的,总体的使用方法更是相当的简单,能够极大的满足用户的验证需求,有需要的朋友现在就来下载吧!该软件采用了时间同步技术生成验证码,当用户登录需要进
直击2024数字科技生态大会,出门问问携手中国电信×天翼云共促生态繁荣
近期,出门问问(02438.HK)亮相 2024 数字科技生态大会,并凭借AIGC产品「魔音工坊」和「奇妙元」现场吸睛无数。2024 数字科技生态大会以“AI赋能 共筑数字新生态”为主题,充分展示了中国电信全面完成云计算及算力、新一代信息通信、大数
百度搜索引擎蜘蛛IP段汇总
百度搜索引擎是全球最大的搜索引擎之一,在日常的SEO优化过程中,我们需要了解百度搜索引擎的一些信息,包括蜘蛛的爬行规则、抓取频率等等。其中,蜘蛛的IP段也是我们需要关注的一个方面,因为了解到蜘蛛IP段,可以帮助我们更好的防止黑客
营销策划方案怎么写(例文10篇)
【#策划# #营销策划方案怎么写(例文10篇)#】营销策划方案是一种系统性的规划和策略,旨在帮助企业或品牌在市场竞争中获得优势,提高市场份额,实现商业目标。以下是由©无忧考网为您带来的《营销策划方案怎么写(例文10篇)》,供您
黄大仙论坛心水资料2024|讲解词语解释释义
黄大仙论坛心水资料与词语释义详解——探索未来的预测与解释(2024版)随着科技的进步和社会的发展,人们对于未来的预测和探寻愈发关注,黄大仙论坛作为一个集结众多预测学爱好者与研究者的平台,其“心水资料”成为了众多人关注的焦点,本
星盘十二星座测算小程序软件系统搭建开发(公众号 APP 源码 H5)
星盘十二星座测算APP平台软件开发随着科技的不断发展,人们对星座、占星术等神秘领域的兴趣日益浓厚。为了满足广大用户对星座运势、性格分析等方面的需求,我们开发了一款名为“星盘十二星座测算”的APP平台软件。本文将详细介绍该软件的开
相关文章
推荐文章
发表评论
0评