すべての顧客に共通のエンティティ ベースを持つ Web アプリを構築しています
一部の顧客はフィールドを追加する必要がありますが、私はすべてを追加したくありません。私はそのようなことを考えました:
@Embeddable
public class AdditionalDetails {
private String label;
private String text;
public AdditionalDetails() {}
// autogenerated getters and setters, hashCode(), equals()
}
@Entity
public class BusinessObject {
@Id
@Column(name = "string_id")
private long id;
@ElementCollection(fetch=FetchType.EAGER)
@MapKey(name = "language")
@CollectionTable(schema = "label", name = "multilingual_string_map",
joinColumns = @JoinColumn(name = "string_id"))
private Map<String, AdditionalDetails> map = new HashMap<String, AdditionalDetails>();
public BusinessObject() {}
// autogenerated getters and setters, hashCode(), equals()
}
問題は、BusinessObject によって追加されるプロパティを誰が構成するかということです。