2011-01-25 3 views
2

J'ai l'expérience avec Toplink pour traduire des objets à la base de données et vice versa. Mais tout cela faisait partie d'un site JSP et maintenant j'ai fait quelques trucs EJB avec. Maintenant, ma question est la suivante: est-ce bon de travailler avec des choses comme Toplink dans une application Java Desktop ou est-il plus courant d'utiliser des éléments SQL natifs de Java?Meilleure façon de développer Java avec un DB

Peut-être une certaine expérience du prof. les développeurs pourraient être bons. Je dois développer une application sérieuse pour un client. Je le fais en Java et je vais stocker les données dans une base de données.

Merci

Répondre

3

ORM est bien si votre modèle de données est bien structuré, pas trop complexe et, surtout, si vous avez le contrôle.

Les bases de données héritées ou mal configurées sont plus difficiles à représenter avec ORM, ce qui serait fortement déconseillé car votre application ajouterait des complexités à celles impliquées par le modèle lui-même.

Si vous êtes à l'aise avec un outil ORM tel que Hibernate et que votre base de données est assez bien faite, allez-y. Ils sont sûrs d'économiser beaucoup de code standard et d'avoir un bon code d'optimisation des requêtes sous le capot. Sinon, vous pouvez utiliser JDBC directement ou un autre framework pour simplifier l'utilisation de JDBC tout en utilisant le langage SQL. Pour de telles situations, je recommande MyBatis.

+0

+1 pour les anciens conseils db – bluish

0

dépend également du volume de la base de données. Pour les bases de données avec d'énormes données, essayez d'utiliser Hibernate. Il pourrait être d'une grande aide plutôt que d'écrire le code JDBC

1

Il est dépendant de vos cas d'utilisation

technologies ORM pouvez bien des spécificités abstraites de base de données loin et vous permettra de vous concentrer du modèle de domaine. Cependant, il existe des cas où l'utilisation d'une couche ORM n'est pas appropriée (des ensembles de données extrêmement volumineux peuvent entraîner des problèmes de performance, par exemple, les schémas de base de données difficiles à mapper aux objets en sont un autre).

Je recommande d'utiliser une technologie compatible JPA telle que Hibernate. De cette façon, vous utilisez l'ORM qui implémente un standard Java et vous pouvez plus ou moins permuter les implémentations.

Pour tout le reste alors JDBC est un ami souple

2

TopLink (et EclipseLink/JPA) fonctionne aussi bien dans une application de bureau que dans une application côté serveur. En fait, TopLink existe depuis les années 90 avec des applications client-serveur Smalltalk avant que le côté serveur ne soit populaire.

Questions connexes