我遇到了问题,我无法解决问题。 我有两个实体用连接表连接。(多对多)。
我在数据库中插入一行。 在另一个会话中,当我尝试添加另一行时,它会在插入之前删除。 例如`example
Meeting meeting1 = new Meeting("Quaterly Sales meeting");
Meeting meeting2 = new Meeting("Weekly Status meeting");
Employee employee1 = new Employee("Sergey", "Brin");
Employee employee2 = new Employee("Larry", "Page");
employee1.getMeetings().add(meeting1);
employee1.getMeetings().add(meeting2);
employee2.getMeetings().add(meeting1);
session.save(employee1);
session.save(employee2);
现在如果另一次创建另一个会话,
Meeting meeting2 = new Meeting("new");
Employee employee1 = new Employee("new", "new");
employee1.getMeetings().add(meeting2);
删除连接表中的所有先前数据(EMPLOYEE_MEETING),并且表中仅保留最后一个数据。
论坛thread中有一个帖子说我应该写equals和hashcode。我通过eclipse生成hashcode()和equals(),但它仍然相同,Hibernate在insterts之前删除。知道如何制止这个吗?非常感谢你。