JDO : quel outil choisir ?

Le
Bernard Koninckx
Bonjour à tous,

Je cherche une solution Open Source ou FreeWare valabe.

Quelle solution JDO (pour la persistance des données avec un serveur DB
mySQL) vous semble la plus appropriée pour un projet de petite envergure ?
Quel produit est le plus approprié, le plus stable, le plus facile d'accès
(compréhension) , le plus simple de configuration, ?

Merci pour les informations, solutions et avis que vous pourrez m'apporter

Bernard
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
jerome moliere
Le #593494
Bernard Koninckx wrote:
Bonjour à tous,

Je cherche une solution Open Source ou FreeWare valabe.

Quelle solution JDO (pour la persistance des données avec un serveur DB
mySQL) vous semble la plus appropriée pour un projet de petite envergure ?
Quel produit est le plus approprié, le plus stable, le plus facile d'accès
(compréhension) , le plus simple de configuration, ... ?
speedo d'objectweb devrait parfaitement faire l'affaire...

mais pourquoi du JDO ?
je conseillerai plutot du hibernate mais bon....

Jerome

--
Auteur cahier du programmeur Java tome 2 - Eyrolles 10/2003
http://www.eyrolles.com/php.informatique/Ouvrages/ouvrage.php3?ouv_ean13—82212111941

Bernard Koninckx
Le #593491
Je crois que j'ai fait une erreur de terminologie.

Quelle différence y a-t-il entre les deux technologies ?
Y a-t-il des alternatives à Hibernate ? Quels sont leurs points forts et
leurs points faibles ?

Merci pour les réponses

Bernard

"jerome moliere" c2aejj$1nj4$
Bernard Koninckx wrote:
Bonjour à tous,

Je cherche une solution Open Source ou FreeWare valabe.

Quelle solution JDO (pour la persistance des données avec un serveur DB
mySQL) vous semble la plus appropriée pour un projet de petite envergure
?


Quel produit est le plus approprié, le plus stable, le plus facile
d'accès


(compréhension) , le plus simple de configuration, ... ?
speedo d'objectweb devrait parfaitement faire l'affaire...

mais pourquoi du JDO ?
je conseillerai plutot du hibernate mais bon....

Jerome

--
Auteur cahier du programmeur Java tome 2 - Eyrolles 10/2003

http://www.eyrolles.com/php.informatique/Ouvrages/ouvrage.php3?ouv_ean13—8

2212111941


Bernard Koninckx
Le #593489
...
suite au post précédente.
Je n'ai pas envie de faire de choix à la légère

Bernard

"jerome moliere" c2aejj$1nj4$
Bernard Koninckx wrote:
Bonjour à tous,

Je cherche une solution Open Source ou FreeWare valabe.

Quelle solution JDO (pour la persistance des données avec un serveur DB
mySQL) vous semble la plus appropriée pour un projet de petite envergure
?


Quel produit est le plus approprié, le plus stable, le plus facile
d'accès


(compréhension) , le plus simple de configuration, ... ?
speedo d'objectweb devrait parfaitement faire l'affaire...

mais pourquoi du JDO ?
je conseillerai plutot du hibernate mais bon....

Jerome

--
Auteur cahier du programmeur Java tome 2 - Eyrolles 10/2003

http://www.eyrolles.com/php.informatique/Ouvrages/ouvrage.php3?ouv_ean13—8

2212111941


jerome moliere
Le #593488
Bernard Koninckx wrote:

Je crois que j'ai fait une erreur de terminologie.

si tu le dis :)


Quelle différence y a-t-il entre les deux technologies ?
JDO est une API de Sun dont tu peux trouver differentes impleemntations...

le but persister des objets Java de maniere transparente et sous divers
formats (SGBDR mais aussi fichier plat ou XML)
hibernate est une APi de mapping objet/relationnel et c'est tout :)
elle fournit 2 interfaces une full propriétaire et une conforme aux
specs ODMG...
et c'est un produit qui marche du feu de dieu :)
stable, rapide et bien documente...

tu peux jeter un oei la JORM mais c'est nettement plus complexe a
apprehender et moins bien documente...a priori pas destine a etre
utilise a la main....
Y a-t-il des alternatives à Hibernate ? Quels sont leurs points forts et
leurs points faibles ?
OJB mais c'est un cran en dessous et en proprietaire Toplink et

l'excellent cocobase

Jerome

