JPA 영속성 전이 질문드립니다.

22.05.03 10:23 작성 조회수 160

0

안녕하세요. JPA 영속성 전이와 관련하여 질문드립니다!

목적은 유저가 탈퇴한다고 가정했을때,

User 데이터를 delete할때 그와 관련된(외래키로 엮어져있는) 다른 테이블의 모든 데이터를 같이 삭제하고 싶습니다.  

우선 ERD는 아래와 같습니다.

 

users : apps = 1:N

users: resources = 1:N

app_resources = apps와 resources의 중간테이블(apps:resources = N:M 해결)

resources 슈퍼타입

scenes, avartar 서브타입

scenes: hubs = 1: N 

관계입니다.

 

위와같은 ERD에서 users테이블에 데이터를 삭제할경우 연관된 모든 데이터를 지우기 위해 아래의 사진과 같이 모두 양방향 연관관계를 추가하였습니다.

아래 사진처럼 작성했을경우 정상적으로 user에 관련된 데이터들이 모두 잘 삭제가 됩니다.

그런데 아래와 같이 모든 엔티티에서

@OneToMany 연관관계에 cascade = cascadeType.ALL, orphanRemoval = true 를 사용해도 괜찮은지 질문드립니다!

(화면에 다 넣으려니 잘 안보이네요 ㅠㅠ 확대해서 봐주시면 감사하겠습니다)

 

답변 0

답변을 작성해보세요.

답변을 기다리고 있는 질문이에요.
첫번째 답변을 남겨보세요!