JPA @Columnアノテーションを参照して、insertable=falseとupdatable=falseについて説明してください。質問する

JPA @Columnアノテーションを参照して、insertable=falseとupdatable=falseについて説明してください。質問する

フィールドに注釈が付けられている場合insertable=false, updatable=false、値を挿入したり既存の値を変更したりできないということではないでしょうか? なぜそうする必要があるのでしょうか?

@Entity
public class Person {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private Long id;

    @OneToMany(mappedBy="person", cascade=CascadeType.ALL)
    private List<Address> addresses;
}

@Entity
public class Address {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private Long id;

    @ManyToOne
    @JoinColumn(name="ADDRESS_FK")
    @Column(insertable=false, updatable=false)
    private Person person;
}

ベストアンサー1

そうすると、責任参照された列のエンティティを作成/更新する方法は、現在実体ではなく、別の実在物。

おすすめ記事