반응형
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>{
}
반응형
'Spring' 카테고리의 다른 글
[Spring] mapstruct를 이용한 DTO <-> Entity 변환 (0) | 2023.02.22 |
---|---|
[SpringBoot 3.0] Jasypt를 이용한 설정값 암호화 (0) | 2023.02.22 |
[Spring JPA] 다건의 데이터 삭제시 성능 개선 (0) | 2023.02.19 |
[Spring] DI 방법과 생성자 주입을 사용해야 하는 이유 (0) | 2023.02.15 |
[Spring] DI(Dependency Injection) 의존성 주입 (0) | 2023.02.15 |
댓글