私は子エンティティをinseryingせずに親エンティティを挿入するために、保存メソッドを呼び出したときに、私は 例外hibernateで共有プライマリキーによって1対1の関係で子を挿入せずに親エンティティを保存する方法は?
org.hibernate.id.IdentifierGenerationException: attempted to assign id from null one-to-one property [com.example.sms.domain.Child.parent]
の下に取得休止状態で共有主キーによる1対1の関係、 を使用しています
親クラスエンティティのマッピングを伴う子クラスエンティティのコードは、 以下です。
@Entity
@Table(name = "t_child")
public class Child {
@Id
@Column(name="user_id", unique=true, nullable=false)
@GeneratedValue(generator="gen")
@GenericGenerator(name="gen", strategy="foreign", [email protected](name="property", value="user"))
private Long id;
@OneToOne(optional = false,fetch = FetchType.LAZY)
@PrimaryKeyJoinColumn
private Parent parent;
と私はのような
@OneToOne(mappedBy="parent", cascade=CascadeType.ALL)
private Child child;
の下に子クラスのエンティティをマッピングした親クラスのエンティティ内の子実体を挿入することなく、唯一の親エンティティを保存する方法はありますか?
を持つオブジェクトを持ってオブジェクトを保存されたとき: '@OneToOne( mappedBy = "親"、カスケード=カスケード型。ALL、nullable = true) ' –
' cascade = CasecadeType.ALL'を削除して試してください。 – ujulu
@JorgeCampos:その表示属性nullableは、アノテーションタイプのために定義されていません。OneToOne –