Maison  >  Article  >  Java  >  Explication détaillée des principes de base d'Hibernate en Java

Explication détaillée des principes de base d'Hibernate en Java

黄舟
黄舟original
2017-09-09 11:01:021559parcourir

La persistance est un mécanisme permettant de convertir les données du programme entre des états persistants et transitoires. JDBC est un mécanisme de persistance. File IO est également un mécanisme de persistance. Cet article va vous présenter les principes de base d'Hibernate en Java. Les amis qui en ont besoin peuvent s'y référer

Avant de commencer à apprendre Hibernate, certaines personnes ont toujours dit : Hibernate n'est pas difficile, ce n'est rien de plus que une encapsulation supplémentaire de JDBC. Ce n'est pas difficile. N'est-ce vraiment pas difficile, ou est-ce simplement une question d'avoir trop d'ambition et pas assez de capacités ?

Si vous restez juste au niveau de l'utilisation, je pense que n'importe quelle technologie n'est pas difficile. Voyez ce que font les autres et vous pouvez vous lancer rapidement.

Est-ce le but ultime de l'apprentissage ?

Non, absolument pas. Nous devons comprendre les concepts de base de cette technologie, ce qu’elle est, ce qu’elle fait et quels sont ses avantages et ses inconvénients. Je vais maintenant vous amener à revoir Hibernate :

Qu'est-ce qu'Hibernate ?

Hibernate, traduit par hibernation, vient d'entrer dans l'automne, et tout dans le monde commence à se préparer à l'hibernation. En fait, pour les objets, c'est la persistance. ​​

​Persistance, c'est-à-dire enregistrer des données (telles que des objets en mémoire) sur un périphérique de stockage (tel qu'un disque) qui peut être enregistré de manière permanente. La principale application de la persistance est de stocker des objets en mémoire dans des bases de données relationnelles. Bien entendu, ils peuvent également être stockés dans des fichiers disque, des fichiers de données XML, etc.

La persistance est un mécanisme permettant de convertir les données du programme entre des états persistants et transitoires.

JDBC est un mécanisme de persistance. File IO est également un mécanisme de persistance.

Méthode de persistance quotidienne :

1 La même méthode est utilisée pour réfrigérer la viande fraîche et la décongeler au moment de la manger.

2. La même méthode est utilisée pour fabriquer des fruits en conserve.

Comprenons Hibernate sous trois angles :

1. Hibernate encapsule davantage JDBC <.>

Il s'avère que lorsque Hiberante n'était pas utilisé pour le développement de la couche de persistance, il y avait beaucoup de redondance, comme diverses instructions JDBC et la gestion des connexions, donc Hibernate a encapsulé JDBC et nous n'avons pas eu besoin de manipuler les données. faites-le fonctionner.


Deuxièmement, regardons les choses d'un point de vue à plusieurs niveaux

Nous connaissons l'architecture à trois niveaux très typique : couche de présentation, couche métier et couche de persistance . Hiberante est également un framework de couche de persistance, et il existe de nombreux frameworks de couche de persistance, tels que : IBatis, Nhibernate, JDO, OJB, EJB, etc.


3. Hibernate est un framework ORM (Object Relational Mapping) open source.

ORM, c'est-à-dire Object-Relational Mapping, sa fonction est de créer un mappage entre une base de données relationnelle et des objets. Mappage d'un objet à une relation, puis d'une relation à un objet. De cette façon, lorsque nous exploitons la base de données, nous n'avons plus besoin de gérer du SQL complexe, il nous suffit de l'exploiter comme un objet (en mappant les champs de la base de données relationnelle avec les propriétés de l'objet en mémoire).


Le noyau d'Hibernate :

D'après l'image ci-dessus, nous peut voir les six interfaces principales d'Hibernate, les deux principaux fichiers de configuration et leur relation directe. Tout sur Hibernate est ici. Examinons-le brièvement de haut en bas et résumons chaque interface en une phrase.

1. Interface de configuration : responsable de la configuration et du démarrage d'Hibernate

2. Interface SessionFactory : responsable de l'initialisation d'Hibernate

3. Interface de session : responsable des opérations CRUD des objets persistants.

4. Interface de transaction : responsable des transactions

5. Interface de requête et interface de critères : responsable de l'exécution de diverses requêtes de base de données


Remarque : l'instance de configuration est un objet. lors du démarrage, il est supprimé une fois la SessionFactory créée.


Avantages/inconvénients d'Hibernate :

Avantages :

1. Plus orienté objet

En utilisant la pensée orientée objet pour faire fonctionner la base de données, nous n'avons besoin que d'exploiter des objets, et le développement est plus orienté objet.

2. Portabilité

Parce qu'Hibernate encapsule la couche de persistance, vous ne connaissez pas la base de données et tout le code que vous écrivez est réutilisable.

3. Hibernate est un framework non invasif. Les frameworks non invasifs sont appelés frameworks légers.

En comparant l'action et l'actionform de Struts, les deux doivent être hérités et ne peuvent pas se passer de Struts. Hibernate n'a pas besoin d'hériter de classes ni d'implémenter d'interfaces. De tels objets sont appelés objets POJO.


4. Les tests de code Hibernate sont pratiques.

5. Améliorer l'efficacité et la productivité.

Inconvénients :

1. Les déclarations utilisant les fonctionnalités de base de données seront difficiles à régler

2 Il existe des problèmes avec les mises à jour de données par lots importants. Problème

3. Il existe un grand nombre de fonctions de requête d'attaque dans le système

Résumé :

Hibernate nous permet utiliser l'objectivation La pensée d'exploiter une base de données relationnelle.

Résumé

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn