3
나는 분야 중 하나가 키 열거와지도 인 엔티티 만들려고하는지도 :JPA 매핑 키가 열거
public class MyEntity {
@ElementCollection
@CollectionTable(name="attributes", [email protected](name="my_entity_id"))
@MapKeyColumn(name = "attribute_key")
@Column(name="attribute_value")
private Map<Attribute, String> attributes;
}
Attribute
이 추가 필드 단순한 열거입니다 또는 논리 :
public enum Attribute {
ATTRIBUTE1, ATTRIBUTE2, ATTRIBUTE3;
}
이지도는 멋지게 작동하며 작동합니다. 하지만 컬렉션 테이블 인 attributes
은 내 맵 키에 대해 integer
열 정의를 사용하여 생성합니다. 기본값은 EnumType.ORDINAL
입니다. 내 목적을 위해 나는 문자열이 필요하지만 예외로 인도하기 때문에 나는 단지 @Enumerated(EnumType.STRING)
을 내 필드에 놓을 수는 없다.
원하는 동작을 어떻게 달성 할 수 있습니까? 대단히 감사합니다. @BilalBOUTAYA
에
시도 @MapKeyEnumerated (EnumType.STRING). http://stackoverflow.com/questions/25439813/difference-between-mapkey-mapkeycolumn-and-mapkeyjoincolumn-in-hibernate –
네, 그게 내가 찾고 있던 것입니다! 고마워요! – DruidKuma
환영합니다. 행복하게 도와줍니다. –