0
我建設有實體的共同基礎的web應用程序爲所有客戶添加動態屬性到JPA實體
現在有些客戶需要額外的領域,但我不希望添加所有。我想過這樣的事情:
@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的加入?
,這是一個好主意。但我想一個通用的解決方案,我把一個配置參數或類似打造地圖 – hypery2k
東西,你提出什麼是不可能的JPA。這是因爲字段和方法必須映射到數據庫資源。你正在尋找的是一個字段或訪問者,當給定一些參數時,動態地確定它的映射。這不是JPA如何構建的。 – cmd
總而言之,我所提出的答案很可能可以做,以接近你想要的行爲最好的。如果有幫助,請考慮接受它。非常感謝,祝你好運! – cmd