개발자겨려

  • 홈
  • 태그
  • 방명록

2025/05/07 2

[JPA] orphanRemoval vs CascadeType.REMOVE 정리

orphanRemoval 과 CascadeType.REMOVE 는 JPA(Java Persistence API)에서 엔티티 간의 관계를 관리하고, 둘다 부모 엔티티와 자식 엔티티 간의 관계에서 자식 엔티티를 삭제하는 데 사용된다는 점에선 같지만, 삭제 트리거(Trigger)가 다르다. ✅ 요약비교: CascadeType.REMOVE vs orphanRemoval = true항목CascadeType.REMOVEorphanRemoval = true삭제 trigger부모 엔티티 자체가 삭제될 때연관관계에서 자식이 제거될때실행 시점entityManager.remove(parent)parent.getChildren().remove(child) 등자식 삭제 방식부모와 함께 삭제부모와의 관계가 끊어지면 삭제삭제 대..

General/JPA 2025.05.07

[JPA] 연관관계 주인이란?

✅ 결론부터 말하자면연관관계의 주인은 외래 키를 직접 가지므로, 해당 테이블에 외래 키 컬럼이 존재함.연관관계의 주인이 아닌 쪽은 외래 키 컬럼이 테이블에 존재하지 않는다.@Entitypublic class Member { @Id @GeneratedValue private Long id; @ManyToOne @JoinColumn(name = "team_id") // 외래 키가 있는 쪽 → 연관관계의 주인 private Team team;}@Entitypublic class Team { @Id @GeneratedValue private Long id; @OneToMany(mappedBy = "team") // 주인이 아님 (읽기 전용) private List..

General/JPA 2025.05.07
이전
1
다음
더보기
프로필사진

개발자겨려

개인 공부 블로그

  • 분류 전체보기
    • Algorithm🧠
      • Programmers
      • LeetCode
      • BaekJoon
    • Containerization
      • Docker🐳
    • Framework
      • Spring🌱
    • General
      • Java☕️
      • JavaScript
      • JPA
      • Git🐙
      • jQuery
      • Servlet과 JSP
      • React⚛️
    • Project
      • profile-service
      • library
    • DataBase🛢
      • query🔍
      • LeetCode 문제 풀이
      • H2

Tag

baekjoon #algorithm #java, git #sourcetree #적합한 작업중인 복사본 경로가 아닙니다, Spring, Servlet #JSP, programmers, java #, Spring #Springboot #스프링부트 #java.lang.IllegalArgumentException: Name for argument of type [java.lang.String] not specified, RequiredArgsConstructor, @RequiredArgsConstructor, Spring #Springboot #스프링부트 #Java, Algorithm, tomcat,

최근글과 인기글

  • 최근글
  • 인기글

최근댓글

공지사항

페이스북 트위터 플러그인

  • Facebook
  • Twitter

Archives

Calendar

«   2025/05   »
일 월 화 수 목 금 토
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

방문자수Total

  • Today :
  • Yesterday :

Copyright © Kakao Corp. All rights reserved.

  • 알짜배기 프로그래머

티스토리툴바