j2ee jpa

Disponible uniquement sur Etudier
  • Pages : 13 (3141 mots )
  • Téléchargement(s) : 0
  • Publié le : 22 avril 2014
Lire le document complet
Aperçu du document
16/02/2014

JAVA PERSISTENCE API

Java Enterprise Edition

Java Persistance Api

Diapo. N° 1
Diapo. N° 1
Diapo N° 1



JAVA PERSISTENCE API

Plan Exposé

– Introduction
– ORM
– Entités
– Associations
– Comportement
– Requêtes
– Mise en oeuvre
Diapo. N° 2
Diapo N° 2


1

16/02/2014

JAVA PERSISTENCE API

Introduction

La persistance par sérialisation
•Sérialisation = sauvegarde de l'état d'un objet sous
forme d'octets.
– Rappel : l'état d'un objet peut être quelque chose de très
compliqué.
– Etat d'un objet = ses attributs, y compris les atributs hérités.
– Si les attributs sont eux-même des instances d'une classe, il faut
sauvegarder aussi les attributs de ces instances, etc…

• A partir d'un état sérialisé, on peut reconstruirel'objet
• En java, au travers de l'interface java.io.Serializable,
des méthodes de java.io.ObjectInputStream et
java.io.ObjectOutputStream
Diapo. N° 3


JAVA PERSISTENCE API

Introduction

La persistance par sérialisation

• Défauts nombreux…
– Gestion des versions, maintenance…
– Pas de requêtes complexes…

• Ex : on sérialize mille comptes bancaires.
Comment retrouver ceux qui ontun solde
négatif ?
– Solution : stocker les objets dans une base de
donnée!

Diapo. N° 4


2

16/02/2014

JAVA PERSISTENCE API

Introduction

La persistance par mapping objet/BD relationelle

• On stocke l'état d'un objet dans une base de donnée.
– Ex : la classe Personne possède deux attributs nom et prenom,
on associe cette classe à une table qui possède deux colonnes :nom et prenom.

• On décompose chaque objet en une suite de variables
dont on stockera la valeur dans une ou plusieurs
tables.
• Permet des requêtes complexes.
Diapo. N° 5


JAVA PERSISTENCE API

Introduction

La persistance par mapping
objet/BD relationelle

Diapo. N° 6


3

16/02/2014

JAVA PERSISTENCE API

Introduction

La persistance par mapping objet/BDrelationelle

• Pas si simple…
– Détermination de l'état d'un objet parfois difficile, tout un art…
– Il existe des produits pour nous y aider… EclipseLink, TopLink
(WebGain), Hibernate (JBoss),
– Aujourd'hui la plupart des gens font ça à la main avec JDBC ou
SQL/J.
– Mais SQL dur à tester/debugger…

Diapo. N° 7


JAVA PERSISTENCE API

Introduction

La persistance à l'aide d'une BDObjet

• Les Base de données objet stockent directement des
objets.
• Plus de mapping !
• Object Query Language (OQL) permet de manipuler
les objets…
• Relations entre les objets évidentes (plus de join…)
• Bonnes performances mais mauvaise scalabilité.
Diapo. N° 8


4

16/02/2014

JAVA PERSISTENCE API

Introduction

Le modèle de persistence JPA 2
– JPA 2 propose un modèlestandard de persistance à l’aide des
Entity beans
– Les outils qui assureront la persistance (Toplink, Hibernate,
EclipseLink, etc.) sont intégrés au serveur d’application et
devront être compatibles avec la norme JPA 2.
– Java EE 6 repose à tous les niveaux sur de « l’injection de
code » via des annotations de code
• Souvent, on ne fera pas de « new », les variables seront
créées/initialiséespar injection de code.
Diapo. N° 9


JAVA PERSISTENCE API

Introduction

Qu'est-ce qu'un Entity Bean ?

• Ce sont des objets qui savent se mapper dans une base
de donnée.
• Ils utilisent un mécanisme de persistance (parmi ceux
présentés)
• Ils servent à représenter sous forme d'objets des
données situées dans une base de donnée
– Le plus souvent un objet = une ou plusieursligne(s) dans une ou
plusieurs table(s)
Diapo. N° 10


5

16/02/2014

JAVA PERSISTENCE API

Introduction

Qu'est-ce qu'un Entity Bean ?
• Exemples
– Compte bancaire (No, solde),
– Employé, service, entreprises, livre, produit,
– Cours, élève, examen, note,

• Mais au fait, pourquoi nous embêter à passer par des
objets ?
– Plus facile à manipuler par programme,
– Vue plus...
tracking img