代码之家  ›  专栏  ›  技术社区  ›  user3094331

Spring与Hibernate集成获得重复记录

  •  0
  • user3094331  · 技术社区  · 8 年前

    enter image description here

    在我们的项目中,我们将Spring与Hibernate结合使用,并使用其他团队JAR作为从属JAR从oracle数据库中获取数据。

    即使我们在模型类中实现了equals()和hashCode()方法,并且我们将这些对象存储在HashSet中,我们也会得到重复的记录。我很奇怪为什么set允许在这里复制对象。即使hashCode()和equals()方法被重写?。

    如果观察到屏幕截图,modcount大小不同,表大小也不同

    1 回复  |  直到 8 年前
        1
  •  3
  •   shanees mk    8 年前
    • 从类中删除hashCode()或equals()

    • 如果在类中重写equals和hashcode方法,则equal对象返回相同的hashcode。。HashSet不允许使用相同的hashcode,因为HashSet基于hashcode验证复制,所以您的解决方案是:可以从类中删除hashcode()或equals()