5.1 단방향 연관 관계

객체 관계 매핑

@Entity
public class Member {

    @Id
    @Column(name = "MEMBER_ID")
    private Long id;

    private String username;

    //연관 관계 매핑
    @ManyToOne
    @JoinColumn(name="TEAM_ID")
    private Team team;

    //연관관계 설정
    public void setTeam(Team team) {
        this.team = team;
    }

    //Getter Setter
}
  • @ManyToOne
    • 다대일(N:1) 관계라는 매핑 정보
    • 어노테이션 필수
  • @JoinColumn(name="TEAM_ID")
    • 조인컬럼은 외래 키를 매핑할 때 사용
    • name 속성에 매핑할 외래 키 이름을 지정
    • 생략 가능하다.

@JoinColumn 생략

  • 기본 전략 : 필드명 + _ + 참조하는 테이블의 컬러명
  • 외래키 = team_TEAM_ID

@ManyToOne

다대일 관계에 사용

@OneToMany
private List<Member> members;           // 제너릭 사용

@OneToMany(targetEntity=Member.class)   // 거의 사용 안함
private List members;                   // 타입 알 수 없음.

results matching ""

    No results matching ""