将SQL语句转换为Drools规则

时间:2014-03-07 10:52:26

标签: drools

我必须将一些存储过程移植到Drools中。由于存储过程遵循命令式编程模型,我发现将它们转换为Drools规则很棘手。例如,我可以有一系列这样的案例陈述:

case
    when <condition 1> then <action 1>
    when <condition 2> then <action 2>
    when <condition 3> then <action 3>
end

因为在上面的评估中隐含了一个排序,即首先评估条件1,然后评估条件2,然后条件3,我发现很难将其转换为Drools。在Drools中,我只是在没有指定顺序的情况下编写规则。如何将上述SQL隐含的顺序实现为Drools规则?我是否必须创建JPBM流程并为上述SQL中的每个条件设置规则任务?

1 个答案:

答案 0 :(得分:2)

在手册中查找salienceactivation-group

salience属性为您提供了一种定义规则优先级的机制。

使用activation-group属性可以强制激活特定组中只有一个规则。

通过组合这些,你有一些近似于case / switch语句。