sm 기술 블로그
[스프링 부트] CascadeType.REMOVE 본문
영속성
데이터를 생성한 프로그램이 종료되어도 사라지지 않는 데이터 특성.
영속성을 갖지 않으면 데이터는 메모리에서만 존재하게 되고 프로그램이 종료되면 해당 데이터는 모두 사라지게 된다.
그래서 우리는 데이터를 파일이나 DB에 영구 저장함으로써 데이터에 영속성을 부여한다.
Cascade (영속성 전이)
부모 엔티티(우리는 question) 가 영속화 될 때 자식 엔티티(우리는 answer)도 같이 영속화 되고,
부모 엔티티가 삭제될 때 자식 엔티티도 삭제되는 등 특정 엔티티를 영속 상태로 만들때 연관된 엔티티도 함께 영속 상태로 전이되는 것
Remove
현재 우리는 remove만 했기 때문에 remove만 설명하겠다.
cascade를 설정 안해주면 자식 객체는 고아가 된다.
하지만 cascade를 통해 설정을 해준다면 고아가 되지 않고 부모 삭제시 같이 삭제가 된다.
고아가 되지 않고 같이 삭제가 되기 때문에 떠돌아 다니는 객체가 없어 메모리를 아낄 수 있다.
'스프링부트' 카테고리의 다른 글
[스프링부트] 로그인시 쿠키(Cookie)를 안쓰고 세션(HttpSession)을 사용하는이유 (0) | 2022.07.17 |
---|---|
[스프링 부트] 에러 모음 (0) | 2022.07.14 |
[스프링 부트] 폰트적용 (0) | 2022.07.13 |
[스프링 부트] 양방향 관계 엔티티 사이클 방지(JsonIdentityInfo) (0) | 2022.07.13 |
[스프링부트] JSP와 Thymeleaf (0) | 2022.07.11 |
Comments