작성
·
1.9K
0
import lombok.Getter;
import lombok.RequiredArgsConstructor;
@Getter
@RequiredArgsConstructor
public enum RoleType {
USER("user","일반 유저"),
ADMIN("admin","관리자");
private final String roleCode;
private final String roleName;
}
이렇게 롤 타입이 있고, 이것을 유저에 매핑하면
@Enumerated(value = EnumType.STRING)
@Column(nullable = false)
private RoleType roleType;
보통 이런식으로 사용이 되는데
전 RoleType을 복수로 List<RoleType>로 갖게 하고 싶은데 이럴 땐
어떻게 하는지 궁금합니다.
p/s 다음 강의는 언제쯤 나올까여? ㅎㅎ querydsl기대중입니다!
답변 3
2
안녕하세요. kim님^^
오랜만입니다. ㅎㅎ
관계형 데이터베이스는 컬렉션 타입을 지원하지 않습니다.
결국! 새로운 테이블을 만들어야 합니다. 다음 2가지 방법이 있습니다. 어떤 방법을 사용하든 테이블은 새로 만들어야 합니다.
1. @ElementColleciton을 사용하세요.
2. 새로운 엔티티(MemberRole)를 만들고 그 안에 식별자(id)와 RoleType을 적용하세요. (추천)
감사합니다^^
0
0
안녕하세요! 질문이 있어서 댓글 남깁니다.
말씀해주신 2번 방법이 OneToMany 인지 ManyToMany인지 궁금합니다.
OneToMany 방법이라면 @ElementCollection도 OneToMany 방식을 사용하는데 객체를 따로 생성하는 이유가 있는지,
ManyToMany 방법이라면 김영한님 저서에 ManyToMany는 실무에서 가급적 피하라고 하셨는데 ManyToMany 방식을 사용하는 이유가 있는지 궁금합니다!