drools 中是否有任何 API 可以通过传递值来动态创建 drl 文件?

2024-04-20

我知道如何使用所有方法在 KIE 工作台中创建 DRL 文件。但我的问题是不使用 KIE 工作台,我们可以创建.drl使用我们所需的值进行文件。如果有任何可能性,请建议我。同样的方式建议我任何与此相关的 API。提前致谢。


您可以使用Drools 流畅的 API http://docs.jboss.org/drools/release/5.2.0.Final/droolsjbpm-introduction-docs/html/ch02.html#d0e124。尝试下面的示例代码:

package com.sample;

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;

import org.drools.lang.DrlDumper;
import org.drools.lang.api.DescrFactory;
import org.drools.lang.descr.PackageDescr;

@SuppressWarnings("restriction")
public class Drl_Creator {
    public static void main(String str[]){
        PackageDescr pkg = DescrFactory.newPackage()
                   .name("org.drools.example")
                   .newRule().name("Xyz")
                       .attribute("ruleflow-grou","bla")
                   .lhs()
                       .and()
                           .pattern("Foo").id( "$foo", false ).constraint("bar==baz").constraint("x>y").end()
                           .not().pattern("Bar").constraint("a+b==c").end().end()
                       .end()
                   .end()
                   .rhs( "System.out.println();" ).end()
                   .getDescr();
        DrlDumper dumper=new DrlDumper();
        String drl=dumper.dump(pkg);
        System.out.print(drl);
        try{
            // create new file
            File file = new File("src/main/rules/test.drl");
            file.createNewFile();
            FileWriter fw = new FileWriter(file.getAbsoluteFile());
            BufferedWriter bw = new BufferedWriter(fw);
            bw.write(drl);
            // close connection
            bw.close();
            System.out.println("File Created Successfully");
         }catch(Exception e){
             System.out.println(e);
         }
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

drools 中是否有任何 API 可以通过传递值来动态创建 drl 文件? 的相关文章

  • Mockito 在调用参数数量可变的方法时使用参数匹配器

    我试图在对具有可变数量参数的方法的调用中使用参数匹配器 Java 中的东西 没有成功 我的代码如下 我还将列出我尝试用来完成此工作的所有行 import static org mockito Mockito public class Met
  • 在 mvn 命令中指定 pom.xml 并混合其他项目的目标

    我有多个问题 我可以在 mvn 命令中指定 pom xml 吗 在当前项目上执行 mvn 命令时 我可以混合另一个项目的目标吗 例如 mvn clean otherproject comple otherproject install ot
  • 存根方法时出现 InvalidUseOfMatchersException

    我有这个 TestNG 测试方法代码 InjectMocks private FilmeService filmeService new FilmeServiceImpl Mock private FilmeDAO filmeDao Bef
  • Spring Security 自定义过滤器

    我想自定义 Spring security 3 0 5 并将登录 URL 更改为 login 而不是 j spring security check 我需要做的是允许登录 目录并保护 admin report html 页面 首先 我使用教
  • Java:无法从同一包中的不同类访问静态变量

    这很奇怪 因为我有一个可以访问 Frame dimension getWidth 的 Character 类 及其伙伴 getHeight 但是当我想在 Map 类中使用它时 Eclipse 强调了它并且无法给我反馈 运行该程序最终会出现
  • 通过SOCKS代理连接Kafka

    我有一个在 AWS 上运行的 Kafka 集群 我想用标准连接到集群卡夫卡控制台消费者从我的应用程序服务器 应用程序服务器可以通过 SOCKS 代理访问互联网 无需身份验证 如何告诉 Kafka 客户端通过代理进行连接 我尝试了很多事情 包
  • JVisualVM/JConsole 中的 System.gc() 与 GC 按钮

    我目前正在测试处理 XML 模式的概念验证原型 并围绕一个非常消耗内存的树自动机外部库 我已经获得了源代码 构建 我想绘制 真实峰值 堆 随着模式大小的增加 不同运行的内存消耗 使用的指标符合我的目的并且不会影响问题 或者至少是它的合理近似
  • 打印星号的 ASCII 菱形

    我的程序打印出这样的钻石 但只有当参数或菱形的每一面为4 例如如果我输入6 底部三角形的间距是错误的 我一直在试图找出答案 当参数改变时 底部的三角形不会改变 只有顶部的三角形会改变 它只适用于输入4 public static void
  • Java:在 eclipse 中导出到 .jar 文件

    我正在尝试将 Eclipse 中的程序导出到 jar 文件 在我的项目中 我添加了一些图片和 PDF s 当我导出到 jar 文件时 似乎只有main已编译并导出 我的意愿是如果可能的话将所有内容导出到 jar 文件 因为这样我想将其转换为
  • Spring RestTemplate 使用 cookie 遵循重定向

    最近我遇到了一个问题 我需要做一个GET请求远程服务 我假设使用一个简单的 servlet 并且 RestTemplate 返回Too many redirects 经过一番调查 似乎对指定远程服务发出的第一个请求实际上只是一个 302 重
  • Integer.parseInt("0x1F60A") 以 NumberformatException 结束

    我尝试从数据库中获取长字符串内的表情符号代码 格式如下 0x1F60A 所以我可以访问代码 但它将是String 起初 我尝试通过执行以下操作来转换变量tv setText beforeEmo getEmijoByUnicode int e
  • 来自十六进制代码的 Apache POI XSSFColor

    我想将单元格的前景色设置为十六进制代码中的给定颜色 例如 当我尝试将其设置为红色时 style setFillForegroundColor new XSSFColor Color decode FF0000 getIndexed 无论我在
  • Spring Security SAML2 使用 G Suite 作为 Idp

    我正在尝试使用 Spring Security 5 3 3 RELEASE 来处理 Spring Boot 应用程序中的 SAML2 身份验证 Spring Boot 应用程序将成为 SP G Suite 将成为 IDP 在我的 Maven
  • Jackson XML ArrayList 输出具有两个包装器元素

    我在 Jackson 生成的 XML 输出中得到了两个包装器元素 我只想拥有一个 我有一个 Java bean Entity Table name CITIES JacksonXmlRootElement localName City pu
  • 自动生成Flyway的迁移SQL

    当通过 Java 代码添加新模型 字段等时 JPA Hibernate 的自动模式生成是否可以生成新的 Flyway 迁移 捕获自动生成的 SQL 并将其直接保存到新的 Flyway 迁移中 以供审查 编辑 提交到项目存储库 这将很有用 预
  • 了解joda时间PeriodFormatter

    我以为我明白了 但显然我不明白 你能帮我通过这些单元测试吗 Test public void second assertEquals 00 00 01 OurDateTimeFormatter format 1000 Test public
  • 流中的非终结符 forEach() ?

    有时 在处理 Java Stream 时 我发现自己需要一个非终端 forEach 来触发副作用但不终止处理 我怀疑我可以用 map item gt f item 之类的方法来做到这一点 其中方法 f 执行副作用并将项目返回到流中 但这似乎
  • java库维护数据库结构

    我的应用程序一直在开发 所以偶尔 当版本升级时 需要创建 更改 删除一些表 修改一些数据等 通常需要执行一些sql代码 是否有一个 Java 库可用于使我的数据库结构保持最新 通过分析类似 db structure version 信息并执
  • 在浏览器刷新中刷新检票面板

    我正在开发一个付费角色系统 一旦用户刷新浏览器 我就需要刷新该页面中可用的统计信息 统计信息应该从数据库中获取并显示 但现在它不能正常工作 因为在页面刷新中 java代码不会被调用 而是使用以前的数据加载缓存的页面 我尝试添加以下代码来修复
  • 洪水填充优化:尝试使用队列

    我正在尝试创建一种填充方法 该方法采用用户指定的初始坐标 检查字符 然后根据需要更改它 这样做之后 它会检查相邻的方块并重复该过程 经过一番研究 我遇到了洪水填充算法并尝试了该算法 它可以工作 但无法满足我对 250 x 250 个字符的数

随机推荐

  • iOS 自定义 UITextField 与出口初始化

    I need UITextField几乎没有定制 我创建了新的自定义类 CustomTextField 在IB中我创建了outlet对于我的每一个习惯UITextField 我运行代码 但自定义不起作用 为了进行检查 我在初始化过程中设置了
  • 应该如何构建plot_surface的数组?

    我试图了解如何构建用于plot surface 在Axes3d中 的数组 我尝试构建一个简单的表面来操作这些数组的数据 In 106 x Out 106 array 0 0 0 1 0 0 In 107 y Out 107 array 0
  • VBA 自动化 - 预填充组合盒

    我正在尝试通过 VBA 将数据从 Excel 预填充到本地 Intranet 网站 我已经能够将大部分数据预填充到网站 但我正在努力处理这个组合日期框 请参阅 HTML 代码 div class form group row div
  • 在 switch/case 语句中使用列表中的值作为 case

    我有一个 ArrayList 其中包含以下字符串 name age gender salary 有没有办法可以将 ArrayList 中的值用作 case 表达式 显而易见的答案是否定的 因为 case 表达式必须是常量表达式 但是 我想知
  • 谷歌标签管理器中的自定义事件触发器

    每次我创建自定义触发事件时 它都不会触发 谁能请教一下可能是什么原因 我创建了 gacustomevent 自定义触发器并将其命名为 gaevent 但该事件没有被触发 我想使用数据层中的事件来捕获值 有关如何解决问题的任何建议 从你的问题
  • 如何使着色器淡入某种颜色?

    这是我当前使用的着色器 它通过缓慢降低不透明度来淡化对象 我想褪成紫色 如何才能做到这一点 着色器 frag uniform sampler2D texture uniform float opacity void main vec4 pi
  • 使用 MultiSelect 具有自定义弹出编辑器的 Kendo Grid - 无法获取模型中的选定项目

    所以标题几乎说明了一切 我正在尝试将新的 MultiSelect 小部件合并到网格的自定义弹出编辑器模板中 我正在使用数据属性初始化方法并从远程数据源读取下拉选项 这一切都工作正常 但我无法将所选项目的值放入模型中 当我保存行时 数据数组将
  • 在 Access 中设置子窗体的记录源

    Dim newRS newRS SELECT DISTINCT Grp ID Group Name Group NPI FROM GROUP Forms loclistingfrm LocationListSubFrm RecordSour
  • ESAPI getValidInput 方法的使用

    我无法使用下面的 of 方法ESAPI class java lang String getValidInput java lang String context java lang String input java lang Strin
  • 使用 Javascript 以编程方式制作 Wave

    这是我目前拥有的http jsfiddle net 6GEfr http jsfiddle net 6GEfr 这可行 但我希望它像波浪一样 它应该看起来像真正的波浪 而不是 V 形 你如何逐渐做到这一点 var height 0 setI
  • Eclipse 在启动配置中使用错误的 Maven 依赖项

    我正在开发一个使用 Maven 进行依赖 构建 任何其他操作 项目生命周期管理或其他 的项目 并且我正在使用 Eclipse 进行开发和测试 该项目使用 Vert x 最新 我尝试使用 Hazelcast 进行一些集群管理 但我遇到了 Ha
  • 在什么类型的情况下汇编速度不够快,因此您需要直接的硬件/布尔逻辑解决方案?

    我已经开始通读装配艺术 https nostarch com assembly2 htm 其中有一个关于布尔逻辑的部分 其中指出 当然 使用 Pascal C 甚至汇编语言等语言指定编程问题的解决方案比使用布尔方程指定解决方案要容易得多 因
  • 具有动态嵌套组件的角度循环依赖性

    我在互联网上寻找解决方案 但无济于事 不同情况等 所以请原谅下面的代码转储 我遇到的问题与循环依赖有关 代码转储是为了提供上下文 旁注 我对 Angular 和 Typescript 相当陌生 这个概念 当然 我正在尝试构建一组嵌套组件 它
  • 克隆/拉取 git 存储库时出现致命读取错误

    我在我的系统上使用 Git for Windows git 版本 1 7 4 msysgit 0 并且大多数时候它都工作得很好 但是今天在大学 每当我尝试使用 Git 时 我都会遇到问题git clone or git pull or ge
  • 在新日期上调用 getTime 时,未定义不是函数

    当尝试运行它时 我得到 未定义不是一个函数 我缺少什么 function bench func var start new Date getTime for var i 0 i lt 10000 i func console log fun
  • 当多个Spring Singleton实例同时访问时

    如果您在 Spring 配置中的单例范围内定义服务 那么如果多个用户尝试同时访问它 即作为依赖项注入到您的控制器中 会发生什么情况 它应该引起任何冲突吗 或者 IoC 容器将保留后面的调用直到第一个调用完成 如果是这样 它会降低大型应用程序
  • 绑定到枚举的关联值

    是否有一个标准的方法来绑定 比如说 TextField到枚举的关联值 所以 鉴于此 enum Choice case one String case two String 我可以以某种方式将它用作视图中的绑定吗 State var choi
  • 当方向设置为水平时,UIPageViewController 响应垂直平移

    我在这上面花了几个小时 我已经初始化了UIPageViewController with UIPageViewControllerNavigationOrientationHorizontal 但由于某种原因viewControllerBe
  • 我可以在共享库中声明全局变量吗?

    我可以在库中声明一个全局变量 然后将其编译为共享对象吗 通过将其声明为 extern 从其他库或主应用程序代码中引用它是否安全 理论上它是有效的 niko dev1 snippets cat libcode c int variable l
  • drools 中是否有任何 API 可以通过传递值来动态创建 drl 文件?

    我知道如何使用所有方法在 KIE 工作台中创建 DRL 文件 但我的问题是不使用 KIE 工作台 我们可以创建 drl使用我们所需的值进行文件 如果有任何可能性 请建议我 同样的方式建议我任何与此相关的 API 提前致谢 您可以使用Droo