Cet article n'explique pas ** le contenu de la Documentation officielle Hibernate **. Ceci est un ** mémo pour lire le document ** pour ceux qui commencent à le lire, ou qui l'ont lu mais qui ont oublié où il a été écrit en essayant de le vérifier. Veuillez noter qu'il est difficile de faire la distinction entre les spécifications JPA et l'extension originale d'Hibernate dans son ensemble.
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 Liste des clés de mappage internes Hibernate et Java, JDBC et Hibernate utilisées pour le mappage. Veillez à ne pas rendre le type de colonne de table inattendu. Découvrez le nouveau support de type d'heure de Java.
2.3.5. Explicit BasicTypes https://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#basic-type-annotation Annotation pédagogique pour résoudre un type de DB spécifique. Le type Java est String, mais s'il s'agit d'un type différent sur la base de données, il semble préférable de le spécifier positivement.
2.3.15. Mapping Date/Time Values https://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#basic-datetime À propos de la valeur du système horaire
To avoid dependencies on the java.sql package, it’s common to use the java.util or java.time Date/Time classes instead.
N'utilisez pas le type java.sql car il sera géré.
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 Que faire si une conversion de données est requise lors du déplacement de données sur un objet vers une colonne de base de données. Dans ce domaine, il est difficile de décider quelle couche implémenter la fonction.
2.3.18. Generated properties https://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#mapping-generated Une annotation pour capturer la valeur générée côté base de données. Pour lorsqu'une entité utilise un horodatage de base de données strict ou une clé primaire générée automatiquement. Il peut être utilisé pour la relecture lorsque le résultat du calcul est écrit, mais est-ce pratique?
2.4. Embeddable types https://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#embeddables Lors de l'utilisation du type intégré. Cela peut être pratique lors de la création d'une combinaison fixe de colonnes dans un tableau. Coordonnées et jeu de jour.
2.5. Entity types https://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#entity Chaîne de montagnes Hibernate. Puisqu'il y a une différence entre les spécifications d'API spécifiées dans JPA et les fonctions implémentées dans Hibernate, des précautions doivent être prises lors de l'examen de la portabilité.
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 Important en relation avec la section suivante. En premier lieu, l'identité des objets est difficile à gérer.
2.6. Identifiers Comment identifier une entité. Il semble qu'il y ait beaucoup de choses à penser, y compris les spécifications des objets Java.
2.6.2. Composite identifiers https://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#identifiers-composite À partir de là, quelques sections sur la gestion des * éléments de type clé composée *.
2.6.9. Using IDENTITY columns https://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#identifiers-generators-identity Lors de l'utilisation de la clé générée par le côté DB.
2.7. Associations À propos de la relation entre les entités. Autour du cadre des soi-disant relations.
2.7.2. @OneToMany
https://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#associations-one-to-many
À propos de un à plusieurs, ce qui est important dans la plupart des relations.
En raison de la différence structurelle entre les objets Java et les bases de données, les associations unidirectionnelles peuvent ne pas être utilisées très souvent.
Bidirectionnel @ OneToMany
est une lecture incontournable.
2.7.4. @ManyToMany
https://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#associations-many-to-many
N'hésitez pas à n'utiliser que «@ ManyToMany» et ce sera un gros problème.
2.8. Collections Comment gérer les collections. Voir la section 2.4 de temps en temps car les types intégrés sont également impliqués.
2.8.3. Collections of entities https://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#collections-entity Une description de ce qu'il faut faire lors de l'expression de relations d'entité dans des objets Java Les sections suivantes sont très importantes et il est recommandé de les lire attentivement.
2.9. Natural Ids https://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#naturalid À propos des identifiants provenant de l'extérieur du système inclus dans le modèle, tels que l'identifiant naturel, le code JAN et le code ISBN. Soyez prudent lorsque vous envisagez le portage car cela semble être une fonction unique d'Hibernate.
Bootstrap https://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#bootstrap Comment démarrer Hibernate, paramètres des options, etc. Pour coder sans compter sur Spring Boot, etc. et pour vérifier le contenu des paramètres.
Schema generation https://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#schema-generation À propos de la génération automatique de schéma et de table. Lorsqu'il n'est pas généré comme vous le souhaitez.
Persistence Context https://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#pc À propos du contexte de persistance. S'il n'est pas enregistré ou chargé, il y a un problème avec ce processus.