Wie wird die Vererbung eines einzelnen Tabellentyps mit Join-Tabellentyp im selben Vererbungsbaum gemischt? Ich verwende nicht Hibernate nur JPA. Ich weiß, dass es keine offizielle Unterstützung für gemischte Vererbung durch Lesen der JPA-Spezifikation gibt. Ich kann die Architektur nicht ändern. Es hat mit Hibernate funktioniert, aber jetzt muss ich dies mit openjpa implementieren. Ich suche nach einer Problemumgehung.Wie vererbt man den Vererbungstyp in JPA?
1
A
Antwort
1
dies ist für mich arbeiten:
Superklasse:
@Entity
@Inheritance(strategy=InheritanceType.SINGLE_TABLE)
@DiscriminatorColumn(name = "TYPE_DISCRIMINATOR")
public class A extends SomeClass implements SomeInteface {
…
@Id
@Column(name = "ID", nullable = false, precision = 0)
public Integer getPk() {
return super.getPk();
}
…
Beachten Sie, dass "Someclass" keine Einheit ist.
Subclass - "JOIN" Vererbung:
@Entity
@SecondaryTable(name = "A_SECOND_TABLE", pkJoinColumns = @PrimaryKeyJoinColumn(name ="ID"))
@DiscriminatorValue("BD")
public class B extends A implements SomeIntefaceB {
…
Erstellen einer neuen Tabelle "A_SECOND_TABLE" mit Join auf Superklasse Primary Key "ID". jedes Feld, das nicht in Join-Spalte und erscheint in unserer Tabelle ist wie folgt gekennzeichnet:
@Basic
@Column(table = "A_SECOND_TABLE", name = "STATUS", nullable = false, precision = 0)
Hinweis des Tabellenwert.
Subclass - einfache Vererbung Tabelle:
@Entity
public class C extends A implements SomeIntefaceC {...
einfache Vererbung einzelne Tabelle.
Verwandte Themen
- 1. Wie vererbt man in Hibernate?
- 2. Welcher Vererbungstyp ist vorzuziehen?
- 3. Wie vererbt man von std :: runtime_error?
- 4. Wie vererbt Klasse in Scala
- 5. Wie verhindert man, dass Ihre Klasse in C++ vererbt wird?
- 6. Rails: Ungültiger Single-Table-Vererbungstyp Fehler
- 7. Wie erhält man den Primärschlüssel einer beliebigen JPA-Entität?
- 8. Wie verwendet man UNION ALL in JPA?
- 9. Geschützte Methode nicht vererbt
- 10. Eine Klasse nicht vererbt
- 11. WPF: Vererbt von Fenster
- 12. JPA und wie man über Beziehungen denkt
- 13. Wie erstellt man eine JPA-Abfrage?
- 14. Mitgliedsfunktion nicht vererbt? Dies ist
- 15. Python: Vererbt von Built-In-Typen
- 16. Copy-Konstruktor wird vererbt nicht
- 17. Eclipse verwendet falsche Tabellennamen in Abfragen für Subklassen wenn Vererbungstyp SingleTable ist
- 18. Wie testet man die jpa-Verbindung?
- 19. Wie benutzt man OrderBy im jpa Federspeicher?
- 20. JPA: wie man viele zu vielen Relationen
- 21. Wie man eine Entity mit JPA abbildet?
- 22. ist RCT_EXPORT_VIEW_PROPERTY kann vererbt werden
- 23. JPA/Hibernate Konnte den Typ
- 24. Wie schreibt man in verschiedene Tabellen, wenn das Schienenmodell vererbt wurde?
- 25. Legen Sie den Tabellennamen im Frühling JPA
- 26. Wie definiert man den Generator für gemeinsam genutzte Sequenzen in Hibernate/JPA?
- 27. Wie man querydsl aggregations in spring-data-jpa benutzt
- 28. Wie implementiert man update() -Methode in DAO mit EntityManager (JPA)?
- 29. Java vererbt zufällige Klasse und der Anrufer
- 30. Wie fügt man Hintergrundbild in den Inhalt ein, ohne den Text im Inhalt zu stören?
Sie müssen einen Kontext hinzufügen. Kannst du den Code von dem, was du versuchst, posten? – bradimus
JPA sagt Ihnen deutlich, die Vererbungsstrategie in der Wurzel des Baumes anzugeben, und das ist alles, was es gibt. Wie genau kannst du es mit dieser Einschränkung "mischen"? –