如何创建与复合 Id 相关的 PK class

How to create a PK class which has a relation to a composite Id

我将实体 A 的 ID 更改为复合 ID。实体 B 也有一个 PK class 关系的一侧是实体 A。我应该如何更改我的 PK class 代码?我应该使用 IdClass 而不是 Id?

public class BPK implements Serializable{

    // I need to change this single Id to a composite Id to include 2 columns from Entity A instead of only one id attribute 
    @Id
    @Column(name = "aid")
    private Integer a;

    @Id
    @Column(name = "bid")
    private Integer b;

}

Class一场PK

public class APK implements Serializable{

    @Id
    @Column(name = "id")
    private Integer id;

    @Id
    @Column(name = "project_mode")
    private Integer project;
 }
public class BPK implements Serializable{
    private APK a;
    private Integer b;

}

JPA 中的主键 类 不需要注释,因为它们已经直接映射到实体中。派生 ID 是规范允许在主键中嵌套的一个地方,因为嵌套 类 总是向下钻取到基本类型(相对于实体)。