In my environment a DAO is the object that is the result of reading from the database (or some other source).
You can call them anything you like, but the accepted meaning of DAO is an object that is used to read/store Value Objects from/to a persistent storage. A DAO has no attributes with business meaning. See [1].
> Finally DataTransferObjects are the objects sent to the > presentation tier as the result of a request.
DTOs are used to transfer data in a single chunk between layers of a *distributed* application. That is, if you have a remote object (imagine an entity EJB) with many attributes, you'd rather copy the attribute values to a DTO and serialize it to the client rather than call many getters across the wire. [2]
If your presentation layer is remote, you can as well send DTOs to it.
Ugo
[1]: http://java.sun.com/blueprints/corej2eepatterns/Patterns/DataAccessObject.html
[2]: http://java.sun.com/blueprints/corej2eepatterns/Patterns/TransferObject.html
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
