본문 바로가기
Spring

[Spring JPA] 복합키 적용하는 방법

by Apère 2023. 2. 19.
반응형

Spring JPA에서 복합키를 적용하는방법중 저는 @IdClass를 이용하는 방법을 사용했습니다

 

우선 teamId와 memberId가 복합키로 구성된다면 아래 코드처럼 우선 클래스를 생성합니다

@Data
public class TeamMemberPK {

    private String teamId;

    private String memberId;

}

 

그런후 해당 복합키를 적용하는  entity에 @IdClass를 이용하여 아래와 같이 설정합니다 

 

@Builder
@NoArgsConstructor
@AllArgsConstructor
@Getter
@Table(name = "team_member")
@IdClass(TeamMemberPK.class)
@Entity
public class TeamMember {

    @Id
    @Column(name = "team_id")
    private String teamId;

    @Id
    @Column(name="member_id")
    private String memberId;

    @Column(name = "note")
    private String note;


}

 

마지막으로 repository에 아래와 같이 구성하면 복합키로 구성하여 활용할수 있습니다

 

public interface TeamMemberRepo extends JpaRepository<TeamMember, TeamMemberPK>{

}

 

반응형

댓글