我有一个数据库,在下面定义的给定实体中有一个一对多嵌套对象:
@OneToMany(mappedBy="parentID", cascade=CascadeType.ALL, fetch=FetchType.EAGER)
private Set<ZipEntity> zipCodesServiced;
我试图将父对象和这个子列表对象保持在它们与父对象链接的位置,但所有创建的对象上的parentID列都是";0〃;。创建的邮政编码条目示例如下:
ID parent_id zipCode
2087 0 12345
2086 0 54321
下面是ZipEntity
类,
@Data
@Entity
@Table(name="zip_codes_serviced")
public class ZipEntity implements Serializable {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private long ID;
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name="parent_id")
private int parentId;
@Column(name="zipcode")
private String zipCode;
}
我不需要这些字段自动递增,我需要parent_id列对于在同一父对象下创建的所有条目都是相同的,并链接到所述父对象。
很抱歉,我之前的回答没有回答这个问题,而是试图回答另一个问题。
我使用它所做的工作涉及三张表,
父表
联接表
子表
联接表中存在关系
Parent ID - Child ID
1 | 23
1 | 46
1 | 100
100 | 23
因此,邮政编码的子表将有自己的pk I和父表,并且只有每个表的pk ID被插入到联接表中,并且在@OneToMany中,您将反向列映射到联接列