Inflearn Community Q&A
JPA 영속성 전이 질문드립니다.
Written on
·
416
0
안녕하세요. JPA 영속성 전이와 관련하여 질문드립니다!
목적은 유저가 탈퇴한다고 가정했을때,
User 데이터를 delete할때 그와 관련된(외래키로 엮어져있는) 다른 테이블의 모든 데이터를 같이 삭제하고 싶습니다.
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 를 사용해도 괜찮은지 질문드립니다!
(화면에 다 넣으려니 잘 안보이네요 ㅠㅠ 확대해서 봐주시면 감사하겠습니다)
jpaJPAjava
Quiz
46% of people got it wrong. Give it a try!
JPA에서 `em.getReference`를 사용했을 때 처음 반환되는 객체의 특징은 무엇일까요?
실제 엔티티 객체
데이터베이스에서 즉시 로드된 객체
실제 엔티티를 대신하는 프록시 객체
영속성 컨텍스트와 무관한 객체





