我有一个类似的表结构如下:JPA:含蓄坚持@ManyToOne实体
Table_A(
a_id,
data,
primary key(a_id)
)
Table_B(
b_id,
a_id,
data,
primary key (b_id),
foreign key (a_id) references Table_A(a_id)
)
有一对表-A和表-B之间一对多的关系。我的问题是,如果我对每个表,其中的实体:
- 实体表-A由表-B实体的名单,并
- 实体表-B不一定需要表-A的引用(只田B_ID,A_ID,数据)
是有可能的方式来诠释这些实体在那里我能坚持一个表-A实体和进程将隐含坚持所有表-B实体与新产生的表-A的主键A_ID的价值。
在此先感谢。
这里是我基本上有。但我得到以下例外。看起来Table_B在Table_A之前持久化,因此不存在a_id值。
@Entity
public class Table_A {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "a_id")
private Integer id;
@OneToMany (cascade = CascadeType.PERSIST)
@JoinColumn(name="a_id")
private List<Table_B> bList;
private String data;
}
@Entity
public class Table_B {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "b_id")
private Integer id;
private String data;
}
ERROR: null value in column "a_id" violates not-null constraint Detail: Failing row contains (null, Testing, 16)
请参阅我编辑的答案 –