4.3 Frameworks utilisés
4.3.1 SPRING
L'utilisation du framework Spring nous permet de garantir le
respect strict de la séparation des couches applicatives. En effet,
grâce à son moteur d'inversion de contrôle et ses
mécanismes d'injections de dépendances, Spring permet aux couches
supérieures de ne connaître et de n'utiliser que les interfaces
publiques des services qu'elles souhaitent utiliser. C'est le framework
lui-même qui se chargera de faire correspondre Interfaces et
Implémentations grâce à une configuration XML ou à
des annotations Java5 depuis la version 2.5.
4.3.2 Hibernate/JPA
Le couple Hibernate/JPA permet de créer, de
requêter et de manipuler des objets Java persistants, c'est-à-dire
des objets Java correspondant à des enregistrements en base de
données. Ainsi chaque opération effectuée sur ces objets
sera répercutée en base.
Supervision et exploitation à distance des
plateformes de services via le modèle client serveur et à
l'aide du GSM comme protocole de communication.
Mémoire de fin d'études d'Ingénieur de
Conception de Génie Informatique. ENSP, le 26 Juin 2012. 70
Hibernate est l'implémentation concrète du
moteur de persistance. Outre le moteur lui-même, il offre un certain
nombre d'APIs de requêtage. JPA offre un niveau d'abstraction
supplémentaire en proposant un ensemble d'interfaces standard auxquelles
les implémentations d'Hibernate (et d'autres frameworks de persistances)
se conforment. Le moteur de persistance, à travers JPA puis Hibernate,
prendra à sa charge la gestion des sessions de connexion à la
source de données, les éventuelles libérations de
ressources en cas d'erreur, etc.
Une fois les objets persistés, les requêtes se
font alors non plus en SQL mais en JPQL, langage d'interrogation du standard
JPA. A noter que ces requêtes portent sur les objets persistés et
non les enregistrements en base. On récupère ensuite directement
des objets ou des ensemble d'objets directement utilisables. Les manipulations
en base de données se feront comme suit :
La couche DAO publie des méthodes d'accès
à la BDD de type création, recherche et suppression
d'enregistrements (CREATE, SELECT et DELETE). En bref, cette couche permet de
récupérer des instances d'objets à partir
d'enregistrements BDD (Base De Données), de créer des nouvelles
instances d'objets en créant les enregistrements BDD ou de supprimer des
instances existantes en supprimant les enregistrements BDD.
Le mapping O/R (Objet Relationnel) et la
persistance des données permettent, dans un contexte transactionnel,
d'effectuer toutes les opérations de type mise à jour (UPDATE).
En effet, une fois récupérées, des instances d'objets
persistés grâce à la couche DAO, toute modification de
l'instance entraînera une modification de l'enregistrement
mappé.
|