URULE库文件的使用

项目部署初始化:urule基于springboot的部署以及初始化页面

  1. urule初始化注册登录后,创建自己的团队,创建自己的项目(此处创建省略,没什么可说的,根据指示就OK了)创建完成后如下:

  1. 点击项目名进入规则编辑页面

  1. 点击设计规则

  1. 在这里可以看到urule提供的规则集、决策表、交叉决策表(决策矩阵)、决策树、评分卡、复杂评分卡、规则流等八种类型的业务规则设计工具

设计前需要设计自己的库文件,像JAVA代码需要设计自己的对象和属性,注意库文件名称唯一性

  1. 变量库的设计

在业务系统开发过程中,会用到大量包含Getter和Setter方法的简单的Java对象,它们被称之为POJO(Plain Ordinary Java Object),或BOM\(Business Object Model\)对象,这些对象在开发中作为数据的载体,负责数据的传递。在URule Pro当中,变量库就是用来映射这些POJO对象,从而使得我们可以在具体的规则文件中使用它们,从而完成规则与业务数据的交互。

  1. 点击添加变量,变量添加后,要给变量添加相关的字段,“用途”一列有三个选项“in,out,inout”in表示变量只能用于输入、不能用于输出,out表示用于输出(跟in相反),设置为inout可以用于输入、输出,设置完变量后一定要保存!保存!保存!

如果需要JSON导入变量,右键选中根据JSON生成字段

把你的JSON格式的对象copy过来,然后点击下一步,可以看到结构为树形的对象,再次点击下一步,可以选择你要生成的字段,最后点击确定,图示如下

b.常量库设计

在业务系统开发过程中,常常会用到一个枚举数据,比如用户的性别、学历等,在URule Pro当中,通过定义常量库文件,可以将系统中使用的这些枚举数据映射到规则中使用,这样就可以避免规则定义过程中枚举数据手工输入存在错误的可能性

下面是常量各种类型的值的书写,可以做参考

常量类型

说明

String

字符串

Char

单个字符,如果值设置的是字符串,只会返回字符串的第一个字符

Integer

整型

Long

长整型

Float

单精度浮点型,超出位数将被截取

Double

双精度浮点型,超出位数将被截取

BigDecimal

高精度类型

Boolean

布尔型,值设置参考Boolean.valueOf

Date

时间类型,输入时间格式有:yyyy-MM-dd HH:mm:ss、yyyy-MM-dd HH:mm、yyyy-MM-dd

List

ArrayList集合,值的设置方式为:

基础类型集合:s4,s1,s2,s3

复杂类型集合:[{"id":"4","name":"user4"},{"id":"1","name":"user1"}]

Set

TreeSet集合,值的设置方式为:

基础类型集合:s8,s5,s6,s7

复杂类型集合:[{"a1":"s8"},{"a1":"s5"},{"a1":"s6"},{"a1":"s7"}]

Map

HashMap集合,值的设置方式为:JSON格式,比如:{"a":"1","b":"2","c":"3"}

Enum

任意值

Object

任意值

c.参数库,参数库和在java开发中需要用的临时变量一样

在规则的条件判断与计算过程当中,可能会用到一些临时的变量来存储值,这些临时变量数量和类型都可能是不固定的,对于这种类型的临时变量,URule Pro以参数的形式提供,通过参数库就可以定义这些在规则中要使用到的临时变量

点击添加参数,设置相关的中间变量,设置完成后点击保存。

d.动作库

动作库文件的作用是对配置在spring中的bean方法进行映射,使得我们可以直接在规则当中调用这些方法。同样在项目的“库”节点下创建一个动作库文件,可以看到动作库文件内容有三列,分别是动作名称,bean的id定义列,方法名定义列,以及方法对应的参数定义列,如下图所示

添加成功后,为了在规则中更好的可读性,我们可以修改“动作名称”、“方法名称”以及“参数名称”。

java代码

@Component
public class BonusPoints {


    @ExposeAction("奖金计算")
    public Long sum(Long money,Integer mouth ){
        if(mouth>6){
            return money;
        }else if (mouth>=10){
            return money*2;
        }else {
            return 0L;
        }
    }
}

URULE提供了许多内置动作,也可以自定义内置动作,内置动作就相当于JAVA当中的公共方法,在所有都有可能用到的情况下可以考虑使用内置动作,动作库在某种情况下需要可以定义。

变量库、参数库、动作库、常量库这些库文件定义好后,就可以在各种类型的规则文件中导入并使用它们。

总结:

变量库、参数库、动作库、常量库这些库文件就像java代码中用到的实体类,临时变量,工具类,枚举数据,所以库文件实际就是规则设计前的准备,设计规则时需要导入到规则里。总体来看,设计简单实用,节约时间成本。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
提供规则集、决策表、决策树、评分卡,规则流等各种规则表现工具及基于网页的可视化设计器,可快速开发出各种复杂业务规则。 开发工具在软件开发生命周期中扮演着至关重要的角色,它们旨在简化和加速从概念设计到产品部署的各个环节。以下是开发工具的主要作用: 代码编写与编辑: 提供集成开发环境(IDE),如Visual Studio、Eclipse、Android Studio和Sublime Text等,这些工具集成了文本编辑器,支持语法高亮、自动补全、代码片段管理和版本控制等功能,有助于开发者高效编写和维护代码。 项目管理: 支持项目创建、组织、构建自动化以及依赖管理,确保不同模块和组件之间的协调一致。 编译与构建: 包括编译器、构建工具(如Make、Gradle、Maven)等,用于将源代码转换为可执行文件,并进行资源打包、优化等处理。 调试与测试: 集成调试器允许开发者逐行执行代码,设置断点、查看变量值、跟踪调用堆栈等,帮助定位并修复代码中的错误。 测试框架和工具则协助开发者编写和运行单元测试、集成测试及性能测试,确保软件质量。 版本控制与协作: 通过集成Git、SVN等版本控制系统,支持团队成员间的代码共享、分支管理、合并请求和冲突解决。 可视化设计与原型制作: 对于UI/UX设计,有界面设计工具,如Sketch、Adobe XD,可以帮助设计师快速构建应用程序界面模型,并生成规范的设计稿供开发人员参考实现。 跨平台支持: 跨平台开发工具如Xamarin、React Native和Flutter,让开发使用一种语言或框架编写可以在多个操作系统上运行的应用程序。 文档编写与API管理: 文档生成工具可以自动生成代码注释文档,便于团队内外理解和使用项目代码。 API管理工具则方便开发者创建、测试、发布和维护API接口。 持续集成与持续部署(CI/CD): Jenkins、Travis CI、GitHub Actions等工具负责自动化构建、测试和部署流程,提高交付效率和可靠性。 数据管理与ORM工具: 数据客户端工具用于连接、查询、更新数据,ORM(对象关系映射)工具简化了数据操作和持久化层的开发工作。 总之,开发工具极大地提升了软件工程师的工作效率,保证了开发过程中的准确性与一致性,同时也促进了团队合作,使得软件开发更系统化、规范化和工业化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值