반응형
cascade는 관계에 추가로 지정하는 속성인데
RDB의 CASCADE, RESTRICT 랑은 비슷한데 좀 다르다.
팀과 멤버 테이블이 있다고 할때
Member - @ManyToOne Team
Team - @OneToMany List<Member>
@ManyToOne(cascade=CascadeType.ALL)
- 멤버가 삭제되면 팀도 삭제된다.
@OneToMany(cascade=CascadeType.ALL)
- 팀이 삭제되면 멤버도 삭제된다.
- 팀을 추가할때 멤버도 추가한다.
@OneToMany는 말이 되지만
@ManyToOne에서 cascade를 쓰는건 말이 안된다. 팀을 잃어버린 멤버들이 발생(고아 객체)
@OneToOne에서도 상호 관계를 생각해서 알맞은 위치에 써야되겠다.
반응형
'백엔드 > SpringBoot' 카테고리의 다른 글
스프링부트 Jackson 라이브러리 날짜 타임존이 UTC로 변경되는 문제 (0) | 2021.02.26 |
---|---|
SpringBoot Dependency 버전 맞추는 방법 (0) | 2021.01.12 |
Thymeleaf 템플릿 적용하기 (0) | 2020.12.20 |
프로퍼티 클래스 만들기 (0) | 2020.12.19 |
SpringBoot의 Auto Configuration과 Application.properties 설정 (0) | 2020.12.19 |
댓글