Quelle est la différence entre POJO (simple Old Java Object) et DTO (Data Transfer Object)?

je ne trouve pas de différence entre eux. Personne ne sait comment les différencier?

16
demandé sur codeforester 2009-09-15 09:35:33

8 réponses

POJO ou " simple Old Java Object "est un nom utilisé pour décrire des objets Java" ordinaires", par opposition à EJBs (à l'origine) ou tout ce qui est considéré comme" lourd " avec des dépendances sur d'autres technologies.

DTO ou "Objet de Transfert de Données" est un objet... bien... transfert de données, généralement entre vos classes "affaires" et la couche de persistance. C'est typiquement une classe sans comportement un peu comme une structure de style C. Ils sont une notion obsolète.

13
répondu SingleShot 2009-09-15 05:50:51

A POJO est juste un objet Java simple, l'acronyme est utilisé pour souligner qu'il n'est vraiment rien de spécial.

A DTO est un objet de transfert de données qui est utilisé pour encapsuler des données qui sont transférées sur une connexion entre couches ou sous-systèmes. Voir l'article de wikipedia, c'est aussi un motif J2EE de base ( http://www.oracle.com/technetwork/java/transferobject-139757.html ).

http://en.wikipedia.org/wiki/Data_transfer_object

10
répondu Jon 2016-10-21 14:16:22

tous les DTO sont des POJOs, mais tous les POJOs ne sont pas des Dto. Un exemple de POJO qui n'est pas un DTO est une classe d'affaires qui contient l'état et le comportement (business logic).

6
répondu Paulo Merson 2012-04-10 22:50:42

DTO (Data transfer object) est un modèle de conception de base J2EE utilisé pour le transfert de données à l'intérieur du système. DTO Modèle



POJO (simple Old Java Object) : c'est juste un acronyme que les gens utilisent pour suggérer qu'il s'agit d'un simple objet java (qui est aujourd'hui fortement annoté pour faire un travail plein de sens).

DTO Modèle

J2EE Catalogue de Motif

4
répondu user10398 2009-09-15 05:57:13

DTO pojo, mais pojo est pas dto, parce que pojo pouvez avoir plus de comportement, mais DTO a tout simplement pas de comportement

Oracle document a une description claire.

4
répondu user3016087 2015-01-14 16:56:42

un POJO peut avoir un comportement. Le livre POJOs en Action détaille L'utilisation de POJOS pour le développement d'applications. Les DTO sont des conteneurs de données qui aident à transférer des données d'une couche à une autre. Les DTO ne sont pas censés contenir de comportement.

3
répondu Abhijeet Kashnia 2010-09-18 08:47:23

je pourrais comprendre la différence entre POJO et DTO de cette phrase de wiki dto :

les DTO sont des objets simples qui ne devraient pas contenir de logique commerciale, mais qui peuvent contenir des mécanismes de sérialisation et de desérialisation pour le transfert de données par fil.

aussi, DTO est parfaitement visualisé et décrit en détail dans Catalogue de Martin Fowler de Modèles de Architecture D'Applications D'Entreprise

0
répondu Hardzsi 2018-04-16 15:43:44

POJO = simple Old Java Object

DTO = Objet de Transfert de Données

-- Edit

Eh bien, cela suppose que vous ne savez pas ce que les acronymes signifient. Un Pojo est juste un objet qui est libre de toute sorte de chaîne d'héritage. Un DTO existe dans votre modèle de données, donc suit probablement une chaîne stricte la reliant à une entité donnée.

-2
répondu Noon Silk 2009-09-15 05:43:43