JPA OneToMany在父项和子项中具有复合键
我有两个表,表示用户在给定办公室管理某些应用程序的授权。一个表具有office和user的复合主键,并保存关于它们的信息,另一个表具有office、user和applicationId的复合键(表2不保存其他信息) 各实体: @实体 公共类Table1实现了可序列化{ @嵌入ID 私有表1_pk表1id; } 到目前为止是这样吗?如何表示两个表之间的一对一关系JPA OneToMany在父项和子项中具有复合键,jpa,Jpa,我有两个表,表示用户在给定办公室管理某些应用程序的授权。一个表具有office和user的复合主键,并保存关于它们的信息,另一个表具有office、user和applicationId的复合键(表2不保存其他信息) 各实体: @实体 公共类Table1实现了可序列化{ @嵌入ID 私有表1_pk表1id; } 到目前为止是这样吗?如何表示两个表之间的一对一关系 两个表上的关键字段名称相同(因此在DB中的table1和table2上都称为“userId”,table2实际上只是有一个包含更多应用程
两个表上的关键字段名称相同(因此在DB中的table1和table2上都称为“userId”,table2实际上只是有一个包含更多应用程序代码的字段)我发现了这个,现在查看它,它可能就是我要找的:我发现了这个,现在查看它,它可能就是我要找的:
+---------------+ +---------------+
| Table1 | | Table2 |
+---------------+ +---------------+
| - userId | 1 n | - userId |
| - officeId | <-------> | - officeId |
| <other data> | | - applicId |
+---------------+ +---------------+
@Data
@Embeddable
public class Table1_pk implements Serializable {
private BigDecimal officeId;
private String userId;
}
@Data
@Embeddable
public class Table2_pk implements Serializable {
@Embedded
private Table1_pk table1pk;
private int applicId;
}
@Entity
public class Table2 implements Serializable {
@EmbeddedId
private Table2_pk table2Id;
}