2013-06-30 1 views
3

에서 생성되지 @ElementCollection : 나는 새 데이터베이스에 응용 프로그램을 실행할 때플레이 프레임 워크 2.1.1, 나는이 같은 간단한 모델이 진화

@Entity 
public class Album extends Model { 
    @Id 
    public Long id; 
    public String name; 

    @ElementCollection 
    public Set<String> urls = new HashSet<>(); 

    // ... 
} 

는 진화가 생성되지만이 아무것도 없음 URL 집합입니다. 모양은 다음과 같습니다.

# --- Created by Ebean DDL 
# To stop Ebean DDL generation, remove this comment and start using Evolutions 

# --- !Ups 

create table album (
    id      bigint not null, 
    name      varchar(255), 
    constraint pk_album primary key (id)) 
; 

create sequence album_seq; 

무엇이 누락 되었습니까? 이 관계를 만들어야하는 다른 방법이 있습니까?

편집 :

답변

3

EBean 지원하지 않는 것 같다 ... 나는 URL 엔티티를 추가하고 앨범에 다시에 @ManyToOne 매핑을 넣어이를 통해 해결하는데 투입하고있어,하지만 그건 정말 좋은 아니에요 @ ElementCollection.

URL 집합을 @Transient (즉, 유지되지 않음)로 선언하고 쉼표로 구분 된 태그가 포함 된 간단한 문자열을 최신 상태로 유지하면서 관리하는 방법이 있어야합니다. 이 문자열은 단일 열에 유지됩니다.

+0

감사합니다. 나는 이것으로 돌아 왔음에 틀림 없다. 여기에 EBean (2012 년 이후)에 대한 기능 요청이있다 : http://www.avaje.org/bugdetail-378.html. 내 ManyToOne 해결 방법은 나를 위해 일하므로 URL과 함께 더 자세한 정보를 저장하는 결국,하지만 난 당신을 어쨌든 upvote거야 :) – rjohnston