drools中then里面有什么关键字,如何使用他们
时间: 2024-01-29 10:02:32 浏览: 65
Drools中的then语句中有以下几个关键字:
1. insert:用于将一个新的Fact对象插入到当前的工作内存中。
2. delete:用于删除当前工作内存中的一个Fact对象。
3. update:用于更新当前工作内存中的一个Fact对象。
4. modify:用于修改当前工作内存中的一个Fact对象。
5. retract:用于从当前工作内存中撤销一个Fact对象。
这些关键字用于在规则匹配之后对工作内存中的Fact对象进行操作。例如,在then语句中使用insert关键字可以将新的Fact对象插入到工作内存中。使用delete关键字可以删除当前工作内存中的一个Fact对象。使用update关键字可以更新当前工作内存中的一个Fact对象。
下面是一个简单的例子,展示了如何在Drools规则的then语句中使用这些关键字:
```
rule "Update Person Age"
when
$p: Person(age < 18)
then
modify($p) {
setAge($p.getAge() + 1)
}
System.out.println("Person " + $p.getName() + " has had their age updated to " + $p.getAge());
end
```
在这个例子中,我们使用了modify关键字来更新工作内存中的Person对象的年龄属性。然后,我们使用System.out.println语句输出一条消息,告诉用户哪些人的年龄已经被更新。
阅读全文