0

我有一个POJOs内存集合,这些POJOs来自其他系统。我有以下两个问题:

  1. 我想知道 POJO 在属性值方面是重复的。

  2. 我还验证了其他集合,即我在一个城市有 200 家商店,商店 ID 从 1 开始,到 200 结束。我从商店获得了数据,它向我提交了 500 作为商店 ID。我想根据我收集的数据来验证数据是否正确?

我目前卡住了,不知道如何执行这些操作。我正在收集市场趋势的数据,来自全市各地的商店都在我们这里注册。我们为每个商店分配了 ID。店主将以纯文件格式向我们发送他们的销售详细信息。我的任务是在数据库中收集正确的数据。如果店铺或商品 id 与我的收藏不匹配,则该记录将不正确,我通知店主该记录无效。如果文件包含两次或多次相同的行,我会通知它是重复的。

谢谢,

4

1 回答 1

0

我认为您需要equals()为这些实现方法POJOs才能说一个对象与另一个对象重复。然后,您可以继续将POJOs收到的插入到 a 中java.util.Set,每次收到新的时,您都可以使用 . 检查 POJO 是否已经收到set.contains()

对于 #2,您可以维护Map另一个集合中对象的 ID,以检查新到达的对象是否POJO是该地图中存在的有效对象。

AFAIK,drools要求您提供对象的规范表示来运行对象状态的规则。上述两个验证要求您维护这些数据结构,而不管使用流口水或任何其他规则引擎。

于 2012-09-18T02:39:54.357 回答