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 :

[Débutant] Définition


Sujet :

Langage Java

  1. #1
    Membre à l'essai
    Inscrit en
    Décembre 2005
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 20
    Points : 16
    Points
    16
    Par défaut [Débutant] Définition
    Quelqu'un peut-il me donner la définition des termes suivants et qu'est-ce qu'il représente :

    - DTO (Data Transfert Objet)
    - BO (Business Object)
    - EO (Entity Object)

    Je pose cette question car plus je lis de doc plus je m'embrouille.

    Merci d'avance.

  2. #2
    ego
    ego est déconnecté
    Rédacteur

    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    1 883
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 883
    Points : 3 510
    Points
    3 510
    Billets dans le blog
    2
    Par défaut
    Pourquoi tu t'embrouilles ? Les noms sont clairs non ?
    Où est-on vrai problème ?

  3. #3
    Membre à l'essai
    Inscrit en
    Décembre 2005
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 20
    Points : 16
    Points
    16
    Par défaut
    Par exemple je vois des doc ou le DAO retourne des BO et dans d'autre des DTO ??

  4. #4
    ego
    ego est déconnecté
    Rédacteur

    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    1 883
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 883
    Points : 3 510
    Points
    3 510
    Billets dans le blog
    2
    Par défaut
    On peut faire ce que l'on veut non ?
    Tout dépend des objectifs et des contraintes.
    Dans une vision "classique", les DAO retournent des BO qui sont ensuite utilisés par des traitements appellés par des "client", ces traitements fabriquent des DTO pour passer le graphe d'objet nécessaire au client. Ce DTO pouvant contenir des vues partielles sur les BO.

  5. #5
    Membre à l'essai
    Inscrit en
    Décembre 2005
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 20
    Points : 16
    Points
    16
    Par défaut
    Un BO est généralement une table ?
    Donc si mon DAO retourne une ligne de ma table ce sera un BO mais si c'est une partie de ma table ou le resultat de plusieurs table, on parlera de DTO ?
    Et le EO dans ton ça il sert à quoi ?

  6. #6
    ego
    ego est déconnecté
    Rédacteur

    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    1 883
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 883
    Points : 3 510
    Points
    3 510
    Billets dans le blog
    2
    Par défaut
    BO != table
    Table = visions SGBDR = stockage
    BO = visions objet, métier
    Un BO peut par exemple être stocké dans plusieurs tables, ou plusieurs types de BO dans une même table (cas de l'héritage par exemple).

    EO ??

  7. #7
    Membre à l'essai
    Inscrit en
    Décembre 2005
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 20
    Points : 16
    Points
    16
    Par défaut
    Voila comment je développement et j'utilise l'ensemble des termes DAO, DTO, BO :

    Si on prend par exemple deux tables personne et voiture, toute les deux ayant une relation.

    Je créerai par exemple un DAO :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     class personneDAO {
    void save(PersonneBO personneBO);
    void delete(PersonneBO personneBO);
    PersonneBO select(CriterionPersonne c);
    };
     
    class PersonneBO
    {
    private String nom;
    private String prenom;
    private List Voiture;
     
    set/get...
    };
     
    class CriterionPersonne
    {
    private String nom;
    private String prenom;
    };
    Mais select(CriterionPersonne c) pourrai retourner une liste d'objet ou de DTO.
    Et mon CriterionPersonne pourrait être remplacé par une classe permettant d'ecrire des requêtes de selection à la manière de Hibernate.

    Est-ce-que j'utilise correctement les concepts ?

    [ Modéré par Viena ]
    Ajout balises de code : Pensez aux balises [code], votre message est plus lisible et la lecture plus facile.

    Les Règles du Forum

  8. #8
    ego
    ego est déconnecté
    Rédacteur

    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    1 883
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 883
    Points : 3 510
    Points
    3 510
    Billets dans le blog
    2
    Par défaut
    oui

  9. #9
    Membre à l'essai
    Inscrit en
    Décembre 2005
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 20
    Points : 16
    Points
    16
    Par défaut
    Par contre le DAO n'intégre que la logique pour accèder aux données.
    Si le système doit mettre en place un système de restriction sur l'accès il faudra passer par un service qui utilise implémentera la logique d'accès et utilisera le DAO pour retourner le bon résultat ?

  10. #10
    ego
    ego est déconnecté
    Rédacteur

    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    1 883
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 883
    Points : 3 510
    Points
    3 510
    Billets dans le blog
    2
    Par défaut
    tu peux faire ça, oui.
    Regardes la notion de "filter" dans Hibernate

  11. #11
    Membre à l'essai
    Inscrit en
    Décembre 2005
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 20
    Points : 16
    Points
    16
    Par défaut
    Est-ce qu'un BO peut avoir des méthodes utilisant des DAO ?
    Je m'explique si j'ai un BO : factureBO qui doit me lister un ensemble de lignes (ligne de la facture) par la méthode getLines(), est-ce que celle-ci peut interroger un DAO pour retourner la liste ? Ou est-ce qu'un BO est tout simplement une classe n'ayant que des propriétés et c'est un service gérant les factures qui doit le faire ?
    De plus si je voulais une moyenne sur les montant des factures, c'est au niveau du BO que je dois le faire ou encore au niveau du service ?

  12. #12
    ego
    ego est déconnecté
    Rédacteur

    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    1 883
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 883
    Points : 3 510
    Points
    3 510
    Billets dans le blog
    2
    Par défaut
    Oui, un BO peut faire appel à un DAO.

Discussions similaires

  1. Débutant : Définition de colonne ambigüe
    Par BZH75 dans le forum Langage SQL
    Réponses: 9
    Dernier message: 07/10/2013, 15h21
  2. [Débutant] Définition shortrandom et mod
    Par dupond59 dans le forum Ada
    Réponses: 1
    Dernier message: 14/01/2009, 14h20
  3. [Débutant] définitions de kernel et libc
    Par bilred dans le forum Linux
    Réponses: 4
    Dernier message: 11/12/2008, 20h00
  4. [débutant] définition du nombre de décimales dans une requête
    Par a2line dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 02/12/2006, 21h57
  5. [débutant] probleme de définition de classe
    Par Anthony17 dans le forum Delphi
    Réponses: 5
    Dernier message: 10/07/2006, 15h56

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