--
Auteur cahier du programmeur Java tome 2 - Eyrolles 10/2003
http://www.eyrolles.com/php.informatique/Ouvrages/ouvrage.php3?ouv_ean13—82212111941

Cédric Chabanois
Le #593269
Je viens de tester Hibernate car moi aussi je me pose la question
Hibernate vs JDO vs TopLink.

J'ai testé hibernate (avec Oracle 9) avec des tables complétement
pourries ie pas toujours de clé primaire sur les tables, aucune clé
étrangère pour les liens entre les tables et d'autres bizarreries).
L'idée est de pouvoir s'adapter lorsqu'on a un existant comme lorsque
l'on ne part de rien.
Ca s'est très bien passé avec Hibernate sur mon test.

Maintenant conernant JDO, j'ai l'impression qu'il n'y a pas
d'implémentation open source réellement satisfaisante et du niveau
d'hibernate.
Niveau propriétaire, je vais regarder l'implémentation JDO de
http://www.libelis.com/, quelqu'un a déjà une expérience avec ce produit ?

Cédric


Bernard Koninckx wrote:

Je crois que j'ai fait une erreur de terminologie.

si tu le dis :)


Quelle différence y a-t-il entre les deux technologies ?


JDO est une API de Sun dont tu peux trouver differentes impleemntations...
le but persister des objets Java de maniere transparente et sous divers
formats (SGBDR mais aussi fichier plat ou XML)
hibernate est une APi de mapping objet/relationnel et c'est tout :)
elle fournit 2 interfaces une full propriétaire et une conforme aux
specs ODMG...
et c'est un produit qui marche du feu de dieu :)
stable, rapide et bien documente...

tu peux jeter un oei la JORM mais c'est nettement plus complexe a
apprehender et moins bien documente...a priori pas destine a etre
utilise a la main....

Y a-t-il des alternatives à Hibernate ? Quels sont leurs points forts et
leurs points faibles ?


OJB mais c'est un cran en dessous et en proprietaire Toplink et
l'excellent cocobase

Jerome




Emmanuel
Le #592992
Cédric Chabanois wrote:

Je viens de tester Hibernate car moi aussi je me pose la question
Hibernate vs JDO vs TopLink.


JDO possède des limitations structurelles imposées par la norme qui ne
sont pas prêtes d'être réglées.
Toplink est un bon produit qui existe sur le marché depuis longtemps. Je
n'ai pas été très satisfait de la doc, et leur IDE (il y a 1,5 ans)
était très boggé, il fallait finir le mapping à la main. Il est
commercial (Oracle).
Hibernate est très bien pensé. Je pense qu'il a rattrapé son retard en
terme de fonctionnalités par rapport à TL (il lui manquait le cache
distribué il y a 1 an mais c'est du passé). Hibernate n'a pas d'IDE de
mapping mais les meta données en XML sont lisibles par l'humain et il
existe les outils comme xdoclet ou autre pour le générer.

Je t'invite à regarder hibernate, la doc est d'un très bon niveau, le
support du forum très bon, c'est un projet très actif et un support
commercial est disponible auprès du JBoss Group si ce genre de besoin se
fait sentir.

Pour compléter le tableau, je dois dire que je fais partie de l'équipe
Hibernate, donc je ne dois pas être très objectif :)

Sur ta remarque concernant le mapping de legacy system mal pensés, je
dois dire que c'est au cas par cas, il outil pourra répondre mieux parce
qu'il a implémenté la fonctionnalité qui va bien et pas tel autre. C'est
tellement dépendant des erreurs des DBAs que c'estb difficile de juger.
En tout cas, depuis que j'utilise Hibernate, je ne suis pas tombé sur
des problèmes insurmontables à part quelques modèles de donnés vraiments
idiots que l'on a refactorés.

Voici un lien comparatif entre diverses solutions
http://c2.com/cgi-bin/wiki?ObjectRelationalToolComparison

Emmanuel Bernard
http://www.hibernate.org

Cédric Chabanois
Le #592991
Emmanuel wrote:

Cédric Chabanois wrote:

Je viens de tester Hibernate car moi aussi je me pose la question
Hibernate vs JDO vs TopLink.



JDO possède des limitations structurelles imposées par la norme qui ne
sont pas prêtes d'être réglées.


Je pense que je vais découvrir çà au fur et à mesure mais ce sont des
limitations de quel genre ?

