Drool 7 SpreadSheet Decision Template 笔记

1 Excel Decision table

1.1 很棒的示意图,来自https://blog.csdn.net/justlpf/article/details/128109731
在这里插入图片描述

1.2 参考URL
1.2.1 https://blog.csdn.net/justlpf/article/details/128109731
1.3 多sheet 模式

  • 默认是用第一个sheet
  • 如果要支持多sheet,需要创建一个同名的.properties文件
    • sheets=Sheet1,Sheet2

1.4 sheet内主要内容
1.4.1 一个RuleSet :注意RuleSet里面的定义都是对package有影响,不仅仅是excel文件
默认package 名就是Ruleset 名称

  • 具体实现代码-final Package ruleset = new Package( (showPackage) ? rulesetName : null );

属性

  • RuleSet
    The package name for the generated DRL file. Optional, the default is rule_table.
  • Sequential
    true or false. If true, then salience is used to ensure that rules fire from the top down.
  • SequentialMaxPriority
    Optional, at most once. In sequential mode, this option is used to set the start value of the salience. If omitted, the default value is 65535.
  • SequentialMinPriorit
    Optional, at most once. In sequential mode, this option is used to check if this minimum salience value is not violated. If omitted, the default value is 0.
  • EscapeQuotes
  • NumericDisabled
    If true, then a String representation is used for DRL instead of a double value from a Numeric cell. It would also skip additional numeric processing for the double value.
  • IgnoreNumericFormat
    If true, then the format for numeric values is ignored
  • Import
    可以多行
  • Variables
    可以多行
  • Functions
    可以多行
  • Queries
    可以多行
  • Declare
    可以多行
  • Unit 实验性,不用
  • Dialect
    java or mvel. The dialect used in the actions of the decision table.

1.4.2 一个或者多个RuleTable

  • 以空行分割多个RuleTable
  • 无论CONDITION/RULE,值为空代表忽略
  • metadata
    • Code snippet and interpolated values for constructing a metadata entry for the rule.
    • 没有google到例子

Properties 和rule 属性差不多,但注意salience 被priority代替

  • PRIORITY An integer defining the salience value of the rule
  • DATE-EFFECTIVE
    Example: DATE-EFFECTIVE “4-Sep-2018”
  • DATE-EXPIRES
  • NO-LOOP
  • AGENDA-GROUP
  • ACTIVATION-GROUP
  • DURATION
  • TIMER
  • CALENDAR
  • AUTO-FOCUS
  • LOCK-ON-ACTIVE
  • RULEFLOW-GROUP

1.5 excel 转换为drl文件的核心类是public class DefaultRuleSheetListener
1.5.1 核心函数buildRuleSet()

2 template

2.1 用途

  • 使用外部存储的变量列表:如数据库、excel 生成drl文件
  • 默认提供了从excel ,对象、list导入数据模式

2.2 相关生成drl的compiler

  • ExternalSpreadsheetCompiler
  • DataProviderCompiler
    可以以DataProviderCompiler为父类,自行定义开发新的compiler
  • ObjectDataCompiler
    • extends DataProviderCompiler
    • 当对象有null值被引用的时候,DefaultGenerator如下代码可能返回空condition
String drl = String.valueOf( TemplateRuntime.execute( template,vars,factory,registry ) );

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/225140.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

小程序----使用图表显示数据--canvas

需求:在小程序上实现数据可视化 思路:本来想用的是echarts或者相关的可视化插件,但因为用的是vue3,大多数插件不支持,所以用了echarts,但最后打包的时候说包太大超过2M无法上传,百度了一下&…

线性分类器--数据处理

数据集划分 通常按照 70%,20% ,10% 来分数据集 数据处理 斯坦福的线性分类器体验 http://vision.stanford.edu/teaching/cs231n-demos/linear-classify/

为什么API管理工具对开发人员有益?

应用程序编程接口 (API) 用于在应用程序之间创建连接,以允许它们相互通信。这种连接是当今数字世界运作方式不可或缺的一部分。实际上,API 使企业能够集成系统,通过创新提供更好的服务和产品。 这就是为什么在 IT 内部…

Nacos源码本地搭建流程及目录结构解读

下载地址 https://github.com/alibaba/nacos 目录结构 本地单机启动 首先maven编译完成之后在console下面找到Nacos 这个就是主启动类 然后再vm中配置参数-Dnacos.standalonetrue表示单机启动 当控制台没有报错 访问 http://localhost:8848/nacos 控制台界面登录进来之后显…

如何运用AppLink平台中的数据连接器组件

AppLink平台组件组成 AppLink平台组件分成三个板块触发事件组件、基础组件和数据连接器 数据连接器组件里面有10个组件,目前也在不断新增更多的数据连接器,那他们在AppLink平台里的原理、触发动作以及怎么使用呢?接下来用MySQL和TimescaleD…

OpenGL之Mesa3D编译for Ubuntu20.04(三十六)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 人生格言: 人生从来没有捷径,只有行动才是治疗恐惧和懒惰的唯一良药. 更多原创,欢迎关注:Android…

攻关眼科难题!第一届爱尔眼科-四川大学科研基金完成立项

当前我国眼科患者数量不断增长,人民群众对高质量的眼健康的需要不断攀升,而目前国内眼科医疗资源远不能满足需求,疑难眼病诊疗能力及学术科研体系建设仍有较大进步空间。基于此,爱尔眼科携手四川大学共同设立爱尔眼科-四川大学科研…

Win7 SP1 x64 安装 Python 出错解决方法

1 双击安装 python-3.7.9.exe ,提示出错,log.file 显示需要 KB2533623,但在Microsoft Update Catalog 没有搜到,实验 KB4474419 也可以。 2 Microsoft Update Catalog 搜索 KB4474419 ,选择 x64 位,下载&am…

[极客大挑战2023] Crypto/PWN/Reverse

这个网站真辛苦,每次都要回到all,屏幕随时卡。界面有待进步老远。也不提示结束,结果现在才听说结束了,才开始记录一下。 还跟往常一样,WM不作,其它也AK不了,总是差点。 Crypto SignIn 53594…

虹科Pico汽车示波器 | 汽车免拆检修 | 2016款东风悦达起亚K5车发动机怠速抖动严重、加速无力

一、故障现象 一辆2016款东风悦达起亚K5车,搭载G4FJ发动机,累计行驶里程约为8.2万km。该车发动机怠速抖动严重、加速无力,同时发动机故障灯异常点亮,为此在其他维修厂更换了所有点火线圈和火花塞,故障依旧,…

两部手机数据传输后备忘录不见了怎么回事

想必很多人都遇到过,当两部手机进行备忘录数据传输后,突然发现备忘录不见了,这让人不禁着急上火,我也曾经遇到过这种事情导致很多重要的内容都丢失了。 一般出现这种情况可能是因为,两部手机使用的是不同的云服务&…

Redis常用操作及应用(二)

一、Hash结构 1、常用操作 HSET key field value //存储一个哈希表key的键值 HSETNX key field value //存储一个不存在的哈希表key的键值 HMSET key field value [field value ...] //在一个哈希表key中存储多个键值对 HGET key fie…