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

JSF Java Discussion :

héritage et polymorphisme


Sujet :

JSF Java

  1. #1
    Membre du Club

    Profil pro
    Inscrit en
    Août 2005
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 39
    Points : 43
    Points
    43
    Par défaut héritage et polymorphisme
    Bonjour,

    Je souhaiterais avoir votre opinion sur la meilleur façon de gérer l'héritage et le polymorphisme. Je développe en JSF et EJB3.
    J'ai une application permettant de gérer des articles (livres ou cdrom).
    J'ai une classe mère Article et deux classes filles livre et cdrom.
    J'ai une couche métier avec une méthode ajouterArticle(Article article).
    Je peux donc passer en argument un objet livre ou un objet cdrom.

    Question 1 :
    Au niveau de JSF, suis-je obligé de créer une page pour saisir un livre et une page pour saisir un cdrom ?

    Je souhaite aussi, avoir une page permettant de lister tous les articles, ou tous les livres ou tous les cdrom.

    Pour lister tous les articles, pas de pb, j'ai une méthode listerArticles();
    avec la requête suivante : em.createQuery("SELECT a from Article a").getResultList();

    Question 2 :
    Pour avoir uniquement les livres ou cdrom, dois-je avoir deux autres méthodes
    listerDisques() avec em.createQuery("SELECT d from Disque d").getResultList();
    et listerCdrom() avec em.createQuery("SELECT c from Cdrom c").getResultList(); ?
    ou puis-je utiliser uniquement ma méthode listerArticles() et faire ensuite un filtre au niveau de ma page JSF ?

    merci pour votre aide.

  2. #2
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Points : 7 275
    Points
    7 275
    Par défaut
    Hello,

    Réponse #1:
    Tout dépend de ce qui est affiché dans la page d'ajout d'un CD et celle d'un livre.
    Si les différences sont importantes, je pense que c'est mieux de les séparer.
    Sinon, peut-être est-ce utile d'utiliser des templates (si tu utilises les Facelets) contenant les informations communes, et tu fais un (ou plusieurs) bout de page spécifique pour le CD et un autre pour le livre.
    Un peu comme justement l'héritage en Java : tu places toutes les propriétés / méthodes communes à CD et Livre dans la classe Article, et toutes les propriétés / méthodes spécifiques dans les classes CD et Livre.

    Réponse #2:
    Personnellement, je serais plutôt pour proposer les 3 méthodes au niveau de mon DAO : listerLivres(), liserCDs() et listerArticles()... Ensuite, tu utilises la plus adaptée selon ton cas...
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

  3. #3
    Membre du Club

    Profil pro
    Inscrit en
    Août 2005
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 39
    Points : 43
    Points
    43
    Par défaut
    merci pour ta réponse.
    Je vais jeter un coup d'oeil sur les templates

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Template, héritage et polymorphisme
    Par PtitFrancesco dans le forum Langage
    Réponses: 5
    Dernier message: 08/09/2009, 21h35
  2. héritage et polymorphisme
    Par julien.metais dans le forum Hibernate
    Réponses: 3
    Dernier message: 17/05/2009, 09h58
  3. Réponses: 10
    Dernier message: 17/07/2008, 20h01
  4. [C#] Information sur héritage et polymorphisme
    Par LE NEINDRE dans le forum C#
    Réponses: 21
    Dernier message: 14/06/2007, 11h00
  5. Réponses: 19
    Dernier message: 05/06/2007, 08h13

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