Bonjour,
Effectivement, ce n'est pas une surprise de voire Hibernate moins performant que du JDBC simple.
Mais Hibernate apporte un gain important en terme de développement sur des moyens/gros projets (je dirais qu'à partir d'une vingtaine de table c'est un plus).
En effet, le mapping se fait simplement (plus ou moins suivant les associations entre les objets). Il est même allégé par le système d'annotations remplaçant le XML.
En utilisant Hibernate, on pense tout objet même les requêtes en utilisant les criterias. Les associations entre les objets (et les tables) se fait sans aucun effort de la part du développeur.
Le plus gros travail avec Hibernate est sa configuration (simplifié si on le couple avec Spring). Après c'est un jeu d'enfant.
Pense aussi à la gestion de transaction et d'accès concurrent, qu'il faut implémenter à la main en JDBC.
Bref, sur des projets dont le développement est couteux et destinés à durer, ils faut mieux choisir Hibernate dès le début pour gagner du temps par la suite.
Je rajouterai une dernière chose. Les performances d'une application ne sont pas le premier facteur à prendre en compte. Il faut mieux faire une application maintenable et qui donne des résultats correctes qu'une application rapide qui se trompe une fois sur deux et dont ne peut pas relire le code parqu'il y en a partout.
C'est un simple constat que j'ai fait en me basant sur mon expérience professionnel. Souvent Hibernate simplifie bien les choses.
Bonjour,
Effectivement, ce n'est pas une surprise de voire Hibernate moins performant que du JDBC simple.
Mais Hibernate apporte un gain important en terme de développement sur des moyens/gros projets (je dirais qu'à partir d'une vingtaine de table c'est un plus).
En effet, le mapping se fait simplement (plus ou moins suivant les associations entre les objets). Il est même allégé par le système d'annotations remplaçant le XML.
En utilisant Hibernate, on pense tout objet même les requêtes en utilisant les criterias. Les associations entre les objets (et les tables) se fait sans aucun effort de la part du développeur.
Le plus gros travail avec Hibernate est sa configuration (simplifié si on le couple avec Spring). Après c'est un jeu d'enfant.
Pense aussi à la gestion de transaction et d'accès concurrent, qu'il faut implémenter à la main en JDBC.
Bref, sur des projets dont le développement est couteux et destinés à durer, ils faut mieux choisir Hibernate dès le début pour gagner du temps par la suite.
Je rajouterai une dernière chose. Les performances d'une application ne sont pas le premier facteur à prendre en compte. Il faut mieux faire une application maintenable et qui donne des résultats correctes qu'une application rapide qui se trompe une fois sur deux et dont ne peut pas relire le code parqu'il y en a partout.
C'est un simple constat que j'ai fait en me basant sur mon expérience professionnel. Souvent Hibernate simplifie bien les choses.
Cordialement,
Gronono