Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

Introducción a JEE

No description
by

Juan Francisco Maldonado

on 21 October 2014

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of Introducción a JEE

JEE
Java Enterprise Edition
Juan Maldonado
@jotamagno
JAVA ENTERPRISE EDITION
Introducción
JAVA Platform
JEE
Java Enterprise Edition
JSE
JME
Java Standard Edition
Java Micro Edition
JAVA ENTERPRISE EDITION
Un poco de historia
2003
2006
2013
2009
2001
1999
J2EE 1.4 (Noviembre 11, 2003)
Java EE 5 (May 11, 2006)
Java EE 6 (Dic 10, 2009)
Profiles
Java EE 7 (Junio 12, 2013)
Java API for JSON Processing
J2EE 1.2 (Diciembre 12, 1999)
J2EE 1.3 (Septiembre 24, 2001)
J2EE Connector Architecture v1.0
JavaBeans Activation Framework (JAF) v1.0
JDBC Standard Extension API 2.0
JNDI 1.2
RMI-IIOP v1.0
Java Servlet v2.2
JavaServer Pages (JSP) v1.1
Enterprise JavaBeans (EJB) v1.1
Java Message Service API (JMS) v1.0
Java Transaction API (JTA) v1.0
Java Authentication and Authorization Service (JAAS)
+ Robusto
API for XML Registries (JAXR) v1.0
Java API for XML-based RPC (JAX-RPC) v1.1
Java API for XML Processing (JAXP) v1.2
Enterprise Edition Management API v1.0
Web Services
Java Management Extensions (JMX) v1.2
Enterprise Edition Deployment API
Deployment
JAVA ENTERPRISE EDITION
¿Qué es?
JEE soporta aplicaciones distribuidas que toma ventajas de las tecnologías existentes y en desarrollo simplificando el proceso a través de un modelo de
aplicaciones basados en
“Conjunto de especificaciones y prácticas coordinadas que juntas permiten soluciones para el desarrollo, despliegue y gestión de aplicaciones multicapa centradas en servidor”
Componentes
Las aplicaciones JEE están compuestas de diferentes componentes.

Un componente JEE es una unidad de software funcional auto-contenido que se ensambla dentro de una aplicación JEE con sus clases de ayuda y ficheros y que se comunica con otros componentes de la aplicación.

La especificación JEE define los siguientes componentes J2EE
JPE
(May 1998)
Contenedores WEB
Contenedores EJB
Java Enterprise Edition
Tipos de contenedores
De la mano de un modelo basado en componentes
esta la noción de contenedor
Un contenedor provee un ambiente estandarizado de
ejecución que provee servicios específicos a
componentes.
Contenedores EJB: Proporcionan los servicios de transacciones y persistencia y accede a las APIS de
servicios y comunicaciones de JEE
Un contenedor web suministra los mismos servicios que el contenedor de JSP así como también una vista federada de las API de la plataforma JEE.
Un contenedor web se suministra incluido en un servidor web o JEE.
+ Apache Tomcat
+Jetty
+ Jonas
+WEBLOGIC
+JBOSS
+APACHE GERONIMO
EJB 3.0
Fácil de hacer deploy de componentes
Anotaciones (Annotations)
API Web services actualizados
API Persistencia
Inyección de Dependencias
Java API for RESTful Web Services (JAX-RS)
EJB Lite
Extensibilidad
Bean Validation
HTML 5
WEBSocket
Streaming API for XML (StAX)
Concurrency Utilities for Java EE
JAVA ENTERPRISE EDITION
Servlets
Servlets
Componentes
Componentes
Un servlet es un objeto java que se ejecuta en un servidor (contenedor JEE ), especialmente diseñado para ofrecer contenido dinámico desde un servidor Web, generalmente HTML.
Programas en Java que se ejecutan en un servidor HTTP (servidor Web)

Actúan como capa intermedia entre:
Petición proveniente de un Navegador Web u otro cliente HTTP
Bases de Datos o Aplicaciones en el servidor HTTP
HTTP
Hypertext Transfer Protocol
Es un protocolo orientado a transacciones y sigue el esquema petición-respuesta entre un cliente y un servidor.
HTTP define 8 métodos (algunas veces referido como "verbos") que indica la acción que desea que se efectúe sobre el recurso identificado.
HEAD
PUT
GET
POST
DELETE
TRACE
OPTIONS
CONNECT
Servlets
Clase Java que implementa un modelo de programación petición-respuesta
Definido en el paquete javax.servlet
Hay subclases específicas para HTTP: paquete javax.servlet.http
Tiene un ciclo de vida concreto controlado por el contenedor en el que
se despliega
Cada servlet se ejecuta como un thread independiente
Componentes WEB
header
body
Ciclo de Vida
Servlets
Lo controla el contenedor en el que se ha desplegado
1. Comprueba si existe una instancia del servlet
• Si no existe carga la clase del servlet

• Crea una instancia del servlet

• Inicializa la instancia del servlet llamando al método init()
3. Si hay que eliminar el servlet, el contenedor llama al método destroy()
del servlet
2. Se invoca al método de servicio, pasándole objetos de tipo request y response

• El servlet usa estos objetos para inspeccionar la petición y generar la respuesta
Initialization
init()
Services
services()
Destroy
destroy()
request
response
Servlet
GenericServlet
HTTPServlet
MiServlet
Ejemplo
Problema ?
Java Server Page
Componentes Web
Fichero con código (X)HTML que incluye scripts codificados en Java
Utiliza etiquetas especializadas (Custom Tags) que amplían la sintaxis HTML
Se compila y se convierte en un servlet
JavaServer Pages (JSP) es una tecnología que ayuda a los desarrolladores de software a crear páginas web dinámicas basadas en HTML, XML entre otros tipos de documentos.
Ejemplo
Patrón MVC
Modelo Vista Controlador
Es un patrón de arquitectura de software que separa los datos y la lógica de negocio de una aplicación, de la interfaz de usuario y el módulo encargado de gestionar los eventos y las comunicaciones.
Implementada por primera vez en Smalltalk en el laboratorio de Xerox-Parc
jsp
Modelo
Es la representación de la información con la cual el sistema opera, por lo tanto gestiona todos los accesos a dicha información
Vista
Presenta el 'modelo' (información y lógica de negocio) en un formato adecuado para interactuar (usualmente la interfaz de usuario) por tanto requiere de dicho 'modelo' la información que debe representar como salida.
Controlador
Responde a eventos (usualmente acciones del usuario) e invoca peticiones al 'modelo' cuando se hace alguna solicitud sobre la información
Frameworks
+Spring MVC
+Struts 2
Apache Wicket
Full transcript