我想给我的Drool通用一个。这是我的Java类结构。
public class RulesModel {
private String field;
private List<Object> values;
public String getField() {
return field;
}
public void setField(String field) {
this.field = field;
}
public List<Object> getValues() {
return values;
}
public void setValues(List<Object> values) {
this.values = values;
}
}
我想让我的规则像下面这样
rule "sample"
when
$rule : RulesModel( field == "source", value == "facebook", value == "youtube", value != "instagram" )
then
// actions
end
如何在Drools中验证列表对象?
你要找的是 contains
和 not contains
运营商。
(假设你的 RuleModel
包含 Strings
为值)。)
rule "sample"
when
$rule : RulesModel( field == "source", values contains "facebook", values contains "youtube", value not contains "instagram" )
then
// actions
end
你可以在这里获得更多关于Drools支持的操作符的信息。https:/docs.jboss.orgdroolsrelease7.37.0.Finaldrools-docshtml_singleindex.html#drl-operators-ref_drl-rules。
希望对你有所帮助。