我正在使用 JPA 并收到以下警告。我对此进行了研究,并理解了为什么我需要覆盖它以及 Hibernate 如何使用这些方法。不过我还有一个问题:
异常:
Composite-id class does not override equals()
问题:
为什么 Hibernate 只关心没有复合 ID 的类?如果只有一个存在,它是否默认比较 @Id
字段,还是这里发生了更复杂的事情?
最佳答案
因为当实体没有复合 ID 时,它们只有一个,属于基本支持的类型之一(Integer、Long、String 等),并且这些类已经具有定义良好的 equals()
(和 hashCode()
)方法。
关于java - JPA/hibernate "Composite-id class does not override equals()",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22646456/