You want to transfer multiple data elements over a tier.
- You want clients to access components in other tiers to retrieve and
- You want to reduce remote requests across the network.
- You want to avoid network performance degradation caused by chattier
applications that have high network traffic.
Use a Transfer Object to carry multiple data elements across
- Updatable Transfer Objects Strategy
- Multiple Transfer Objects Strategy
- Entity Inherits Transfer Object Strategy
- Reduces network traffic
- Simplifies remote object and remote interface
- Transfers more data in fewer remote calls
- Reduces code duplication
- Introduces stale transfer objects
- Increases complexity due to synchronization and version control
- Session Façade
The Session Façade frequently uses Transfer Objects as an exchange
mechanism with participating Business Objects. When the facade acts
as a proxy to the underlying business service, the Transfer Object obtained
from the Business Objects can be passed to the client.
- Transfer Object Assembler
The Transfer Object Assembler builds composite Transfer Objects from
different data sources. The data sources are usually session beans or
entity beans whose clients ask for data, and who would then provide
their data to the Transfer Object Assembler as Transfer Objects. These
Transfer Objects are considered to be parts of the composite object
assembled by the Transfer Object Assembler.
- Value List Handler
The Value List Handler is another pattern that provides lists of dynamically
constructed Transfer Objects by accessing the persistent store at request
- Composite Entity
The Transfer Object pattern addresses transferring data across tiers.
This is one aspect of the design considerations for entity beans that
can use the Transfer Object to carry data to and from the entity beans.