Kotlin
1@Entity 2@Table(name = "team") 3class Team( 4 /** チームネーム */ 5 @Column(name = "team_name") 6 var teamName: String, 7 /** メンバー */ 8 @OneToMany(cascade = [CascadeType.ALL], orphanRemoval = true, fetch = FetchType.LAZY, mappedBy = "monitorRule") 9 var members: MutableSet<Member>? = mutableSetOf(),
Kotlin
1@Entity 2@Table(name = "member") 3class Member( 4 /** メンバー氏名 */ 5 @Column(name = "member_name") 6 var memberName: String, 7 /** チーム */ 8 @ManyToOne(fetch = FetchType.LAZY) 9 @JoinColumn(name = "team_id", referencedColumnName = "id", insertable = true, updatable = true) 10 var team: Team
この時、下記のようにsaveが出来ません。
Kotlin
1 val team = Team("チームネーム1") 2 teamRepository.save(team) 3 4 val member = Member("メンバーネーム1", team) //① 5 6 team.members?.clear() 7 team.members?.add(member) 8 teamRepository.save(team)
EntityManagerを使うなどしてみたのですが、
結局①の箇所でinsertが走ってしまいPK制約違反になるようです。
何か良い方法はありますでしょうか。
あなたの回答
tips
プレビュー