由于该违规发生在
STUDENT_COURSES表中,因此您似乎试图将相同的关系保留两次。您映射了
Set,这表示Hibernate这些关系必须发生一次以上。检查生成的DDL中COURSE_ID,STUDENT_ID上的唯一索引。
原因可能是程序逻辑中的缺陷(例如,将与
equalson
相关的字段
Course添加到集合中后对其进行修改,或者
equals您的
Course实体中存在故障。
如果a
Student可以参加一次
Course以上(例如第一次失败),则必须决定自己(您在现实世界中的客户,因为这是一项业务决策)。



