全网唯一标准王
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210657556.2 (22)申请日 2022.06.10 (71)申请人 北京宇信科技 集团股份有限公司 地址 100044 北京市海淀区高梁桥 斜街42 号院1号楼5层1- 519 (72)发明人 徐凤阳 王瑞 谷浩伟  (74)专利代理 机构 北京卓岚智财知识产权代理 事务所 (特殊普通合伙) 11624 专利代理师 沈煜华 (51)Int.Cl. G06F 8/41(2018.01) G06F 9/445(2018.01) G06F 9/455(2006.01) (54)发明名称 一种决策引擎中规则运行文件的处理方法 和装置 (57)摘要 本发明实施例提供一种决策引擎中规则运 行文件的处理方法和装置, 该方法包括: 步骤S1: 将同一个规则集 以不同的版本号多次发布部署 后生成多个规则运行文件; 步骤S2: 读取多个规 则运行文件, 并且解析、 编译以及类加载多个规 则运行文件, 生成多个规则集Class类; 步骤S3: 获取多个 所述规则集Class类, 执行规则集Class 类中的规则方法, 获得规则方法的输出值; 步骤 S4: 将规则方法的输出值赋值给用户自定义的输 出参数变量, 规则计算的结果则为输出参数变量 的值。 本发 明实施例中的决策引擎可以支持在规 则集多版本的场景 下进行计算的技 术问题。 权利要求书2页 说明书12页 附图8页 CN 114942770 A 2022.08.26 CN 114942770 A 1.一种决策引擎中规则运行文件的处 理方法, 其特 征在于, 包括: 步骤S1: 将同一个规则集以不同的版本号多次发布部署后生成多个规则运行文件; 步骤S2: 读取多个所述规则运行文件, 并且解析、 编译以及类加载多个所述规则运行文 件, 生成多个规则集Clas s类; 步骤S3: 获取多个所述规则集Cl ass类, 执行所述规则集Cl ass类中的规则方法, 并获取 所述规则方法的输出值; 步骤S4: 将所述规则方法的输出值赋值给用户自定义的输出参数变量, 获得所述输出 参数变量的值。 2.根据权利要求1所述的处 理方法, 其特 征在于, 所述 步骤S1包括: 步骤S11: 在决策引擎定义端的配置文件中为同一个规则集配置不同的版本号; 步骤S12: 对同一个规则集以不同的版本号多次发布部署后, 生成多个规则运行文件, 每个所述规则运行文件的文件名称包括 规则集id和版本号。 3.根据权利要求2所述的处 理方法, 其特 征在于, 所述 步骤S2包括: 步骤S21: 读取多个所述 规则运行文件; 步骤S22: 对每个所述规则运行文件的规则内容进行语法解析, 获得所述规则内容的伪 代码, 并将所述伪代码转 化为规则集Java语言代码; 步骤S23: 将每个所述规则运行文件的文件名作为规则集Java类名, 编译所述规则集 Java语言代码, 生成多个Clas s二进制文件; 步骤S24: 将所述多个Cl ass二进制文件加载到JVM内存中, 生成多个以所述规则运行文 件的文件名命名的规则集Clas s类。 4.根据权利要求3所述的处 理方法, 其特 征在于, 所述 步骤S3包括: 步骤S31: 获取每个所述规则集Class类, 并利用Java反射机制分别将每个所述规则集 Class类生成规则集Clas s类对象; 步骤S32: 按照所述规则集Cl ass类对象执行所述规则集Cl ass类中的规则方法, 获得规 则方法的输出值。 5.一种决策引擎中规则运行文件的处 理方法, 其特 征在于, 包括: 步骤S1’: 在决策引擎定义端的可视化界面设置规则集的规则优先级字段值之后, 通过 发布部署生成规则运行文件, 所述 规则优先级字段值存 储在所述 规则运行文件中; 步骤S2’: 读取所述规则运行文件, 并且解析、 编译以及类加载所述规则运行文件, 生成 规则集Clas s类; 步骤S3’: 获取所述规则集Class类, 并按照所述规则优先级字段值依次执行所述规则 集Class类中的规则方法, 依次获得多个所述 规则方法的输出值; 步骤S4’: 将所述多个所述规则方法的输出值赋值给用户自定义的输出参数变量数组, 获得所述输出参数变量数组的值。 6.根据权利要求5所述的处 理方法, 其特 征在于, 所述 步骤S2’包括: 步骤S21’: 读取所述规则运行文件; 步骤S22’: 对所述规则运行文件的规则内容进行语法解析, 获得所述规则内容的伪代 码, 并把所述伪代码转 化为规则集Java语言代码; 步骤S23’: 将所述规则集Java语言代码编译成Clas s二进制文件;权 利 要 求 书 1/2 页 2 CN 114942770 A 2步骤S24’: 将所述Clas s二进制文件加载到JVM内存中生成规则集Clas s类。 7.根据权利要求6所述的处 理方法, 其特 征在于, 所述 步骤S3’包括: 步骤S31’: 获取所述规则集Class类, 并利用Java反射机制将所述规则集Class类生成 规则集Clas s类对象; 步骤S32’: 按照所述规则集Class对象的规则优先级字段值的升序排序的方式依次执 行所述规则集Clas s类中的规则方法, 获得规则方法的输出值。 8.一种决策引擎中规则运行文件的处 理装置, 其特 征在于, 包括: 第一文件生成模块, 用于将同一个规则集以不同的版本号多次发布部署后 生成多个规 则运行文件; 第一读取编译模块, 用于读取多个所述规则运行文件, 并且编译多个所述规则运行文 件, 生成多个规则集Clas s类; 第一获取执行模块, 用于获取多个所述规则集Class对象, 执行所述规则集Class类中 的规则方法, 获得规则方法的输出值; 第一赋值返回模块, 用于将所述规则方法的输出值赋值给用户自定义的输出参数变 量, 获得所述输出参数变量的值。 9.一种决策引擎中规则运行文件的处 理装置, 其特 征在于, 包括: 第二文件生成模块, 用于在决策引擎定义端的可视化界面设置规则集的规则优先级字 段值之后, 通过发布部署生成规则运行文件, 所述规则优先级字段值存储在所述规则运行 文件中; 第二读取编译模块, 用于取所述规则运行文件, 并且编译所述规则运行文件, 生成规则 集Class类; 第二获取执行模块, 用于获取所述规则集Class类, 并按照所述规则优先级字段值依次 执行所述规则集Clas s类中的规则方法, 依次获得多个所述 规则方法的输出值; 第二赋值返回模块, 用于将多个所述规则方法的输出值赋值给用户自定义的输出参数 变量数组, 获得 所述输出参数变量数组的值。 10.一种机器可读存储介质, 该机器可读存储介质上存储有指令, 其特征在于, 该指令 在被处理器执行时使得所述处理器被配置成执行根据权利要求1至7中任一项所述的一种 决策引擎中规则运行文件的处 理方法。 11.一种计算机设备, 其特 征在于, 其包括: 一个或多个处 理器; 存储装置, 用于存 储一个或多个程序; 当所述一个或多个程序被所述一个或多个处理器执行时, 使得所述一个或多个处理器 实现如权利要求1 ‑7中任一所述的决策引擎中规则运行文件的处 理方法。权 利 要 求 书 2/2 页 3 CN 114942770 A 3

.PDF文档 专利 一种决策引擎中规则运行文件的处理方法和装置

文档预览
中文文档 23 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共23页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 一种决策引擎中规则运行文件的处理方法和装置 第 1 页 专利 一种决策引擎中规则运行文件的处理方法和装置 第 2 页 专利 一种决策引擎中规则运行文件的处理方法和装置 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-17 23:58:44上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。