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 :

Différences entre POJO et Value Objects


Sujet :

Hibernate Java

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2003
    Messages : 45
    Points : 37
    Points
    37
    Par défaut Différences entre POJO et Value Objects
    Bonjour,
    je voudrai connaitre la différence entre un POJO et un Value Object vu qu'ils gerent la persistence tous deux. Lequel peut etre généré à partir d'une base de données. Quel est le meilleur ?

    Si je comprend bien, à partir d'une base de données, on crée un fichier .cfg.xml de mapping d'une table de la base de données et avec un outil on génére le VO : Quels outils utilisez vous pour générer ces fichiers ?

    Merci d'avance

  2. #2
    Membre habitué
    Inscrit en
    Octobre 2002
    Messages
    164
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 164
    Points : 190
    Points
    190
    Par défaut
    POJO veut dire "Plain Old Java Object" ou en d'autres termes "JavaBean".

    Dans le concept Hibernate cela signifie que ce sont tout simplement des objets standard qui suivent la norme des getter + setter et donc qui n'implément en aucune facon une interface spécifique à Hibernate.

  3. #3
    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
    Comme l'a dit mon prédécesseur, les POJO sont des classes Java "classiques" qui ne sont pas teintées par une quelconque techno ou framework. Il n'y a pas de lien entre POJO et persistance.
    Les ValueObject sont un moyen / pattern utilisé dans le monde J2EE/EJB pour faire passer des données du serveur vers le client. Ils "miment" les structures du C ou C++ = des objets pur données.
    Avec Hibernate, les VO ne sont pas utilent car Hibernate permet justement de gérer des POJO persistants, donc il n'est pas nécessaire de créer d'autres objets pour serializer les POJO depuis le serveur vers le client.
    Ce qu'il faut faire c'est juste des services dédiés au client et qui font déclencher les "load" de toutes les associations nécessaires pour un objet récupéré par le client (déclencher les lazy-load par exemple). Si les POJOs sont "serializable" ils pourront être passés en paramètre des opérations d'EJB stateless par exemple.

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

Discussions similaires

  1. [Flex4] Value Objects imbriqués
    Par FlexBeginner dans le forum Flex
    Réponses: 2
    Dernier message: 18/06/2012, 09h37
  2. Différence entre FormulaR1C1 et Value
    Par Prof_Matches dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 10/01/2012, 08h58
  3. Probleme entre HyperFileSQL et Business Objects
    Par emmaja dans le forum Designer
    Réponses: 0
    Dernier message: 30/08/2011, 11h43
  4. Item renderer avec checkbox & value object
    Par gobgob dans le forum MXML
    Réponses: 1
    Dernier message: 22/10/2009, 01h07
  5. [Reflection] diff de perf entre newInstance() et appel classic
    Par guipom dans le forum API standards et tierces
    Réponses: 2
    Dernier message: 07/07/2005, 14h50

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