简介

urule规则引擎是纯java开发,运行时借鉴Rete了算法的优势,独创了一套自己的规则模式匹配算法,这套算法可以从根本上保证规则运行的效率,实现大量复杂业务规则计算时的毫秒级响应。

urule可以基于springboot,Maven, web,docker部署

URULE 基于springboot部署

  1. 创建一个springboot项目 (这个利用idea或者其它开发工具都可以,此处省略)

  1. 导入urule规则引擎POM文件

添加rule-console-pro配置:

<dependency><groupId>com.bstek.urule</groupId><artifactId>urule-console-pro</artifactId><version>4.2.1</version>
</dependency>

目前最新的版本为4.2.1,依赖的版本可以根据自己的需求设置,可以到https://search.maven.org上查询关键字“urule-console-pro”就能找到需要的版本。(版本3和版本4,有一些改动,建议尽量使用4版本)

  1. 在代码中注册urule相关的servlet

只需要注册com.bstek.urule.console.URuleServlet和com.bstek.urule.KnowledgePackageReceiverServlet这两个类,在项目中添加一个类,用来注册

package com.urule.config;import com.bstek.urule.KnowledgePackageReceiverServlet;
import com.bstek.urule.console.URuleServlet;
import org.springframework.boot.web.servlet.ServletRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;/*** @author **** @version 1.0* @description: TODO* @date 2023/2/24 11:10*/
@Configuration
public class UruleConfig {@Beanpublic ServletRegistrationBean registerUruleServlet() {ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean(new URuleServlet(), "/urule/*");return servletRegistrationBean;}@Beanpublic ServletRegistrationBean registerKnowledgeServlet() {ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean(new KnowledgePackageReceiverServlet(), "/knowledgepackagereceiver");return servletRegistrationBean;}
}
  1. 在启动类添加注解

@ImportResource("classpath:urule-console-context.xml")

确保spring启动的时候可以加载urule-console-pro-{version}.jar中classpath下的urule-console-context.xml文件。

  1. 增加配置文件

  1. 如果您希望通过urule提供的向导配置数据库连接,则需要设定urule.home目录的值,这样向导自动创建的配置文件urule.properties文件就生成到urule.home目录

  1. 如果你想利用spring配置文件配置urule数据库的数据源,则要清空urule.home属性的值

在resources目录中新增urule-init.properties配置文件,配置文件的名字不能改变,必须是urule-init.properties

  1. 配置完成后,就可以启动springboot项目

启动后登录本地urule系统,根据自己设置的端口号登录

localhost:端口号/urule/frame或者localhost:端口号/urule/setup,两者进入的页面是一样的

选择内置数据源,点击下一步之后,然后点击确定初始化成功,注册自己的账号,就可以使用urule规则引擎了

这种方式适合体验时用。

如果选择jdbc数据源,需要配置数据库连接

配置完成,点击确定,urule初始化成功,点击注册账号进入使用。

本人觉得使用urule规则引擎,可以减少大量的代码开发,比如你要求一组数据的极值,java代码还需要循环在比较,在urule规则引擎里面只需要选中就可以了。例如:

urule规则引擎提供了15大类,近40个小类的常用数学符号,可进行几乎所有类型的可视化的科学计算,如果有兴趣可以了解一下,下面有案列也可以去官方文档urule官方文档

学习教程

视频

源码

URule Pro标准教程

视频

保险业务示例视频教程

视频

源码

电费计算示例视频教程

视频

飞机机位分配示例视频教程

视频

源码

品牌区域负责人奖金分配业务演示

视频

源码

