JPA 연관 관계 - 객체 관계 모델링하기
목차 JPA 연관 관계 - 고아 객체 JPA 연관 관계 - 즉시로딩과 지연로딩 JPA 연관 관계 - 프록시 객체 JPA 연관 관계 - @MappedSuperclass JPA 연관 관계 - 상속 관계 Mapping JPA 연관 관계 - 영속성 전이 Cascade JPA 연관 관계 - 양방향 연관관계와 연관과계의 주인 JPA 연관 관계 - 양방향 연관관계 JPA 연관 관계 - 객체 지향 스럽게 모델링 하기 JPA 연관 관계 - 객체 관계 모델링하기 JPA 연관 관계 외래키를 객체 내 Field 값 으로 모델링 @Entitypublic class Team { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "TEAM_ID") private Long id; @Column private String name;} @Entitypublic class Member { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "MEMBER_ID") private long id; @Column(name = "USERNAME") private String username; @Column(name = "TEAM_ID") private Long teamId; // 외래키를 Field 값으로 갖는다.} Member 가 소속된 Team 정보 가져오기 Member 가 소속된 Team 정보를 가져오기 위해서는 Member Id를 이용해 해당 Member 객체를 가져와 저장된 Team Id를 가져온 후 해당 Team Id를 이용해 Member가 소속된 Team 을 조회해야 한다. Team team = new Team();team.setName("TeamA");entityManager.persist(team);Member member = new Member();member.setUsername("member1");member.setTeamId(team.getId());entityManager.persist(member);Member findMember = entityManager.find(Member.class, member.getId());Long findTeamId = findMember.getTeamId();Team findTeam = entityManager.find(Team.class, findTeamId); 객체 지향 스럽지 못한 모델링