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

Langage Java Discussion :

DAO dans le bean


Sujet :

Langage Java

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Avril 2005
    Messages
    277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39

    Informations forums :
    Inscription : Avril 2005
    Messages : 277
    Par défaut DAO dans le bean
    Bonjour,

    Je reviens à l'attaque avec mes questions tordues ...

    Voila je souhaiterais intégrer les fonctionnalités de DAO dans le bean correspondant mais sans y intégrer le code.

    Donc je voudrais pouvoir faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    User u = User.find(1);
    u.setName("toto");
    u.save();
    Mais je souhaiterais (grâce à l'héritage, aux implémentations et aux classes abstraites) que les fichiers restent séparés !

    Voila comment je voudrais que ça marche :

    -----> 1 : PojoItem
    C'est mon conteneur de bean de base, tous mes beans étendront cette classe !
    (C'est avec cette classe et du typage que je clone sans cast, etc ... cf le thread ==> ICI <==)

    -----> 2 : HibernateFactory
    C'est uniquement des méthodes permettant de faire mes connexions et mes transactions avec hibernate.

    -----> 3 : DAO
    C'est une classe basique permettant de manipuler mes beans (ou tout ce qui étend PojoItem dans mon cas)
    Les méthodes find() et findAll() seront publiques (et statique ???)
    Les méthodes delete(), save(), update() seront protégées et devront être surchargées pour être utilisées.
    C'est ici qu'on appelle les factory, dont HibernateFactory !

    Maintenant, les classes propres à la logique métier, donc des exemples.

    -----> 4 : UserDAO
    Elle étend ou surcharge la classe DAO, ici on trouvera tout le code métier de travail avec les beans.
    On pourra surcharger ou non les méthodes qui nous intéressent.

    -----> 5 : User
    Elle étend PojoItem au minima, car c'est un objet qui sera manipulé par la DAO.
    C'est un pur bean donc champs, getters, setters ....

    Voila ce que j'ai aujourd'hui (j'ai pas spécifié tous les typages de classes qui me permettent de pas caster toutes les 10 lignes et qui simplifient bien la manipulation ensuite !)

    J'aimerais donc, par un moyen que je ne trouve pas, que mon Objet "User" intègre directement (sans possibilité de surcharge, juste possibilité d'appel) toutes les méthodes qui sont dans "UserDAO".

    Ainsi, chacun son job, "User" est le bean de données et "UserDAO" le service métier qui manipule.

    Mais avec l'avantage de pouvoir utiliser la DAO directement depuis le bean !

    J'espère que je suis assez clair, et aussi que c'est possible !!!

    Je met en pièce jointe de quoi voir d'où j'en suit avec les typages et tout.

    Toute critique est bienvenue.

    Merci à vous d'avance !
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. [Framework] Un Dao à null dans un bean
    Par Lorenzaccio dans le forum Spring
    Réponses: 0
    Dernier message: 29/04/2011, 10h06
  2. [Conception] Primitives ou objet dans les beans
    Par ZeKiD dans le forum Général Java
    Réponses: 11
    Dernier message: 13/01/2006, 13h32
  3. [Struts] paramètre JS dans un bean:define
    Par Mrlud dans le forum Struts 1
    Réponses: 4
    Dernier message: 09/06/2005, 14h38
  4. Réponses: 2
    Dernier message: 02/06/2005, 10h21
  5. [Struts]Accéder un bean dans le bean
    Par MasterMic dans le forum Struts 1
    Réponses: 4
    Dernier message: 13/09/2004, 10h23

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