2013-09-26 4 views
0

JPA를 사용하여 Java 객체를 데이터베이스 테이블에 매핑하려고합니다. 일반적으로 주석을 사용하여 필드를 열에 매핑한다는 것을 알고 있습니다. ID (기본 키)와 이름이있는 Team이라는 클래스가 있습니다. 클래스에 관한 한, ID와 이름 만이 유일한 속성입니다. 그러나 데이터베이스에서 팀 테이블에는 ID, 이름 및 club_id가 있습니다. 팀이 클럽과 연관되어 있기 때문입니다.POJO에 테이블 매핑

팀 클래스의 속성으로 club_id를 명시 적으로 추가하지 않고 삽입에 club_id를 포함시킬 수있는 방법이 있습니까?

+0

@ManyToOne보세요 – BevynQ

+0

왜 그렇게하고 싶습니까? 팀이 속한 클럽이 도메인 모델의 중요한 부분 인 것처럼 들립니다. – chrylis

답변

1

몇 가지 방법이 있습니다. 많은 (단방향)에

한 클럽 엔티티에

당신은 많은에

@OneToMany 
@JoinColumn(name="club_id", referencedColumnName="club_id") 
private List<Team> teams; 

한 클럽 엔티티

@OneToMany(mappedBy="club") 
private List<Phone> teams; 

에서을의 (양방향)

있을 것입니다 귀하의 팀 엔티티

@OneToMany(fetch=FetchType.LAZY) 
@JoinColumn(name="club_id") 
private Club club;  
+0

팀의 특성으로 클럽을 추가해야합니까? – user1154644

+0

모두 항목에 액세스하려는 방법에 따라 다릅니다. '팀'은 '클럽'에 대해 알고 있어야하고 '클럽'은 '팀'에 대해 알고 있어야합니까? 또한 클럽의 '@ OneToMany'가'팀 '에게 돌아가는 것을 원할 수도 있습니다. – buzzsawddog