Je suis nouveau dans le monde Java et JPA. J'étudiais JPA et suis tombé sur de nombreux nouveaux termes comme Entité, persévérance. En lisant, je ne pouvais pas comprendre la définition exacte du contexte de persistance .
Quelqu'un peut-il l'expliquer en termes simples profanes? Quel est le rapport avec les données utilisées dans le @Entity
?
Par exemple, je trouve cette définition trop compliquée à comprendre:
Un contexte de persistance est un ensemble d'entités tel que pour toute identité persistante, il existe une instance d'entité unique.
la source
la source
Tiré de cette page:
Voici une feuille de triche rapide du monde JPA:
la source
UNE contexte persistant représente les entités qui contiennent des données et sont qualifiées pour être persistantes dans un stockage persistant comme une base de données. Une fois que nous avons
commit
une transaction sous une session à laquelle ces entités sont attachées, Hibernate vide le contexte persistant et les modifications ( insérer / enregistrer, mettre à jour ou supprimer ) sur celles-ci sont conservées dans le stockage persistant.la source
L'
org.hibernate.Session
API etjavax.persistence.EntityManager
API représentent un contexte pour traiter les données persistantes.Ce concept est appelé un contexte de persistance . Les données persistantes ont un état par rapport à la fois à un contexte de persistance et à la base de données sous-jacente.
la source
«Un ensemble d'instances (d'entité) persistantes gérées par une instance de gestionnaire d'entités à un moment donné» est appelé contexte de persistance.
L'annotation JPA @Entity indique une entité persistante.
Reportez-vous à la définition JPA ici
la source
En termes simples, nous pouvons dire que Persistence Context est un environnement où les entités sont gérées, c'est-à-dire qu'il synchronise "Entity" avec la base de données.
la source
Bien que @pritam kumar donne un bon aperçu, le 5ème point n'est pas vrai.
https://blogs.oracle.com/carolmcdonald/entry/jpa_caching
EntityManager de JPA et Session d'Hibernate offrent un contexte de persistance étendu.
la source
Le contexte de persistance est un environnement ou un cache dans lequel les instances d'entité (qui sont capables de contenir des données et ayant ainsi la possibilité d'être persistantes dans une base de données) sont gérées par Entity Manager.Il synchronise l'entité avec la base de données.Tous les objets ayant l' annotation @Entity sont capables d'être persisté. @Entity n'est rien d'autre qu'une classe qui nous aide à créer des objets afin de communiquer avec la base de données.Et la façon dont les objets communiquent utilise des méthodes.Et qui fournit ces méthodes, c'est Entity Manager.
la source