2009-08-28 191 views
0

我有一个Article实体和一个ArticleCode实体。 Aritcle Code有Article作为密钥,但也有第二和第三个主键。jpa,多于一个主键

下面的例子是不可能的,因为文章不是可序列化的。有任何想法吗?

感谢, 拉尔夫

@Entity 公共类文章{
@Id @GeneratedValue(策略= GenerationType.TABLE) 私人长期ID;

public Long getId() { return id; } 

}

@Entity @IdClass(com.google.gwt.sample.stockwatcher.server.huflattich.ArticleCode.ComposedIdKey.class) 公共类ArticleCode {

@Id 
@OneToOne 
private Article article; 

@Id 
@Column(name="coding_system") 
private String codingSystem; 

@Id 
private String code; 

... 

public static class ComposedIdKey implements Serializable { 
    public Article article; 
    public String codingSystem; 
    public String code; 

    public ComposedIdKey() { } 

    public ComposedIdKey(Article article, String codingSystem, String code) { 
     this.article = article; 
     this.codingSystem = codingSystem; 
     this.code = code; 
    } 

    ... 
} 

}

回答

1

ohh,在谷歌的BigTable中不可能有多个主键。