Toplink est un bon produit qui existe sur le marché depuis longtemps. Je
n'ai pas été très satisfait de la doc, et leur IDE (il y a 1,5 ans)
était très boggé, il fallait finir le mapping à la main. Il est
commercial (Oracle).


Je ne l'ai pas encore testé mais il me semble qu'il est plus difficile à
utiliser qu'Hibernate.
D'autre part, qu'en est-t-il du support des BDD autres qu'Oracle ?

Hibernate est très bien pensé. Je pense qu'il a rattrapé son retard en
terme de fonctionnalités par rapport à TL (il lui manquait le cache
distribué il y a 1 an mais c'est du passé). Hibernate n'a pas d'IDE de
mapping mais les meta données en XML sont lisibles par l'humain et il
existe les outils comme xdoclet ou autre pour le générer.

Je t'invite à regarder hibernate, la doc est d'un très bon niveau, le
support du forum très bon, c'est un projet très actif et un support
commercial est disponible auprès du JBoss Group si ce genre de besoin se
fait sentir.
J'ai regardé Hibernate en effet et je n'ai pas été déçu (impressionné

même !)

Pour compléter le tableau, je dois dire que je fais partie de l'équipe
Hibernate, donc je ne dois pas être très objectif :)

Sur ta remarque concernant le mapping de legacy system mal pensés, je
dois dire que c'est au cas par cas, il outil pourra répondre mieux parce
qu'il a implémenté la fonctionnalité qui va bien et pas tel autre. C'est
tellement dépendant des erreurs des DBAs que c'estb difficile de juger.
En tout cas, depuis que j'utilise Hibernate, je ne suis pas tombé sur
des problèmes insurmontables à part quelques modèles de donnés vraiments
idiots que l'on a refactorés.


Ben je vois mal comment on peut faire pire que ce que j'ai vu lors de
mon test.


Merci pour tes réponses,

Cédric


Emmanuel
Le #592988
Cédric Chabanois wrote:

Emmanuel wrote:

Cédric Chabanois wrote:

Je viens de tester Hibernate car moi aussi je me pose la question
Hibernate vs JDO vs TopLink.




JDO possède des limitations structurelles imposées par la norme qui ne
sont pas prêtes d'être réglées.



Je pense que je vais découvrir çà au fur et à mesure mais ce sont des
limitations de quel genre ?

L'avantage papier de JDO est que tu peux persister dans autre chose

qu'une base de donnée. C'est /possible/ de le faire avec Hibernate, mais
il y a du travail et ce n'est pas vraiment fait pour cela. Je pense de
toute façon que l'accès à autre chose qu'un SGBDR est marginal.
L'autre point est la possibilité de charger certaines colonnes et pas
d'autres. Hibernate ne propose pas la fonctionnalité de la même façon
que JDO (fetch by profile). Mais après en avoir pas mal discuté, on est
arrivé à la conclusion que c'était une fonctionnalité marketing.
http://forum.hibernate.org/viewtopic.php?t’8378&highlight=jdo

Hibernate maintenant :)
La fonctionnalité la plus impressionante d'hibernate est la possibilité
de réattacher un graphe d'objet pour le mettre à jour.
L'API et le langage de requêtage est bien supérieur à celui de JDO. Tu
ne pourra pas faire une application réelle sans utiliser des extensions
propriétaires des vendeurs.
Pas de bytecode processing.
et http://www.hibernate.org/4.html

autres liens
http://forum.hibernate.org/viewtopic.php?t’5411
http://forum.hibernate.org/viewtopic.php?t’8460
http://forum.hibernate.org/viewtopic.php?tf2
et http://forum.hibernate.org/search.php?search_id$1059021&start=0

Pour info, Gavin le lead developer d'Hibernate a été invité à participer
au JDO community process (c'est idées sont relativement reconnues).



Jean-Marc Vanel
Le #595139
Plutôt que du mapping objet-relationnel tel que JDO ou hibernate,
est-ce que qulqu'un a essayé la persistence sur une base objet telle que Ozone?

Bonjour à tous,

Je cherche une solution Open Source ou FreeWare valabe.

Quelle solution JDO (pour la persistance des données avec un serveur DB
mySQL) vous semble la plus appropriée pour un projet de petite envergure ?
Quel produit est le plus approprié, le plus stable, le plus facile d'accès
(compréhension) , le plus simple de configuration, ... ?

Merci pour les informations, solutions et avis que vous pourrez m'apporter

Bernard




Publicité
Poster une réponse
Anonyme