Modelo entidad-relación: q.e.p.d
María Consuelo Franky
ConsueloFranky@cincosoft.com CincoSOFT Ltda.
http://www.cincosoft.com
Tel: (1)6230180 Bogotá
1
Introducción
• Java EE 5 reemplazó a J2EE hace 1 año: cambio profundo de modelo conceptual, arquitectura y estrategia de desarrollo • El reto es volver a aprender a hacer aplicaciones de unamanera completamente distinta: - pantallas que exponen directamente las entidades del Modelo - se modela en términos de entidades persistentes y no de tablas de la base de datos - consecuencia: aplicaciones concisas y eficientes y eliminación de patrones burocráticos • Objetivo de la conferencia: visión general del modelaje unificado de datos en términos de entidades persistentes y no de tablasde la base de datos (Modelaje E-R: Q.E.P.D.) • Aplicable a Java EE 5 pero también a .NET
XXVII Salón de Informática - Septiembre'2007 2
Temario
• Arquitectura de una aplicación Java EE 5 • Facilidades de JPQL para navegar sobre entidades persistentes • Manejo de relaciones entre entidades • Herencia entre entidades • Control opcional en la transformación Objetos - Relacional • Consultas enSQL nativo
XXVII Salón de Informática - Septiembre'2007
3
Arquitectura de una aplicación Java EE 5
XXVII Salón de Informática - Septiembre'2007
4
J2EE: Arquitectura MVC de una aplicación
Presentación Aplicación
servlet controlador
Servicios
Dominio
Persistencia
CONTROLADOR
EJB controlador
MainServlet
RequestProcessor
ScreenFlowManager
WebProxy
StateMachine
JSP template
MODELO
EJB entidad C
VISTAS
HTML 1 HTML 2 Navegador Cliente JSP pantallazo1 JSP pantallazo2 javaBean 1 javaBean 2
EJB sesión A
Model DAO Value
DAO
BD relaBD cional
Servidor Web
Servidor de componentes
Servidor BD
Java EE 5: Arquitectura de una aplicación utilizando frameworks JSF, EJB 3.0 y Seam
N.Presentación
Navegador Cliente
N. Aplicación (Web)
Servidor Web
N. Servicios
Servidor de componentes
N. Persistencia
Servidor de BD
frameworks
HTML servlet JSF
forw a rd
servlet Seam
ejb Seam
entity manager
BD relacional
JSP JSP
ejb ejb aplicación aplicación
entidades
Convenciones:
interacción HTTP
invocación
acceso BD
uso de atributos de entidades(get y set)
Nivel web basado en el framework JSF
q
Pantallas se contruyen con componentes gráficos UIComponent que reaccionan a eventos:
son componentes de alto nivel que encapsulan elementos HTML y tienen comportamiento asociado muestran y actualizan valores del Modelo contenidos en clases java ("backing beans") como reacción a eventos (por ej: oprimir un botón) invocan directamentemétodos de los “backing beans”
q
Aspectos de validación de los datos del usuario:
Validación automática asociada a cada componente gráfico Cuando la validación falla se vuelve a mostrar la pantalla junto con los mensajes de error solo cuando la validación es exitosa
7
Procesamiento de eventos XXVII Salón de Informática - Septiembre'2007
Niveles de Servicio yDominio basados en el framework EJB 3.0
q
Concepto de EJB de entidad
modela una entidad de negocio persistente componente de negocio: implementa servicios ofrecidos por la aplicación
q
Concepto de EJB de sesión
q
Simplificación de Java EE 5 respecto a J2EE
clases simples para implementar entidades y componentes de negocio:
¯
se regresa a un POJO: “Plain Old JavaObjects”
descriptores ya no son obligatorios (pero ahora hay @anotaciones no obligatorias)
¯
más trabajo para el Contenedor, menos para el desarrollador
persistencia automática: desaparece SQL burocrático ahora sí se programa en términos de objetos (entidades) y no en términos de tablas de la BD => gran reducción de código y una mayor robustez
q
Framework EJB 3.0 recoge...
Regístrate para leer el documento completo.