的JPA教程指出一個可具有非實體延伸實體類:延續實體(jpa)的非實體類 - 示例?
實體可以延伸兩個實體和 非實體類和非實體 類可以延伸實體類。 - http://java.sun.com/javaee/5/docs/tutorial/doc/bnbqa.html
是否有可能堅持這樣的結構?
我想這樣做:
@Entity
abstract class Test { ... }
class FirstConcreteTest extends Test { ... } // Non-ntity
class SecondConcreteTest extends Test { ... } // Non-entity
Test test = new FirstConcreteTest();
em.persist(test);
我想什麼它做的是堅持映射的抽象測試到一個公共的數據庫表的所有具體類(第一和第二)的所有領域,使所有第一個和第二個測試類的字段未被執行(這些可以包含像EJB,jdbc池等等)。
還有一個獎金問題。是否有可能堅持抽象財產?
@Entity
abstract class Test {
@Column
@Access(AccessType.PROPERTY)
abstract public String getName();
}
class SecondConcreteTest extends Test {
public String getName() {
return "Second Concrete Test";
}
}
正如我在DataNucleus的評論中所說 - 我想避免用@Entity標記具體類,因爲它們有很多。並且所有持續存在的信息已經可以通過抽象類獲得。額外的具體類的註釋增加了不必要的混亂,並且使得創建這些類變得更加困難(您必須記住要標記字段瞬變,添加@Entity,添加區分值等)。我想我會堅持Spring的SimpleJdbcInsert。謝謝,帕斯卡。 – 2010-02-23 10:16:21