🔙뒤로가기

양방향 매핑

Untitled

Member 엔티티는 단방향과 동일함

@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;
	…

Team 엔티티는 컬렉션 추가

@Entity
public class Team {

	@Id @GeneratedValue
	private Long id;

	private String name;

	@OneToMany(mappedBy = "team")
	List<Member> members = new ArrayList<Member>();
	… 
	}

반대 방향으로 객체 그래프 탐색

//조회
 Team findTeam = em.find(Team.class, team.getId()); 
 int memberSize = findTeam.getMembers().size(); //역방향 조회

연관관계의 주인과 mappedBy

객체와 테이블이 관계를 맺는 차이

객체 연관관계 = 2개

테이블 연관관계 = 1개

객체와 테이블이 관계를 맺는 차이