Aller au contenu

Java Data Objects

Un article de Wikipédia, l'encyclopédie libre.
Ceci est une version archivée de cette page, en date du 14 novembre 2009 à 00:14 et modifiée en dernier par 81.66.118.160 (discuter). Elle peut contenir des erreurs, des inexactitudes ou des contenus vandalisés non présents dans la version actuelle.

Le Java Data Objects (ou JDO) est un standard informatique basé sur Java permettant l'accès aux données de façon transparente et unifiée.

Le standard est géré dans le cadre des JSR de SUN.

La simplicité d'utilisation de JDO basée sur la manipulation de POJOs (Plain Old Java Objects) a fait le succès de ce standard. Le développeur peut manipuler les objets sans se soucier de la persistance. Potentiellement, le standard permet l'accès à des sources de données de nature diverse.

Trois grandes catégories d’implémentations existent :

  • les implantations qui ne supportent que les SGBD relationnels
  • les implantations qui ne supportent que les SGBD Objet
  • les implantations qui supportent des sources de données hétérogènes (SGBDR, SGBDO, XML, Mainframe) et également l'accès à des services (WebServices, JMS (Java messaging service), JCA (Java Connector Architecture), Cobol). Dans les cas des implémentations supportant des sources hétérogènes, l'un des bénéfices apportés est la flexibilité du Système d'Information. Il devient en effet possible de changer de source de donnée par simple paramétrage.

Historique de JDO

JDO est la première spécification de Java permettant la persistance transparente (JSR12).

JDO était révolutionnaire dans le sens ou pour la première fois les développeurs pouvaient se concentrer sur les modèles objets et non pas sur le code technique d'accès au SGBD.

JDO 1.0 a été accepté comme le standard Java de gestion de la persistance en avril 2002.

JDO 2.0 a commencé en août 2003. Fin 2005, JDO 2.0 est quasi finalisé sous Apache Software Foundation. En Mars 2005 le vote final sur JDO 2.0 est approuvé à l'unanimité par SUN, BEA, Oracle, Borland, HP, Intel, Fujitsu, SAP, Google, IBM... Sur 16 votants seul JBoss (Hibernate) n'a pas voté.

Nouveautés de JDO 2.0

  • Attachement et Détachement
  • Interface javax.jdo.FetchPlan et "fetch groups" nommés
  • JDOQL projections et aggregats (count, sum, min, max, etc)
  • JDOQL requêtes nommées
  • JDOQL suppression par requête
  • Support natif des requêtes SQL pour les sources de données relationnelles
  • Interface javax.jdo.DataStoreCache pour contrôler le cache de deuxième niveau
  • Interface javax.jdo.JDOConnection pour récupérer un accès direct à la connexion sous-jacente

Références externes

Implémentations de JDO

Informations complémentaires

Voir également