Java Enterprise Edition (JEE) - Profesoresisis2503/dokuwiki/lib/... · o Programación basada en...

28
DEPARTAMENTO DE SISTEMAS Java Enterprise Edition (JEE)

Transcript of Java Enterprise Edition (JEE) - Profesoresisis2503/dokuwiki/lib/... · o Programación basada en...

DEPARTAMENTO DE SISTEMAS

Java Enterprise Edition (JEE)

DEPARTAMENTO DE SISTEMAS

Agenda

•  Introducción •  Modelo de Aplicación - JEE

DEPARTAMENTO DE SISTEMAS

Introducción

•  Las aplicaciones actuales requieren o  Distribución o  Transaccionalidad o  Portabilidad o  Seguridad

•  Aplicaciones Empresariales o  Desarrolladas más rápido o  Con menos recursos

DEPARTAMENTO DE SISTEMAS

Introducción

•  JEE 5 o  Su objetivo es proveer a los programadores un

conjunto de APIs que ofrecen   Reducción del tiempo de desarrollo   Reducción de la complejidad   Aumento de la velocidad

o  Introduce un modelo simplificado de programación o  Uso de XML y Anotaciones o  Programación basada en POJOs (Plain Old Java

Objects) o  Inyección de dependencias

  Contenedor JEE automáticamente inyecta referencias a otros componentes requeridos

DEPARTAMENTO DE SISTEMAS

Introducción

•  Basado en anotaciones ( @ )

•  Ofrece un nuevo API de persistencia (JPA)

•  Provee una correspondencia objeto/relación para manejar datos relacionales en beans empresariales, componentes web y clientes

DEPARTAMENTO DE SISTEMAS

Introducción

•  Con EJB3 se busca

o  Menos clases e interfaces

o  Inyección de dependencias

  EJBContexto, DataSources, EntityManager

o  No es necesario implementar la interfaz del contenedor

  EJBHomes / EJBObjects

o  No requiere descriptores de instalación

o  EJBs como POJOs

DEPARTAMENTO DE SISTEMAS

Agenda

•  Introducción •  Modelo de Aplicación - JEE

DEPARTAMENTO DE SISTEMAS

Modelo de Aplicación JEE

•  El modelo de Aplicaciones JEE

o  Permite definir aplicaciones con un estilo arquitectural N-Tier

  Escalabilidad

  Accesibilidad

o  El modelo considera dos elementos principales

  Negocio y Presentación

  Servicios del Sistema

DEPARTAMENTO DE SISTEMAS

Modelo de Aplicación JEE

Tomado de: http://java.sun.com/javaee/5/docs/tutorial/doc/

DEPARTAMENTO DE SISTEMAS

Modelo de Aplicación JEE

•  Nivel Cliente o  Clientes Web o  Applets o  Clientes Pesados

•  Nivel de Componentes Web o  Servlets o  JSPs

•  Nivel Componentes de Negocio o  Session o  Entity o  Message

•  Nivel de Sistemas de Información Empresarial

DEPARTAMENTO DE SISTEMAS

Componentes JEE

•  Un componente JEE o  Una unidad de software auto-contenida o  Ensamblada en una aplicación JEE con sus

clases y archivos o  Puede comunicarse con otros componentes

•  La especificación JEE define o  Aplicaciones cliente y applets son componentes

que se ejecutan del lado cliente o  Servlets, JSFs y JSP son componentes web que

se ejecutan en el servidor o  Enterprise JavaBeans (EJBs) son componenes

de negocio que se ejecutan en el servidor

DEPARTAMENTO DE SISTEMAS

Componentes JEE

•  Componentes JEE o  Escritos en Java o  Compilados como cualquier programa

standalone o  Ensamblados en una aplicación JEE o  Se verifica su conformidad con respecto a la

especificación JEE o  Se hace despliegue para entrar en producción o  Son ejecutados y manejados por un contenedor

JEE

DEPARTAMENTO DE SISTEMAS

Componentes JEE

Tomado de: http://java.sun.com/javaee/5/docs/tutorial/doc/

DEPARTAMENTO DE SISTEMAS

Componentes JEE

Tomado de: http://java.sun.com/javaee/5/docs/tutorial/doc/

DEPARTAMENTO DE SISTEMAS

Componentes JEE

•  La comunicación entre cliente y servidor puede ser directa o a través de una JSP

•  Componentes Web o  Servlets o  JSPs o  Java Server Faces

DEPARTAMENTO DE SISTEMAS

Componentes JEE

Tomado de: http://java.sun.com/javaee/5/docs/tutorial/doc/

DEPARTAMENTO DE SISTEMAS

Componentes JEE

Tomado de: http://java.sun.com/javaee/5/docs/tutorial/doc/

DEPARTAMENTO DE SISTEMAS

Componentes JEE

Tomado de: http://java.sun.com/javaee/5/docs/tutorial/doc/

DEPARTAMENTO DE SISTEMAS

Contenedores JEE

•  Los contenedores son la interfaz entre un componente y la funcionalidad de bajo nivel que soporta el componente

•  Antes de ejecutar un componente JEE, este debe ser o  Ensamblado en un módulo JEE o  Desplegado en su contenedor

DEPARTAMENTO DE SISTEMAS

Contenedores JEE

•  Servicios ofrecidos por el contenedor

o  Seguridad

o  Manejo de transacciones

o  Manejo de nombres y directorios (JNDI)

o  Conectividad remota

o  Web Services

DEPARTAMENTO DE SISTEMAS

Contenedores JEE

•  Tipos de Contenedores o  Servidor JEE

  EJB   WEB

o  Contenedor EJB o  Contenedor WEB o  Contenedor de Aplicación Cliente o  Contenedor de Applets

DEPARTAMENTO DE SISTEMAS

Contenedores JEE

Tomado de: http://java.sun.com/javaee/5/docs/tutorial/doc/

DEPARTAMENTO DE SISTEMAS

Ejecución de una aplicación

•  Ensamblar (Packaging) o  Unidades de despligue

  Componentes funcionales   Descriptores XML

o  Enterprise Archive (EAR) •  Desplegar (Deploy)

o  Copiar el EAR en un sitio particular del servidor de aplicaciones

DEPARTAMENTO DE SISTEMAS

Ensamblar (Packing)

•  Enterprise Archive (EAR) o  Un archivo Java Archive (JAR)con extensión .ear

Adaptado de: http://java.sun.com/javaee/5/docs/tutorial/doc/

.war .jar .rar .jar

DEPARTAMENTO DE SISTEMAS

JEE APIs

DEPARTAMENTO DE SISTEMAS

JEE APIs

  EJB   Servlets   JSPs   JSFs   JMS   JTA   Java Mail

  JAX-WS   JAXB   JPA   JAAS   …

DEPARTAMENTO DE SISTEMAS

JEE – Ambientes de Trabajo

•  Laboratorios del Curso o  NetBeans

DEPARTAMENTO DE SISTEMAS

Bibliografía

•  The JavaEE 5 Tutorial http://java.sun.com/javaee/5/docs/tutorial/doc/