Tagged

콜렉션 맵핑

A collection of 3 posts

하이버네이트

@CollectionOfElements 애노테이션

참조 http://www.hibernate.org/hib_docs/annotations/api/org/hibernate/annotations/CollectionOfElements.html Entity 타입 콜렉션 말고 Value 타입 콜렉션을 맵핑할 때 사용하는 애노테이션 입니다.     @CollectionOfElements    private List<Integer> hobbies; 간단하죠. JPA는 아니고 하이버네이트 애노테이션입니다. fetch와 targetClass 속성을 가지고 있는데, targetClass는 콜렉션 타입을

하이버네이트

Sorted 콜렉션과 Ordered 콜렉션 맵핑하기

Sorted 타입 맵핑하기 @Sort 애노테이션을 사용해서, Sorter Set과 Sorted Map 타입으로 맵핑할 수 있다. type 속성에서 Comparator를 사용할 수도 있다. @CollectionOfElements @JoinTable(name = "ITEM_IMAGE", joinColumns = @JoinColumn(name = "ITEM_ID")) @Column(name = "FILENAME") @Sort(type = SortType.NATURAL) private SortedSet<String> images = new TreeSet<String>(); Ordered 타입

하이버네이트

Value Type의 Set, Bag, List, Map

Entity가 Value Type 객체 하나를 가지고 있을 때는 Entity를 저장한 테이블의 레코드에 같이 저장된다. Value Type의 콜렉션과 연관을 맺고 있을 때는 별도의 테이블이 필요하다. 콜렉션 인터페이스 선택하기 Sorted: 자바 메모리 상에서 정렬이 되는 것. Ordered: 데이터베이스 레벨에서 order by 절을 사용해서 정렬한다. Bag, List는 Sorting을 설정할 수 없다. 인덱스가 있으니까&