0

我有一个规则,它接受Map()事实,然后为这张地图设置很多元素。在执行其他规则时,我希望能够在其他地方使用此地图。我在 Drools 中读到了全局变量,但似乎它们不应该用于此目的。现在我将此映射作为私有属性保存在 Java 类中,以便它可以将所有数据保存在 Web 应用程序上下文中,但这会增加我的内存占用。我知道这听起来可能很奇怪,但是 Drools 规则中是否有任何与 Java 静态字段的类比?

提前致谢!

4

1 回答 1

0

你能解释一下你的规则试图实现什么吗?大多数时候,您应该重新制定规则以满足您的需求。过滤 Map() 的规则需要将 java.util.Map 的实例插入到知识会话中。如果您将 Map 添加为全局,您的规则将无法直接过滤 Map()。我通常建议使用更结构化的事实/对象来编写规则而不是通用结构。请记住,如果您将 java.util.Map 实例插入会话,则该 Map 将可用于过滤 Map() 对象类型的所有规则。

希望对您有所帮助,如果您能提供更多信息,我们将能够进一步提供帮助。

干杯

于 2011-12-03T13:51:06.797 回答