⚡ 생각대로 살지 않으면 사는대로 생각한다.
⚡ 나는 어차피 잘 될 놈이다. 이미 잘 되고 있고, 계속해서 잘 되고 있다.
객체지향 설계의 목표는 자율적인 객체들의 협력 공동체를 만드는 것이다. -조영호(객체지향의 사실과 오해)-
Member와 Team의 관계는 1:N
Team과 Member 객체를 테이블에 맞춰 모델링하고, 멤버를 통해서 팀을 찾을 때, 객체 그래프를 참조하는 객체지향적인 방식과는 거리가 먼 코드를 작성할 수 밖에 없다.
객체지향적으로 모델링을 하면, 위의 방식과는 다르게, TeamId가 아니라, Team의 참조값을 그대로 불러왔음을 알 수 있다.
그렇게 하려면,
@Column(name = "TEAM_ID")
private Long teamId;
위 코드를 아래와 같이 변경하면 된다.
@ManyToOne
@JoinColumn(name = "TEAM_ID")
private Team team;
이렇게 하면 매핑이 끝나게 되고, 모델링은 아래 사진과 같이 이뤄진다.
이렇게 되면, 아래사진과 같은 코드가 작성 가능하다.
외래키로 참조하는 객체를 바로바로 참조가능하다. 아래와 같은 내용도 가능.
아웅 재밋다..
-끝-