6
SPRING DATA JPA 식식식 식식 @ID, @IDCLASS 이이이 , 이이이이이 (topcredu.co.kr)

Spring Data JPA 식별자 매핑 @Id, @IdClass

  • Upload
    3-2

  • View
    494

  • Download
    3

Embed Size (px)

Citation preview

Page 1: Spring Data JPA 식별자 매핑 @Id, @IdClass

SPRING DATA JPA 식별자 매핑@ID, @IDCLASS

이종철 , 탑크리에듀 (topcredu.co.kr)

Page 2: Spring Data JPA 식별자 매핑 @Id, @IdClass

식별자 매핑 (@ID, @IDCLASS) @Id 어노테이션은 필드나 속성 (getter) 에 지정하고 이것이 테이블의 주키가 된다 .

@IdClass : 하나 이상의 @Id 를 이용할 경우에 사용하며 식별자 클래스는 Se-rializable 인터페이스를 구현해야 하며 , equals(), hashCode(), 기본 생성자가가 정의되어 있어야 하고 , public class 만 가능한데 식별자 클래스의 속성명과 엔티티의 속성 명이 같아야 한다 .

Page 3: Spring Data JPA 식별자 매핑 @Id, @IdClass

식별자 매핑 (@ID, @IDCLASS)public class UserPK implements Serializable {

String firstName;String lastName;

 public UserPK() { }public boolean equals(Object other) {

if (other instanceof UserPK) { final UserPK otherUserPK = (UserPK) other;

return (otherUserPK.firstName.equals(firstName) && otherUserP-K.lastName.equals(lastName));

} return false;}public int hashCode() { return super.hashCode(); }

}

Page 4: Spring Data JPA 식별자 매핑 @Id, @IdClass

식별자 매핑 (@ID, @IDCLASS)

@Entity@IdClass(UserPK.class)public class User {

public User() {}@Idprotected String firstName;@Idprotected String lastName;

}

Page 5: Spring Data JPA 식별자 매핑 @Id, @IdClass

실행 결과 생성되는 테이블 구조

Page 6: Spring Data JPA 식별자 매핑 @Id, @IdClass

Practice makes an expert

실무 JAVA, Spring Framework, JPA 교육 전문탑크리에듀 http://www.topcredu.co.kr