有多个对象的流口水

时间:2018-12-08 06:26:49

标签: drools

我有一个“申请人”类的对象

Applicant applicant = new Applicant("David", 37); // (name, experienceInYears)

根据申请人的年龄,我要设置其角色:

SuggestedRole suggestedRole = new SuggestedRole();
applicantService.suggestARoleForApplicant(applicant, suggestedRole);

我的流口水文件是:

rule "Suggest Manager Role"
    when
        Applicant(experienceInYears > 10)
    then
        suggestedRole.setRole("Manager");
end

From: https://www.baeldung.com/drools

我要实现的是对List [申请人]执行相同的操作。一种方法是遍历Java中的列表并执行相同操作,但是我正在寻找流口水解决方案。无论如何,我可以配置流口水以将List [Applicant]作为输入并返回List [SuggestedRole]

1 个答案:

答案 0 :(得分:1)

您无需更改任何内容。 Drools进行模式匹配。如果将所有“申请人”对象插入Drools会话中,则相同的Drools规则将逐一评估申请人,并在适用的情况下设置建议的角色。