2

在 drools 中,我们经常有需要调用的通用逻辑。有两种选择可以实现这一目标。

  1. 在 drools 中使用函数。
  2. 将通用逻辑移动到 java 中的某个 Util 类并从 drools 调用它。

以上哪个推荐?

谢谢。

4

1 回答 1

2

我总是建议使用导入的静态方法,除非它是一个非常简单的逻辑,它是您的规则子集的本地并且需要动态定义。原因是:

  • 保持 DRL 代码的程序逻辑干净,使维护更便宜、更容易。
  • 编写 xUnit 测试以静态方法测试函数逻辑比测试 DRL 函数更容易。
  • 它使该功能可用于所有 DRL 文件,没有冲突,也没有 IDE 错误代码。

DRL 函数构造是解决简单本地问题的工具,但 Java 类是您要保留和维护过程代码的地方。

于 2012-05-30T18:28:59.907 回答