簡體   English   中英

沒有字段的派生類的Hibernate映射

[英]Hibernate mapping of derived class with no fields

我遇到的情況是,我需要兩個類具有相同的字段,但是行為略有不同,它們中的一個擁有其他字段,而另一個卻沒有,所以問題是:我是否必須映射沒有特殊要求的派生類領域? 舉個例子,假設我有A類和B類,都必須有一些集合(例如C對象)和其他一些字段D,所以我創建了抽象類AB,這是它們的父級,而B類也有字符串字段,類A-沒有,它們都是M的后代,它們具有someMethod():

abstract class M {
    //fields, getters, etc
    public void someMethod(){
    //doSmth
    }
}

abstract class AB extends M {
    private D d;
    private Set<C> cs;
    //getters, setters, etc
}

class A extends AB{
    @Override
    public void someMethod(){
      for(C c : cs){
      //doSmth
      }
    }
}

class B extends AB {
    private String text;
    //getters etc
}

因此,我絕對應該映射M,AB和B,但是我應該映射A嗎?

PS,我們使用xml映射

如果要讓Hibernate返回List<A>作為查詢結果,是的,您需要映射A

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM