Este patrón propone un
mecanismo para obtener grandes cantidades de información utilizando un acceso
directo sobre la base de datos. También conocido como JDBC for Reading
Se implementa en casos
que corresponden a búsquedas que devuelven una colección de objetos
Cuando se tienen casos
de uso que corresponden a búsquedas múltiples y la eficiencia es un factor
importante
·
Estructura
·
Participantes
-
Business Delegate
Delega las operaciones
de búsqueda múltiple en un Session Facade (que usa un DAO) o directamente en un
DAO
- SessionFacade
Un Session Bean que
implementa las operaciones de búsqueda múltiple delegando en un DAO
- DAO
Proporciona las
operaciones de búsqueda accediendo directamente a la BD
·
Riesgos y beneficios
de su implementación
Beneficios
-
Alternativa más eficiente que operaciones find en
interfaces
-
Home que devuelven múltiples Entity Beans
Riesgos
-
Información obsoleta (Idem Value Object)
·
Implementación
Se usa con el patrón Page-By-Page Iterator cuando
las operaciones de búsqueda pueden devolver colecciones grandes (más de lo que
se puede presentar en una pantalla de resultados)
Core J2EE Patterns describe el patrón Value List
Handler (FastLane Reader + Page-by-Page Iterator)
Si los Entity Beans son de tipo CMP, los DAOs sólo
necesitan tener las operaciones de búsqueda correspondientes
Business Delegate
accede directamente al DAO
Se evita una invocación remota
No es una arquitectura en 3 capas pura
La implementación de las búsquedas reside en el
cliente
Necesita drivers para la BD
·
Patrones relacionados
-
Data Access Object
-
Page-by-Page Iterator
-
Session Facade
-
Business Delegate
·
Uso de Fast Lane
Reader en un bean de sesión
No hay comentarios:
Publicar un comentario