Java - Drools 验证对象值列表

问题描述 投票:0回答:1

我想给我的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中验证列表对象?

java drools rules rule-engine
1个回答
0
投票

你要找的是 containsnot 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。

希望对你有所帮助。

© www.soinside.com 2019 - 2024. All rights reserved.