Java drools验证是唯一和依赖的

Java drools验证是唯一和依赖的,java,collections,drools,Java,Collections,Drools,我在内存中有一组pojo,这些pojo来自其他系统。我有以下两个问题: 我想知道什么POJO在属性值方面是重复的 我还针对其他集合进行验证,即我在一个城市中有200家店铺,店铺ID从1开始到200结束。我从商店得到一个数据,它将我提交500作为商店id。我想根据我收集的数据验证数据是否正确 我目前被卡住了,不知道如何执行这些操作。 我正在收集市场趋势的数据,全市各地的商店都在我们这里注册。我们为每个商店分配了ID。店主将以普通文件格式向我们发送他们的销售详情。我的任务是在数据库中收集正确的数据。

我在内存中有一组
pojo
,这些
pojo
来自其他系统。我有以下两个问题:

  • 我想知道什么POJO在属性值方面是重复的

  • 我还针对其他集合进行验证,即我在一个城市中有200家店铺,店铺ID从1开始到200结束。我从商店得到一个数据,它将我提交500作为商店id。我想根据我收集的数据验证数据是否正确

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


    谢谢,

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

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


    好的,
    drools
    要求您提供对象的规范表示,以便在对象的状态上运行规则。上述两种验证要求您维护这些数据结构,而不考虑使用drools或任何其他规则引擎。

    您尝试过什么?向我们展示您的尝试,或者至少详细描述规格,以便提供真正的解决方案。