中国有两种平等模式。
:这是默认情况。droolsEngine使用插入工作内存中的所有对象。对于每个新对象,将返回一个新对象。如果重复插入它,请返回现有对象。
例子:
对于上面的示例,但是,工作记忆中将有两个对象。
:Drools Engine使用将所有插入工作内存的对象使用的对象。在此模式下,如果将新对象插入流口水,则仅存在此对象(根据对象和判断)将返回新对象,否则将返回已经存在。
例子:
对于上面的示例,但是,工作记忆中将有一个对象。
有一个具有以下三个属性的对象,包括重写对象的hashCode和等于重写对象的方法。
这是通过配置的一种方法
它可以通过配置下的属性进行配置。
注意:
此对象需要重写哈希码并等于方法。
在此配置文件中,有必要指定用于确定对象的平等模式。
注意:
需要查看2个值
规则文件中的内容非常简单。只要工作内存中有对象,该对象的值就是输出。
具体说明显示了上图中的指示。
有关以下代码,请查看不同平等模式下的行为
根据构造函数的前两个参数重写对象的方法。
因为P1和P2是两个不同的对象。
因为P2反复加入了工作内存,所以此时工作内存已经存在,因此返回了上一个连接
因为在这种模式下,有必要比较对象和方法,并且对象重写这两种方法,因此相同。
https://gitee.pom/huan1993/spring-cloud-parent/tree/drools/drools-fact-equality-modes
1. https://docs.drools.org/7.69.0.final/drools/html_single/index.html#fact-equart-equality-modes-modes-decision-endine
原始:https://juejin.cn/post/709750450320869918
