0

我是 Drools 的新手。根据我的用例,我想动态创建规则。我考虑过使用以下规则模板:

 template header

 rule
 eventType

 package org.ossandme;

 global org.ossandme.AlertDecision alertDecision;

 template "alert"

 rule "alert_@{row.rowNumber}"

 when
      @{eventType}(@{rule})
 then
      alertDecision.setDoAlert(Boolean.TRUE);
 end

 end template

但是这个模板的问题在于它固定了条件和操作的数量(在这种情况下为 1)。根据我的用例,我可能在不同的规则中有不同数量的条件和操作。是否可以创建一个可以创建规则的通用模板,每个规则中具有不同数量的条件和不同数量的操作?

4

2 回答 2

0

Drools 模板只是 String 模板机制的一个花哨名称。您可以使用任何您想要创建规则的模板框架。

我过去使用的一些框架是:

希望能帮助到你,

于 2018-04-17T15:49:26.450 回答
0

建议任何字符串模板框架的另一个答案是正确的;或者,如果您想要一个纯基于 Java 的解决方案,您可能需要考虑使用可执行模型 DSL 的代码动态编写规则。

您可以参考这篇博客文章,其中包含参考资料和如何使用它的示例的链接。

于 2018-04-19T08:56:50.143 回答