gpt4 book ai didi

java - 如何将数据从外部 Java 应用程序馈送到 Drools BRMS 并取回数据?

转载 作者:太空宇宙 更新时间:2023-11-04 13:51:25 24 4
gpt4 key购买 nike

基本上,我首先在 Eclipse 中创建了一个 Drools 项目,并设计了一个基本规则应用程序,它将一个对象放入工作内存中并触发所有规则(使用 ksession),这些规则工作正常。我想知道如何从不同的 Java 应用程序(不同的 Eclipse 项目)调用此规则应用程序,向其提供输入对象变量并将计算的变量(从触发规则)返回到新的 Java 应用程序,从而有效地将规则处理与用户界面隔离。目前还没有找到关于如何实现这一目标的好例子。我是业务规则管理系统的新手。

最佳答案

您可以创建一个实用程序来创建静态 kSession。然后创建一个方法来接受您的输入并触发您的规则,如下所示(未经测试的代码)。每当您想使用它时,您都可以调用。

DroolsTest.getInstance().fire(输入);

public class DroolsTest {

private static KieSession kSession;
private DroolsTest instance;

private DroolsTest(){
if(null == instance){
// load up the knowledge base
KieServices ks = KieServices.Factory.get();
KieContainer kContainer = ks.getKieClasspathContainer();
kSession = kContainer.newKieSession("ksession-rules");
}
}

public static DroolsTest getInstance(){
if(null = instance){
instance = new DroolsTest();
}
}

public static void fire(Object input) {
kSession.insert(input);
kSession.fireAllRules();
}
}

关于java - 如何将数据从外部 Java 应用程序馈送到 Drools BRMS 并取回数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30238277/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com