IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Hibernate Java Discussion :

Utilité d'un DAO avec Hibernate ?


Sujet :

Hibernate Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Utilité d'un DAO avec Hibernate ?
    Bonjour,

    Je débute dans Hibernate, (en réalité, je viens juste de lire et tester le chapitre 1 de la documentation Hibernate) et j'ai une petite question sur l'utilité d'un DAO.

    En se référant à la doc de Sun sur les DAO, le DAO existe en grande partie pour fournir une abstraction sur le support de données. Avec Hibernate, cela se passe dans le fichier de configuration.

    Pour mettre en place une application est-il encore utile d'écrire un DAO avec toute la couche permettant d'ignorer le support de données ou est-ce qu'une "simple" DAOFactory renvoyant des classes concrètes est suffisante ? (Le DAO serviras alors plus en tant que M de MVC)

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 276
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 276
    Par défaut
    Tu l'as dit toi même, les DAO sont une abstraction de la couche d'accès aux données. L'idée est de pouvoir substituer une implémentation par une autre : JDBC pur par Hibernate, par exemple.
    A toi de voir, si tu as besoin de modularité ou pas. Ca n'a pas grand chose à voir avec Hibernate en particulier.

    Pour ce qui est de l'accès à ces DAO, à toi de voir, si tu y accèdes via Spring ou via Factory. Ce n'est qu'un détail.

  3. #3
    Invité
    Invité(e)
    Par défaut
    Oui je vois,

    L'idée est donc d'utiliser soit une DAOFactory pour obtenir une implémentation d'un DAO, soit Spring et son BeanFactory (Ce qui n'empêche pas la DAOFactory de d'utiliser la BeanFactory pour obtenir des instances de ces implémentations) ?

  4. #4
    Membre Expert
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 276
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 276
    Par défaut
    Voilà c'est ça.
    A toi de voir ce que tu préfères.
    J'aime bien injecter mes DAO dans mes services, eux-même créés par Spring pour la gestion transactionnelle, mais ce n'est qu'un avis.

  5. #5
    Invité
    Invité(e)
    Par défaut
    Oui ok donc chaque Service possède un setXXX(XXXDao dao); tu n'as pas de DAOFactory.createXXXDao(); ?

  6. #6
    Membre Expert
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 276
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 276
    Par défaut
    Exactement.
    Spring se charge de tout. (enfin presque )

Discussions similaires

  1. Utilité des classes DAO générées avec Hibernate Tools
    Par marooned dans le forum Hibernate
    Réponses: 12
    Dernier message: 13/01/2013, 20h17
  2. Génération des fichiers DAO mapping avec hibernate
    Par hibernouteTn dans le forum Hibernate
    Réponses: 9
    Dernier message: 24/04/2008, 18h08
  3. Réponses: 1
    Dernier message: 05/09/2006, 17h20
  4. [Plugin][Hibernate] Patterns DAO avec hybernate
    Par BarbapapaDK dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 13/03/2006, 09h53
  5. [Plugin][Hibernate]Eclipse avec hibernate(synchronizer)
    Par mg67 dans le forum Eclipse Java
    Réponses: 7
    Dernier message: 23/06/2005, 17h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo