JPA使用生成的ID保留ManyToMany

时间:2015-08-08 01:54:40

标签: java spring hibernate jpa spring-data

问题: 是否可以将ManyToMany关系与连接表中的其他列保持一致,在这两列中生成两个连接实体中的ID?

其他信息: 我有一个Spring 4和Hibernate的应用程序设置。我通过遵循method documented on WikiBooks(通过在每个实体中使用OneToMany关系实际实现的ManyToMany关系)在加入实体上设置了与其他列的ManyToMany关系。一切似乎都按照我设置的方式工作,除了级联持久操作。我认为问题是由于在Spring / Hibernate已经尝试持久化ProjectAssociation实体之后才生成Employee和Project实体的ID。

我已经彻底测试了这一点,并且我发现正在生成Employee和Project的ID,但ProjectAssociation实体仅在为ProjectAssociation记录Hibernate INSERT之前填充了EmployeeId(由于NULL而失败外键列中的值)。我已经尝试了@PrePersist的各种kludges,但在为Employee和Project实体分配了ID之前,正在调用@PrePersist方法。

0 个答案:

没有答案