最近我倾向于流口水,我认为这是一个很棒的软件.Drools的核心思想是drl文件。我们应该编写规则文件,例如:
rule "name"
when
then
end
when部分依赖于实体的属性。例如:现在我有一个可以在我的规则中使用的User类。
public class User {
private int money;
private Date time;
//getter and setter.....
}
现在我需要知道用户在2012-09-11和2013-01-01之间的资金,如果他的钱> 100,那么我的逻辑是怎么做的?
答案 0 :(得分:2)
使用以下规则可以轻松实现:
rule 'Some Rule'
$u: User( time > '11-sep-2009', time < '01-jan-2013', money > 100)
then
//do your logic here. $u references the User object
end
希望它有所帮助,
答案 1 :(得分:0)
您可以在DRL文件中编写一个函数,如果用户在2012-09-11和2013-01-01之间的金额大于100,则该函数将返回true。您可以在使用eval并写入部分规则时调用此函数那么你的逻辑部分。写作函数在DRL文件中并不是一个好主意!