Computer Science33 [JPA] 영속성전이 & 고아객체 영속성 전이: CASCADE • 특정 엔티티를 영속 상태로 만들 때 연관된 엔티티도 함께 영속 상태로 만들도 싶을 때 • 예: 부모 엔티티를 저장할 때 자식 엔티티도 함께 저장 @Entity public class Parent { @Id @GeneratedValue private Long id; @OneToMany(mappedBy = "parent") private List children = new ArrayList(); ... } @Entity public class Child{ @Id @GeneratedValue private Long id; @ManyToOne private Parent parent; ... } 와같은 엔티티가 있을때 부모자식을 저장한다면 Parent parent = new Par.. 2022. 11. 21. [JPA] 즉시 로딩과 지연 로딩 프록시 객체는 주로 연관된 엔티티를 지연 로딩할 때 사용 즉시 로딩 : 엔티티를 조회할 때 연관된 엔티티도 함께 조회 -설정방법 : @ManyToOne(fetch = FetchType.EAGER) //이미 ManyToOne에선 fetchType은 EAGER이 default 지연 로딩 : 연관된 엔티티를 실제 사용할 때 조회 -설정방법 : @ManyToOne(fetch = FetchType.LAZY) @Entity public class Member { @Id @GeneratedValue private Long id; @Column(name = "USERNAME") private String name; @ManyToOne(fetch = FetchType.EAGER) //** @JoinColumn(name .. 2022. 11. 21. [JPA]스프링 프록시 프록시 엔티티를 조회할 때 연관된 엔티티들이 항상 사용되는 것은 아니다. 예를 들자면 @Entity public class Member { @Id @GeneratedValue private Long id; @Column(name = "USERNAME") private String name; private int age; @ManyToOne @JoinColumn(name = "TEAM_ID") private Team team; } @Entity public class Team { @Id @GeneratedValue private Long id; private String name; … } 와같이 Member 와 Team 의 N:1 관계에서 Member의 데이터만 출력하고 싶은데 public void pri.. 2022. 11. 21. [JPA]스프링 연관관계 매핑 단방향 연관관계 회원과 팀이있다. 회원은 하나의 팀에만 소속될수 있다. 회원과 팀은 다대일 관계 객체중심으로 볼때 객체 연관관계 회원객체와 팀 객체는 단방향 관계 , 회원은 Member.team 필드를 통해서 팀을 알수있지만 반대로 팀은 회원을 알수 없음. member -> team의 조회는 member.getTeam()으로 가능, 반대 방향인 team ->member는 접근 할수가없음 테이블 중심으로 볼때 회원 테이블과 팀 테이블은 양방향 관계, TEAM_ID로 외래키를 통해 회원가 툄을 조인, 반대로 팀과 회원도 조인 가능 객체를 테이블에 맞춰서 모델링을 하게되면 • 테이블은 외래 키로 조인을 사용해서 연관된 테이블을 찾는다. • 객체는 참조를 사용해서 연관된 객체를 찾는다. • 테이블과 객체 사이에.. 2022. 10. 23. 이전 1 2 3 4 5 ··· 9 다음