在1 kiession中共享DRL文件之间的变量

时间:2018-06-13 08:49:42

标签: java drools rules

在1 kie会话中用于在2 DRL文件之间共享变量的最佳方法是什么?

我理解全局变量对我来说不是一个选项,因为一旦分配了全局变量值,它也会与其他kie会话共享。

1 个答案:

答案 0 :(得分:0)

这完全取决于你所说的变量'。

如果变量是用于参数化规则的变量,并且在整个会话执行期间保持不变,那么您可以使用global。在要使用它的所有DRL文件中声明全局(声明在所有DRL文件中必须相同(即类型和名称))并在会话中插入事实之前使用ksession.setGlobal(...)设置它

如果变量是您希望用于在规则之间传递数据的东西,那么最好的方法是使用特定的事实。创建一个类来保存您想要共享的信息,并将其作为需要的事实插入。

希望它有所帮助,