[JAVA] Hinweise zum Lesen des Hibernate ORM 5.3.9.Final User Guide

Inhalt dieses Artikels

Dieser Artikel erklärt ** nicht den Inhalt von Official Hibernate Documentation **. Dies ist ein ** Memo zum Lesen des Dokuments ** für diejenigen, die anfangen, es zu lesen, oder die es gelesen haben, aber vergessen haben, wo es geschrieben wurde, als sie versuchten, es zu überprüfen. Bitte beachten Sie, dass es schwierig ist, zwischen den JPA-Spezifikationen und der ursprünglichen Erweiterung von Hibernate insgesamt zu unterscheiden.

2.Domain Model

2.3 Basic Types

2.3.1. Hibernate-provided BasicTypes https://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#basic-provided Eine Liste der internen Zuordnungsschlüssel für den Ruhezustand und Java, JDBC und Hibernate, die für die Zuordnung verwendet werden. Achten Sie darauf, dass der Tabellenspaltentyp nicht unerwartet wird. Informieren Sie sich über die Unterstützung für neue Zeittypen von Java.

2.3.5. Explicit BasicTypes https://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#basic-type-annotation Anweisungsanmerkung zum Auflösen in einen bestimmten DB-Typ. Der Java-Typ ist String. Wenn es sich jedoch um einen anderen Typ in der Datenbank handelt, ist es besser, ihn positiv anzugeben.

2.3.15. Mapping Date/Time Values https://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#basic-datetime Über den Wert des Zeitsystems

To avoid dependencies on the java.sql package, it’s common to use the java.util or java.time Date/Time classes instead.

Verwenden Sie nicht den Typ java.sql, da dieser verwaltet wird.

2.3.16. JPA 2.1 AttributeConverters https://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#basic-jpa-convert Was tun, wenn eine Datenkonvertierung erforderlich ist, wenn Daten für ein Objekt in eine DB-Spalte verschoben werden? In diesem Bereich ist es schwierig zu entscheiden, auf welcher Ebene die Funktion implementiert werden soll.

2.3.18. Generated properties https://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#mapping-generated Eine Anmerkung zum Erfassen des auf der Datenbankseite generierten Werts. Wenn eine Entität einen strengen DB-Zeitstempel oder einen automatisch generierten Primärschlüssel verwendet. Es kann zum Zurücklesen verwendet werden, wenn das Berechnungsergebnis geschrieben wurde, aber ist es praktisch?

2.4. Embeddable types https://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#embeddables Bei Verwendung des eingebauten Typs. Dies kann praktisch sein, wenn Sie eine feste Kombination von Spalten in einer Tabelle erstellen. Koordinaten und Tag eingestellt.

2.5. Entity types https://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#entity Winterschlafgebirge. Da es einen Unterschied zwischen den in JPA angegebenen API-Spezifikationen und den in Hibernate implementierten Funktionen gibt, muss bei der Berücksichtigung der Portabilität vorsichtig vorgegangen werden.

2.5.7. Implementing equals() and hashCode() https://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#mapping-model-pojo-equalshashcode Wichtig im Zusammenhang mit dem nächsten Abschnitt. Erstens ist die Identität von Objekten schwer zu handhaben.

2.6. Identifiers So identifizieren Sie eine Entität. Es scheint, dass es viele Dinge gibt, über die man nachdenken muss, einschließlich der Spezifikationen von Java-Objekten.

2.6.2. Composite identifiers https://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#identifiers-composite Von hier aus einige Abschnitte über den Umgang mit * zusammengesetzten schlüsselähnlichen Dingen *.

2.6.9. Using IDENTITY columns https://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#identifiers-generators-identity Bei Verwendung des von der DB-Seite generierten Schlüssels.

2.7. Associations Über die Beziehung zwischen Entitäten. Um die Einstellung von sogenannten Beziehungen.

2.7.2. @OneToMany https://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#associations-one-to-many Über eins zu viele, was in den meisten Beziehungen wichtig ist. Aufgrund des strukturellen Unterschieds zwischen Java-Objekten und DBs werden unidirektionale Zuordnungen möglicherweise nicht sehr häufig verwendet. Bidirectional @ OneToMany ist ein Muss.

2.7.4. @ManyToMany https://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#associations-many-to-many Fühlen Sie sich frei, nur "@ ManyToMany" zu verwenden und es wird eine große Sache sein.

2.8. Collections So verwalten Sie Sammlungen. Siehe Abschnitt 2.4 von Zeit zu Zeit, da auch integrierte Typen beteiligt sind.

2.8.3. Collections of entities https://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#collections-entity Eine Beschreibung der Vorgehensweise beim Ausdrücken von Entitätsbeziehungen in Java-Objekten. Die folgenden Abschnitte sind sehr wichtig und sollten durchgelesen werden.

2.9. Natural Ids https://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#naturalid Informationen zu Kennungen, die von außerhalb des im Modell enthaltenen Systems stammen, z. B. natürliche ID, JAN-Code und ISBN-Code. Seien Sie vorsichtig, wenn Sie über eine Portierung nachdenken, da dies eine einzigartige Funktion von Hibernate zu sein scheint.

  1. Bootstrap https://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#bootstrap So starten Sie den Ruhezustand, Optionseinstellungen usw. Zum Codieren ohne Spring Boot usw. und zum Überprüfen des Inhalts von Einstellungen.

  2. Schema generation https://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#schema-generation Informationen zur automatischen Generierung von Schema und Tabelle. Wenn es nicht so generiert wird, wie Sie es möchten.

  3. Persistence Context https://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#pc Über den Persistenzkontext. Wenn es nicht gespeichert oder geladen wird, stimmt etwas mit diesem Vorgang nicht.

Wird jederzeit unten hinzugefügt ...

Recommended Posts

Hinweise zum Lesen des Hibernate ORM 5.3.9.Final User Guide
Java Programming Style Guide für die Java 11-Ära