1
假設我有兩個名爲TextList和Article的類。使用可能不存在的屬性映射對象
public class Article() {
public int a_id;
public TextList text;
}
public class TextList(){
private String text1;
private String text2;
private String text3;
private String text4;
}
而且這樣TEXT_ID表:
text_id text_type text_content article_Id
1 text1 "Oh no" 1
2 text3 "He has a dog" 1
3 text4 "A Labrador" 1
正如你可以看到,對於ARTICLE_ID 1我有三個文本(文本,文字3,文本4)。本文沒有文本類型2,這不是問題。問題是,如何正確地映射字符串TextList中的字符串,即檢查text_type列並映射到它所屬的屬性?另外我該如何映射表中可能存在或不存在的屬性?
感謝您的回答,但沒有辦法使用相同的模型(意味着沒有枚舉)和相同的數據庫?我試圖將工作的程序切換到Hibernate,所以我寧願不改變表格的模型。 –
'TextEntity'不需要你使用Enum。你可以很容易地用'String'來替換它,並且按原樣使用它,這會給你提供完全相同的表結構。我傾向於選擇Enum將特定的有限數據限制在期望值以下,因爲'String'最終可能是「任何東西」。 – Naros
嗨,我已經嘗試過您的建議,但我仍然有一個新問題。事情是這個表是用於超過1個實體,比如說當「text_type」=「info」(僅僅是一個例子)時,那麼文本不再屬於類文章,而是屬於其他內容。在這種情況下的任何建議?長話短說我想檢查列的值來決定該行屬於哪個類的屬性。這甚至有可能嗎? Ty提前。 –