Documentos de Académico
Documentos de Profesional
Documentos de Cultura
aplicaciones
Arquitectura en capas
API
API
dic-08 alb@uniovi.es 2
Layers y Tiers
3 layers, 2 tiers
dic-08 alb@uniovi.es 4
Conexiones remotas
(diversas tecnologas)
Conexiones
3 layers, 4 tiers locales
dic-08 alb@uniovi.es 5
N tiers
dic-08 alb@uniovi.es 6
Arquitectura en capas
dic-08 alb@uniovi.es 7
Capa de presentacin
dic-08 alb@uniovi.es 8
Capa de presentacin
dic-08 alb@uniovi.es 9
Capa de presentacin
dic-08 alb@uniovi.es 11
dic-08 alb@uniovi.es 12
Capa de Negocio:
Responsabilidades
dic-08 alb@uniovi.es 17
Lgica de negocio:
implementacin
dic-08 alb@uniovi.es 18
Capa de lgica:
implementacin
dic-08 alb@uniovi.es 19
Capa de lgica:
implementacin
Si se usa modelo de dominio, compuesta
de:
Modelo de dominio: incluye lgica pero no toda
Clases de proceso sobre el modelo: lgica que
no se puede asignar directamente a ninguna
clase del modelo de dominio (procesos)
En esta capa no se debera meter ninguna
dependencia de tecnologa de
infraestructura
Debera poderse ejecutar fuera de cualquier
entorno (para testear)
La persistencia suele ser la principal
dependencia. La capa DAO la evita
dic-08 alb@uniovi.es 20
dic-08 alb@uniovi.es 21
Capa de persistencia
dic-08 alb@uniovi.es 22
Interfaz de servicio: ejemplo
dic-08 alb@uniovi.es 23
Patrn DAO: problema
dic-08 alb@uniovi.es 24
Patrn DAO: problemas si
dic-08 alb@uniovi.es 25
DAO: solucin
dic-08 alb@uniovi.es 26
DAO
DomainObject
dic-08 alb@uniovi.es 28
DomainObject
Modelo DAO:
interaccin
dic-08 alb@uniovi.es 29
Interfaces DAO: ejemplo
dic-08 alb@uniovi.es 30
Cdigo que
resuelve
lgica de
negocio
No tiene
dependencias de
persistencia
dic-08 alb@uniovi.es 31
Posibles alternativas
en JEE
dic-08 alb@uniovi.es 34
Externalizacin de SQLs
Control de transacciones
Servicio de log (logging != login)
Pool de conexiones JDBC (o de cualquier otro
sistema de persistencia)
Sistema de configuracin de la aplicacin
(Assembling)
Gestor de accesos/permisos de usuario a los
distintos servicios de la aplicacin
Provider de acceso a datos
Otros
Gestin de los Servicios
de Infraestructura
Componentizados
Se accede a ellos a travs de una interfaz que
define el servicio = contrato.
Gestin de los Servicios
de Infraestructura
Spring Framework
Contenedor IoC (entre otras
muchas cosas)
Incorporado al FPA desde la
versin 1.3
PicoContainer
EJB 3.0
Spring Framework
Contenedor IoC:
Configuracin centralizada y
automatizada
Cableado de beans
No invasivo
Ensambla POJOs.
Capa de abstraccin para plugin de
monitores transaccionales
Capa de abstraccin JDBC
Integracin con TopLink, Hibernate, JDO, e
IBATIS
Funcionalidad AOP
MVC
Spring, externalizacin a xml de la
configuracin
dic-08 alb@uniovi.es 44
Arquitectura en capas:
patrones
dic-08 alb@uniovi.es 45
Solucin en capas
Persistence
Service Interface
Interface
Control
JDBC
Fa Hibernate DAO
Action ca Impl
D JDBC DAO
Action de A JPA DAO
Action
Fa O Spring DAO
Action ca Impl
de Spring DI D
DAO Factory
F
dic-08 alb@uniovi.es 47
Interaccin entre capas: ejemplo
lgica persistencia
dic-08 alb@uniovi.es 48
Referencias
URLs
http://jakarta.apache.org/Struts
http://theserverside.com
Libros
Programming Jakarta Struts de
OReilly
Mastering Tomcat Development de
WILEY
Java Server Programming J2EE
Edition de Wrox