URULE规则引擎部署相关推荐

  1. URULE规则引擎——决策树

    简介 决策树又称为规则树,是URule Pro规则引擎中提供的另外一种构建规则的方式,它以一棵躺倒的树形结构来表现规则(之所以将其躺倒是为了节省空间,否则一棵稍微大点的树将会占用很大的页面空间),决策 ...

  2. Urule规则引擎快速搭建

    Urule官方文档地址:http://www.bstek.com/resources/doc/4.0/ 1.打开Urule官方文档,找到SpringBoot配置 2.打开参考项目地址:https:// ...

  3. activiti入门系列文章14 - 集成规则引擎drools

    activiti如何集成规则引擎drools呢 三个步骤: 1.pom加入依赖,activiti引擎集成部署器 1.首先进行drools规则编写.然后挂到流程图节点上 2.进行规则文件和bpmn流程文 ...

  4. 常见的规则引擎(Drools,RuleBook,Easy Rules等)对比

    参考文章: https://www.jianshu.com/p/96cd60059aae 规则引擎调研 - 人在江湖之诗和远方 - 博客园 java开源规则引擎比较_常用规则引擎比较分析_学校砍了我的 ...

  5. 详解:Drools规则引擎探究

    引入 ▐ 问题引入 天猫奢品业务方为了吸引更多的新客,和提高会员的活跃度,做了一期活动,通过购买天猫奢品频道内的任意商品就赠送特殊积分,积分可以直接兑换限量的奢品商品.假如业务方给的规则如下: 主刃同 ...

  6. 规则引擎 drools_为什么要用规则引擎?

    作者:孤独烟来源:https://www.cnblogs.com/rjzheng/p/10996186.html 一天,朱斯参加了一场code Review研讨会.会上的一群人正在讨论着如何对祖传代码 ...

  7. java风控系统规则引擎_如何设计一套规则引擎系统

    很早之前就想写一篇关于「规则引擎」的文章,但是一直苦于没有时间.刚好最近给团队小伙伴梳理了我设计的引擎的使用和原理,正好借此机会在此写下我们的心得. 「规则引擎」系统一般而言,在风控中使用较多,但是经 ...

  8. 从0到1:构建强大且易用的规则引擎

    点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 作者 | 张宁 来源 | 公众号「zhisheng」 2 ...

  9. 规则引擎选型及应用 邴越 2017-04-27 16:31:17 浏览614 评论0 HTTPS 模块 配置 string exception void input 规则引擎 摘要: 规则引擎具体执

    规则引擎选型及应用 邴越 2017-04-27 16:31:17 浏览614 评论0 HTTPS 模块 配置 string exception void input 规则引擎 摘要: 规则引擎具体执行 ...

最新文章

  1. NVIDIA TensorRT:可编程推理加速器
  2. mysql如何下载连接到visual_Visual Studio 2015 Community连接到Mysql
  3. Seconds_Behind_Master
  4. python中字符串有什么组成_python字符串操作
  5. AndroidStudio项目提交(更新)到github最详细步骤
  6. Nginx部署及综合应用
  7. Android的启动模式(上)
  8. 20175202 《Java程序设计》第九周学习总结
  9. 王小川:与龚宇相识14年 爱奇艺造假不可能
  10. IndexAction.java (Java之负基础实战)
  11. GB2312和ASCII码点阵字库HZK, ASC整理
  12. 笔记本设置路由实现内外网同时使用
  13. 研究手机直播流媒体框架
  14. 读《费曼学习法》有感
  15. javacpp-opencv图像处理系列:国内车辆牌照检测识别系统(万份测试准确率79.7%以上)
  16. iOS安全防护---越狱检测、二次打包检测、反调试
  17. AIS文件分析-(using the OMAP-138 Bootloader)
  18. Dynamics CRM 系统自定义部分的语言翻译
  19. 遥信遥测遥控遥调四大概念介绍
  20. mysql子查询不支持limit问题解决

热门文章

  1. java偶数的表达式_十六进制数大于10的正则表达式,在Java中长度应为偶数。
  2. Notepad++ 下载地址
  3. SLAM--三角测量SVD分解法、最小二乘法及R t矩阵的判断
  4. Python 城市分类
  5. Py:编写程序代码,把自己的微信号变为微信智能机器人自动和你的好友、群友聊天
  6. 华为b199Android版本,华为B199刷机包 MIUI8安卓6.0插桩适配ROM 7.4.5版
  7. Charles 注册码
  8. 塞尔达 amiibo_极客历史的本周:塞尔达(Zelda)25岁,印刷机的诞生,以及ENIAC的揭幕...
  9. 7-144 最矮的巨人
  10. matlab最优控制实验报告_最优控制的MATLAB实现.doc