TextListとArticleという2つのクラスがあります。属性が存在しない可能性のあるオブジェクトのマッピング
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
あなたが見ることができるように、のために、私は3つの文章(テキスト1、テキスト3、text4)を持っている 1のarticle_id。この記事では、テキストタイプ2はなく、問題ではありません。問題は、クラスTextListの文字列を正しくマップするには、どうすればのtext_type列をチェックし、それが属している属性にマップするのですか?また、テーブルに存在する場合と存在しない場合のある属性をどのようにマップできますか?
ありがとうございましたが、同じモデル(Enumを意味しません)と同じデータベースを使用する方法はありませんか?私は作業中のプログラムをHibernateに切り替えようとしているので、テーブルのモデルを変更しないでください。 –
'TextEntity'ではEnumを使う必要はありません。それを簡単に 'String'で置き換えてそのまま使用すると、同じテーブル構造を正確に与えることができます。 'String'は最終的に' anything 'になる可能性があるので、私はEnumに期待される値に限定された特定の有限データを保持する傾向があります。 – Naros
こんにちは、あなたの提案を試みましたが、まだ私は新しい問題があります。 "text_type" = "info"(ちょうど例)のとき、このテーブルは1つ以上のエンティティに使用されます。テキストはクラスArticleに属しません。この場合の提案はありますか? Long Story short私は列の値をチェックして、この行がどのクラスのどのプロパティに属しているかを判断したい。それも可能ですか?事前にTy! –