JPA外键INSERT

时间:2015-07-17 09:50:02

标签: java jpa foreign-keys persist

我的时区早上好:

我有以下类结构:

C1类

 @Id
 @GeneratedValue(strategy = GenerationType.SEQUENCE, generator ="seqG")
 @Column(name = "ID_IDENTIFIER_C")
 private Long id;

 @OneToOne(mappedBy = "V1",cascade={CascadeType.PERSIST})
 private C2 var1;

C2类

@Id
@Column(name = "ID_IDENTIFIER_C")
private Long id;

@OneToOne
@JoinColumn(name = "ID_IDENTIFIER_C", insertable = false, updatable =     false)
private C1 var;

当我尝试持久化C1类的新实体(对象)时,它会抛出以下异常

java.sql.SQLIntegrityConstraintViolationException: ORA-01400: cannot insert NULL into ("AGILE"."T_C2_TABLE"."ID_IDENTIFIER_C")

当我插入类C1时,我没有填充id,因为它是由序列生成器生成的,所以我该如何解决这个问题呢?我应该先插入对象C1,然后检索id然后INSERT对象C2吗?有没有办法一次完成所有工作?

提前致谢 最好的问候

0 个答案:

没有答案