Java Hibernate ManyToMany在更新时出现连接表问题

Java Hibernate ManyToMany在更新时出现连接表问题,java,hibernate,orm,Java,Hibernate,Orm,我正试图使许多协会为所有CRUD操作工作。我有两个实体:位置和事件 地点可以容纳多个事件,一个事件可以在多个地点发生 在第一种情况下,我有 在课堂上 @ManyToOne( targetEntity=EventDto.class, cascade = { CascadeType.PERSIST, CascadeType.MERGE }) @JoinTable( name = "EVENTS_PLACES", joinColumns = { @J

我正试图使许多协会为所有CRUD操作工作。我有两个实体:
位置
事件

地点可以容纳多个事件,一个事件可以在多个地点发生

在第一种情况下,我有

在课堂上

@ManyToOne(  
    targetEntity=EventDto.class,  
    cascade = { CascadeType.PERSIST, CascadeType.MERGE })  
@JoinTable(  
    name = "EVENTS_PLACES",  
    joinColumns = { @JoinColumn(name = "PLACE_ID") },  
    inverseJoinColumns = { @JoinColumn(name = "EVENT_ID") })  
private List<EventDto> events;
当更新一个地方时,一切似乎都很好, 但当我尝试创建一个事件时,它也尝试创建一个场所
=>这会导致主键冲突

我使用eclipse重写了hashcode()和equals()

谢谢你的帮助

请毫不犹豫地给我指一个页面,其中显示并解释了一个完全有效且经过测试的多人关系

克里斯托弗

这是一个很好的例子

只要试着将他们的代码复制到你自己的代码中,它就会起作用。 如果仍然没有,请发布两个类的完整列表以及导致错误的代码,也许我可以看到问题所在

@JoinTable(name = "EVENTS_PLACES", joinColumns = @JoinColumn(name = "EVENT_ID"), inverseJoinColumns = @JoinColumn(name = "PLACE_ID"))
private List<PlaceDto> places;
@ManyToMany (
   mappedBy = "events",  
   cascade = { CascadeType.PERSIST, CascadeType.MERGE },  
   fetch = FetchType.LAZY,  
   targetEntity = FundDto.class)  
private List<PlaceDto> places;