SlideShare una empresa de Scribd logo
1 de 29
Ing. Aurelio Martín Obando Távara aot@upnorte.edu.pe Lenguaje de programación iiARQUITECTURA JEE Y TOMCAT
Los TemasPrincipales 1 3 2 JEE Tomcat Contenedor Web / Aplicaciones
TEMARIO 1 Arquitectura Java EE y el servidor web Tomcat
2 CONTENIDO Semana 01
Java Enterprise Edition (JEE)
Java Enterprise Edition o Java EE (anteriormente conocido como Java 2 Enterprise Edition o J2EE hasta la versión 1.4), es una plataforma de programación—parte de la plataforma Java—para desarrollar y ejecutar software en Lenguaje de programación Java. Java EE incluye varias especificaciones de API, tales como JDBC, RMI, Java-Mail, JMS, Servicios Web, XML, etc. y define cómo coordinarlos. Java EE también configura algunas especificaciones únicas para Java EE, como: Enterprise JavaBeans, servlets, portlets (siguiendo la especificación de Portlets Java), JavaServerPages y varias tecnologías de servicios web. Algunos de los beneficios añadidos son, por ejemplo, que el servidor de aplicaciones puede manejar transacciones, seguridad, escalabilidad, concurrencia y gestión de los componentes desplegados, significando que los desarrolladores pueden concentrarse más en la lógica de negocio de los componentes en lugar de tareas de mantenimiento de bajo nivel. JEE
- Programación eficiente. Para conseguir productividad es importante que los equipos de desarrollo tengan una forma estándar de construir múltiples aplicaciones en diversas capas (cliente, servidor web, etc.). - Extensibilidad frente a la demanda del negocio. En un contexto de crecimiento de número de usuarios, es preciso la gestión de recursos, como conexiones a bases de datos, transacciones o balanceo de carga. - Integración. Los equipos de ingeniera precisan estándares que favorezcan la integración entre diversas capas de software. - Aplicaciones Empresariales requieren ser 	Desarrolladas más rápido 	Con menos recursos - Las aplicaciones actuales requieren 	Distribución Transaccionalidad 	Portabilidad 	Seguridad RAZONES POR QUE UTILIZAR JEE
MODELO DE APLICACIÓN JEE
Nivel Intermedio MODELO DE APLICACIÓN JEE Como se puede ver, un concepto clave de la arquitectura es el de contenedor. Algunos tipos de contenedores: · Contenedor Web, también denominado contenedor Servlet/JSP, maneja la ejecución de los servlets y páginas JSP.  · Contenedor Enterprise JavaBeans, que gestiona la ejecución de los EJB.
La plataforma JEE incluye APIs para el acceso a sistemas empresariales: · JDBC es el API para accceso a base de datos desde Java. · Java Transaction API (JTA) es el API para manejo de transacciones a través de sistemas heterogéneos. · Java Naming and Directory Interface (JNDI) es el API para acceso a servicios de nombres y directorios. · Java MessageService (JMS) es el API para el envío y recepción de mensajes por medio de sistemas de mensajería empresarial como IBM MQ Series. · JavaMail es el API para envío y recepción de email. · Java Interface DescriptionLanguage (JIDL) es el API para llamar a servicios CORBA. · Java Authentication and Authorization Service (JAAS) es una interfaz que permite a las aplicaciones Java acceder a servicios de control de autenticación y acceso. · Java Architecture for XML Binding (JAXB) es una interfaz que permite a las aplicaciones Java con esquemas XML, muy útil para Web Services. JEE API’s
Tipos de Contenedores Contenedor WEB, también concido como servidor Web o HTTP. Un ejemplo es el servidor Apache. Contenedor de Aplicaciones o contenedor Servlet/JSP. Un ejemplo, Tomcat (que incluye el servicio anterior sobre páginas). Contenedor EJB, que contiene aplicativos Java de interacción con bases de datos o sistemas empresariales. Un ejemplo es Jboss o Glassfish, que contiene a los anteriores (servidor de páginas web y contenedor de aplicaciones web). Servicios ofrecidos por el contenedor EJB Seguridad Manejo de transacciones Manejo de nombres y directorios (JNDI) Conectividad remota Web Services CONTENEDORES JEE
¿Qué ocurre cuando un navegador invoca una aplicación?
CAPAS DE LA ARQUITECTURA PROPUESTA POR JEE
Diversos escenarios de aplicación
Es el escenario canónico, donde aparecen todas las capas, empezando en un navegador HTML/XML. La generación de contenidos dinámicos se realiza normalmente en páginas JSP. La capa EJB nos permite desacoplar el acceso a datos EIS de la interacción final con el usuario que se produce en las páginas HTML y JSP. ESCENARIO DESDE UN NAVEGADOR
Podemos considerar que tenemos como cliente una aplicación stand-alone, que puede ser una aplicación Java o incluso un programa en Visual Basic. La aplicación puede acceder directamente a la capa EJB o a la base de datos del EIS (esto último por medio de JDBC). ESCENARIO DESDE UNA APLICACIÓN
La plataforma JEE no obliga a usar todas las capas en un sistema. Lo esencial es escoger el mecanismo adecuado para el problema. En este sentido, en ocasiones no hay (ni prevemos que haya) la complejidad como para requerir una capa EJB. Se denomina escenario web-centric porque el contenedor web es el que realiza gran parte del trabajo del sistema. ESCENARIO BASADO EN LA WEB (web-centricapplication)
Tomcat
Jakarta-Tomcat es un servidor web que extiende la funcionalidad del mismo. Por sí solo, un servidor web sólo puede mostrar páginas estáticas HTML. Tomcat extiende y mejora esta funcionalidad al permitir ejecutar componentes Java tales como JSP’s, Servlets, etc. Tomcatno soporta Enteprise Java Beans (EJBs). Es básicamente un contenedor de Servlets y JSPs. Ejemplos de otros servidores de aplicaciones que soportan Servlets y JSP’s son los siguientes: · iPlanet · Jetty · JRun · Bluestone · Borland Enterprise Server DEFINICIÓN
Aplicación web: “Una aplicación web es una colección de Servlets, páginas JSP, clases Java, archivos de descripción de la aplicación y documentos estáticos tales como HTML, XHTML, imágenes, etc. “ Estructura de archivos: APLICACIONES WEB EN TOMCAT
PRINCIPALES DIRECTORIOS DE UNA APLICACIÓN WEB
ARCHIVOS IMPORTANTES DE UNA APLICACIÓN WEB
3 Resumen
Nivel Intermedio RESUMEN ,[object Object],[object Object]
Contenedor WEB, también concido como servidor Web o HTTP. Un ejemplo es el servidor Apache.
Contenedor de Aplicaciones o contenedor Servlet/JSP. Un ejemplo, Tomcat (que incluye el servicio anterior sobre páginas).
Contenedor EJB, que contiene aplicativos Java de interacción con bases de datos o sistemas empresariales. Un ejemplo es Jboss o Glassfish, que contiene a los anteriores (servidor de páginas web y contenedor de aplicaciones web).
Tomcat es un servidor web que extiende la funcionalidad del mismo, pero no soporta Enteprise Java Beans (EJB’s).,[object Object],[object Object]
Aquí hallará toda la especificación y ejemplos de la versión actual de JEE.

Más contenido relacionado

La actualidad más candente (20)

Curso Java Avanzado 5 Ejb
Curso Java Avanzado   5 EjbCurso Java Avanzado   5 Ejb
Curso Java Avanzado 5 Ejb
 
Frameworks J2EE
Frameworks J2EEFrameworks J2EE
Frameworks J2EE
 
[ES] Conectividad de java a base de datos(jdbc)
[ES] Conectividad de java a base  de datos(jdbc)[ES] Conectividad de java a base  de datos(jdbc)
[ES] Conectividad de java a base de datos(jdbc)
 
1/9 Curso JEE5, Soa, Web Services, ESB y XML
1/9 Curso JEE5, Soa, Web Services, ESB y XML1/9 Curso JEE5, Soa, Web Services, ESB y XML
1/9 Curso JEE5, Soa, Web Services, ESB y XML
 
Qué es jdbc
Qué es jdbcQué es jdbc
Qué es jdbc
 
Java y Bases de Datos
Java y Bases de DatosJava y Bases de Datos
Java y Bases de Datos
 
Java Web Services - REST
Java Web Services - RESTJava Web Services - REST
Java Web Services - REST
 
Java Web Services - Introduccion
Java Web Services - IntroduccionJava Web Services - Introduccion
Java Web Services - Introduccion
 
Clase 14 intro ej bs
Clase 14  intro ej bsClase 14  intro ej bs
Clase 14 intro ej bs
 
Asp.net conceptos
Asp.net conceptosAsp.net conceptos
Asp.net conceptos
 
Integración de aplicaciones Java
Integración de aplicaciones JavaIntegración de aplicaciones Java
Integración de aplicaciones Java
 
Introducción al desarrollo de aplicaciones web en Java
Introducción al desarrollo de aplicaciones web en JavaIntroducción al desarrollo de aplicaciones web en Java
Introducción al desarrollo de aplicaciones web en Java
 
JDBC
JDBCJDBC
JDBC
 
Bloques
BloquesBloques
Bloques
 
Charla
CharlaCharla
Charla
 
Jdbc
JdbcJdbc
Jdbc
 
Jdbc
JdbcJdbc
Jdbc
 
Presentación1
Presentación1Presentación1
Presentación1
 
Curso Básico de JDBC
Curso Básico de JDBCCurso Básico de JDBC
Curso Básico de JDBC
 
JAVA 2 EE
JAVA 2 EEJAVA 2 EE
JAVA 2 EE
 

Destacado

PROYECTO MODULO CLIENTE SERVIDOR
PROYECTO MODULO CLIENTE SERVIDORPROYECTO MODULO CLIENTE SERVIDOR
PROYECTO MODULO CLIENTE SERVIDORLaddy Mathita
 
Curso Básico de Pl Sql Oracle
Curso Básico de Pl Sql OracleCurso Básico de Pl Sql Oracle
Curso Básico de Pl Sql Oracleluisguil
 
Moving bio-innovations from the laboratory to the market: A comparative study...
Moving bio-innovations from the laboratory to the market: A comparative study...Moving bio-innovations from the laboratory to the market: A comparative study...
Moving bio-innovations from the laboratory to the market: A comparative study...ILRI
 
BLIP-Abschlusstagung
BLIP-AbschlusstagungBLIP-Abschlusstagung
BLIP-AbschlusstagungInfoman AG
 
Music at the BNE: a multifaceted approach. Isabel Bordes Cabrera
Music at the BNE: a multifaceted approach. Isabel Bordes CabreraMusic at the BNE: a multifaceted approach. Isabel Bordes Cabrera
Music at the BNE: a multifaceted approach. Isabel Bordes CabreraBiblioteca Nacional de España
 
Plan de gestion institucional final blog
Plan de gestion institucional final blogPlan de gestion institucional final blog
Plan de gestion institucional final blogdianaapat
 
Published patent and design registration information october 3rd, 2014
Published patent and design registration information   october 3rd, 2014Published patent and design registration information   october 3rd, 2014
Published patent and design registration information october 3rd, 2014InvnTree IP Services Pvt. Ltd.
 
Ideas for Vancouver Secondary Schools - Technology for Learning [Dec2012]
Ideas for Vancouver Secondary Schools - Technology for Learning [Dec2012]Ideas for Vancouver Secondary Schools - Technology for Learning [Dec2012]
Ideas for Vancouver Secondary Schools - Technology for Learning [Dec2012]Brian Kuhn
 
Jose M Lopez. Penteo. IT Spending 2015. Semanainformatica.com 2015
Jose M Lopez. Penteo. IT Spending 2015. Semanainformatica.com 2015Jose M Lopez. Penteo. IT Spending 2015. Semanainformatica.com 2015
Jose M Lopez. Penteo. IT Spending 2015. Semanainformatica.com 2015COIICV
 
Isprsarchives xl-7-w3-897-2015
Isprsarchives xl-7-w3-897-2015Isprsarchives xl-7-w3-897-2015
Isprsarchives xl-7-w3-897-2015bayrmgl
 
nuestro bebe
nuestro bebenuestro bebe
nuestro bebejavicapin
 

Destacado (20)

Curso java y j2 EE
Curso java y j2 EECurso java y j2 EE
Curso java y j2 EE
 
Curso de pl sql básico
Curso de pl sql básicoCurso de pl sql básico
Curso de pl sql básico
 
PROYECTO MODULO CLIENTE SERVIDOR
PROYECTO MODULO CLIENTE SERVIDORPROYECTO MODULO CLIENTE SERVIDOR
PROYECTO MODULO CLIENTE SERVIDOR
 
Inciando con AngularJS y JavaEE 7
Inciando con AngularJS y JavaEE 7Inciando con AngularJS y JavaEE 7
Inciando con AngularJS y JavaEE 7
 
Curso Básico de Pl Sql Oracle
Curso Básico de Pl Sql OracleCurso Básico de Pl Sql Oracle
Curso Básico de Pl Sql Oracle
 
Moving bio-innovations from the laboratory to the market: A comparative study...
Moving bio-innovations from the laboratory to the market: A comparative study...Moving bio-innovations from the laboratory to the market: A comparative study...
Moving bio-innovations from the laboratory to the market: A comparative study...
 
Goku
GokuGoku
Goku
 
BLIP-Abschlusstagung
BLIP-AbschlusstagungBLIP-Abschlusstagung
BLIP-Abschlusstagung
 
Music at the BNE: a multifaceted approach. Isabel Bordes Cabrera
Music at the BNE: a multifaceted approach. Isabel Bordes CabreraMusic at the BNE: a multifaceted approach. Isabel Bordes Cabrera
Music at the BNE: a multifaceted approach. Isabel Bordes Cabrera
 
Plan de gestion institucional final blog
Plan de gestion institucional final blogPlan de gestion institucional final blog
Plan de gestion institucional final blog
 
El internet
El  internetEl  internet
El internet
 
Published patent and design registration information october 3rd, 2014
Published patent and design registration information   october 3rd, 2014Published patent and design registration information   october 3rd, 2014
Published patent and design registration information october 3rd, 2014
 
Ideas for Vancouver Secondary Schools - Technology for Learning [Dec2012]
Ideas for Vancouver Secondary Schools - Technology for Learning [Dec2012]Ideas for Vancouver Secondary Schools - Technology for Learning [Dec2012]
Ideas for Vancouver Secondary Schools - Technology for Learning [Dec2012]
 
Jose M Lopez. Penteo. IT Spending 2015. Semanainformatica.com 2015
Jose M Lopez. Penteo. IT Spending 2015. Semanainformatica.com 2015Jose M Lopez. Penteo. IT Spending 2015. Semanainformatica.com 2015
Jose M Lopez. Penteo. IT Spending 2015. Semanainformatica.com 2015
 
RS MOBILE STAGE presentation
RS MOBILE STAGE presentationRS MOBILE STAGE presentation
RS MOBILE STAGE presentation
 
Lambda, Una Consultoría Diferente
Lambda, Una Consultoría DiferenteLambda, Una Consultoría Diferente
Lambda, Una Consultoría Diferente
 
Isprsarchives xl-7-w3-897-2015
Isprsarchives xl-7-w3-897-2015Isprsarchives xl-7-w3-897-2015
Isprsarchives xl-7-w3-897-2015
 
Expo. jonan
Expo. jonanExpo. jonan
Expo. jonan
 
nuestro bebe
nuestro bebenuestro bebe
nuestro bebe
 
Bretagne at In-cosmetics 2014
Bretagne at In-cosmetics 2014Bretagne at In-cosmetics 2014
Bretagne at In-cosmetics 2014
 

Similar a JEE y Tomcat

Manual 2014 i 04 lenguaje de programación ii (0870)
Manual 2014 i 04 lenguaje de programación ii (0870)Manual 2014 i 04 lenguaje de programación ii (0870)
Manual 2014 i 04 lenguaje de programación ii (0870)Robert Rayco Quiroz
 
01 jee5-componentes
01 jee5-componentes01 jee5-componentes
01 jee5-componentesUTN
 
Arquitectura y diseño de aplicaciones Java EE
Arquitectura y diseño de aplicaciones Java EEArquitectura y diseño de aplicaciones Java EE
Arquitectura y diseño de aplicaciones Java EECarlos Gavidia-Calderon
 
JBoss AS jeap - Curso JBoss JB366 Día 1
JBoss AS jeap - Curso JBoss JB366 Día 1 JBoss AS jeap - Curso JBoss JB366 Día 1
JBoss AS jeap - Curso JBoss JB366 Día 1 César Pajares
 
[ES] Introdución al desarrollo de aplicaciones web en java
[ES] Introdución al desarrollo de aplicaciones  web en java[ES] Introdución al desarrollo de aplicaciones  web en java
[ES] Introdución al desarrollo de aplicaciones web en javaEudris Cabrera
 
Serivodres de aplicacion
Serivodres de aplicacionSerivodres de aplicacion
Serivodres de aplicacionaleexsanroman
 
[ES] Introducción a las Aplicaciones Web con Java
[ES] Introducción a las Aplicaciones Web con Java[ES] Introducción a las Aplicaciones Web con Java
[ES] Introducción a las Aplicaciones Web con JavaEudris Cabrera
 
Plataforma de programación Java
Plataforma de programación JavaPlataforma de programación Java
Plataforma de programación JavaAntonio Contreras
 
introduccion-a-las-aplicaciones-web-y-tecnologia-java.ppt
introduccion-a-las-aplicaciones-web-y-tecnologia-java.pptintroduccion-a-las-aplicaciones-web-y-tecnologia-java.ppt
introduccion-a-las-aplicaciones-web-y-tecnologia-java.pptBYRONMIGUELSUBUYUCPA
 
Manual programacion - java - jsp & xml
Manual   programacion - java - jsp & xmlManual   programacion - java - jsp & xml
Manual programacion - java - jsp & xmlgilhorak
 
J2 Ee Para Seres Humanos Slides
J2 Ee Para Seres Humanos SlidesJ2 Ee Para Seres Humanos Slides
J2 Ee Para Seres Humanos Slidesmundojava
 

Similar a JEE y Tomcat (20)

Manual 2014 i 04 lenguaje de programación ii (0870)
Manual 2014 i 04 lenguaje de programación ii (0870)Manual 2014 i 04 lenguaje de programación ii (0870)
Manual 2014 i 04 lenguaje de programación ii (0870)
 
Introducción a Java y BEA (2008)
Introducción a Java y BEA (2008)Introducción a Java y BEA (2008)
Introducción a Java y BEA (2008)
 
Clase ii intro j2 ee resumen
Clase ii   intro j2 ee resumenClase ii   intro j2 ee resumen
Clase ii intro j2 ee resumen
 
Introducción a JEE
Introducción a JEEIntroducción a JEE
Introducción a JEE
 
01 jee5-componentes
01 jee5-componentes01 jee5-componentes
01 jee5-componentes
 
Arquitectura y diseño de aplicaciones Java EE
Arquitectura y diseño de aplicaciones Java EEArquitectura y diseño de aplicaciones Java EE
Arquitectura y diseño de aplicaciones Java EE
 
JBoss AS jeap - Curso JBoss JB366 Día 1
JBoss AS jeap - Curso JBoss JB366 Día 1 JBoss AS jeap - Curso JBoss JB366 Día 1
JBoss AS jeap - Curso JBoss JB366 Día 1
 
J2 ee
J2 eeJ2 ee
J2 ee
 
[ES] Introdución al desarrollo de aplicaciones web en java
[ES] Introdución al desarrollo de aplicaciones  web en java[ES] Introdución al desarrollo de aplicaciones  web en java
[ES] Introdución al desarrollo de aplicaciones web en java
 
Serivodres de aplicacion
Serivodres de aplicacionSerivodres de aplicacion
Serivodres de aplicacion
 
[ES] Introducción a las Aplicaciones Web con Java
[ES] Introducción a las Aplicaciones Web con Java[ES] Introducción a las Aplicaciones Web con Java
[ES] Introducción a las Aplicaciones Web con Java
 
Plataforma de programación Java
Plataforma de programación JavaPlataforma de programación Java
Plataforma de programación Java
 
introduccion-a-las-aplicaciones-web-y-tecnologia-java.ppt
introduccion-a-las-aplicaciones-web-y-tecnologia-java.pptintroduccion-a-las-aplicaciones-web-y-tecnologia-java.ppt
introduccion-a-las-aplicaciones-web-y-tecnologia-java.ppt
 
Manual programacion - java - jsp & xml
Manual   programacion - java - jsp & xmlManual   programacion - java - jsp & xml
Manual programacion - java - jsp & xml
 
spring
springspring
spring
 
J2ee
J2eeJ2ee
J2ee
 
J2ee
J2eeJ2ee
J2ee
 
JDBC
JDBCJDBC
JDBC
 
Introducción JEE
Introducción JEEIntroducción JEE
Introducción JEE
 
J2 Ee Para Seres Humanos Slides
J2 Ee Para Seres Humanos SlidesJ2 Ee Para Seres Humanos Slides
J2 Ee Para Seres Humanos Slides
 

Más de Aurelio Martín Obando Távara (14)

Configuracion del Entorno
Configuracion del EntornoConfiguracion del Entorno
Configuracion del Entorno
 
Descripción y fuentes de excepciones comunes
Descripción y fuentes de excepciones comunesDescripción y fuentes de excepciones comunes
Descripción y fuentes de excepciones comunes
 
Gestión de Excepciones
Gestión de ExcepcionesGestión de Excepciones
Gestión de Excepciones
 
P1C5 Lenguaje de Expresiones
P1C5 Lenguaje de ExpresionesP1C5 Lenguaje de Expresiones
P1C5 Lenguaje de Expresiones
 
P2C5 Introducción a JEE5 - II
P2C5 Introducción a JEE5 - IIP2C5 Introducción a JEE5 - II
P2C5 Introducción a JEE5 - II
 
P1C4 Criterios De Evaluación - T1
P1C4 Criterios De Evaluación - T1P1C4 Criterios De Evaluación - T1
P1C4 Criterios De Evaluación - T1
 
P1C3 Etiquetas JavaServer Faces al detalle
P1C3 Etiquetas JavaServer Faces al detalleP1C3 Etiquetas JavaServer Faces al detalle
P1C3 Etiquetas JavaServer Faces al detalle
 
Etiquetas JavaServer Faces
Etiquetas JavaServer FacesEtiquetas JavaServer Faces
Etiquetas JavaServer Faces
 
Datatable Y Column
Datatable Y ColumnDatatable Y Column
Datatable Y Column
 
P1C3 Anotaciones
P1C3 AnotacionesP1C3 Anotaciones
P1C3 Anotaciones
 
P2C2 Introducción a JEE5
P2C2 Introducción a JEE5P2C2 Introducción a JEE5
P2C2 Introducción a JEE5
 
P1C2 Navegación y Parámetros
P1C2 Navegación y ParámetrosP1C2 Navegación y Parámetros
P1C2 Navegación y Parámetros
 
P2C1 - Configuración del Entorno
P2C1 - Configuración del EntornoP2C1 - Configuración del Entorno
P2C1 - Configuración del Entorno
 
P1C1 - Java Server Faces 2.0
P1C1 - Java Server Faces 2.0P1C1 - Java Server Faces 2.0
P1C1 - Java Server Faces 2.0
 

Último

CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADauxsoporte
 
texto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticostexto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticosisabeltrejoros
 
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptxPRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptxinformacionasapespu
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdfDemetrio Ccesa Rayme
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arteRaquel Martín Contreras
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Carlos Muñoz
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzprofefilete
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxlclcarmen
 
EXPECTATIVAS vs PERSPECTIVA en la vida.
EXPECTATIVAS vs PERSPECTIVA  en la vida.EXPECTATIVAS vs PERSPECTIVA  en la vida.
EXPECTATIVAS vs PERSPECTIVA en la vida.DaluiMonasterio
 
programa dia de las madres 10 de mayo para evento
programa dia de las madres 10 de mayo  para eventoprograma dia de las madres 10 de mayo  para evento
programa dia de las madres 10 de mayo para eventoDiegoMtsS
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfAngélica Soledad Vega Ramírez
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIACarlos Campaña Montenegro
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxAna Fernandez
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónLourdes Feria
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptxJunkotantik
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADOJosé Luis Palma
 
cortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuacortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuaDANNYISAACCARVAJALGA
 

Último (20)

CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDAD
 
texto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticostexto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticos
 
Sesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdfSesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdf
 
Defendamos la verdad. La defensa es importante.
Defendamos la verdad. La defensa es importante.Defendamos la verdad. La defensa es importante.
Defendamos la verdad. La defensa es importante.
 
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptxPRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdf
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arte
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
 
EXPECTATIVAS vs PERSPECTIVA en la vida.
EXPECTATIVAS vs PERSPECTIVA  en la vida.EXPECTATIVAS vs PERSPECTIVA  en la vida.
EXPECTATIVAS vs PERSPECTIVA en la vida.
 
programa dia de las madres 10 de mayo para evento
programa dia de las madres 10 de mayo  para eventoprograma dia de las madres 10 de mayo  para evento
programa dia de las madres 10 de mayo para evento
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docx
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcción
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptx
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
 
cortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuacortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahua
 

JEE y Tomcat

  • 1. Ing. Aurelio Martín Obando Távara aot@upnorte.edu.pe Lenguaje de programación iiARQUITECTURA JEE Y TOMCAT
  • 2. Los TemasPrincipales 1 3 2 JEE Tomcat Contenedor Web / Aplicaciones
  • 3. TEMARIO 1 Arquitectura Java EE y el servidor web Tomcat
  • 6. Java Enterprise Edition o Java EE (anteriormente conocido como Java 2 Enterprise Edition o J2EE hasta la versión 1.4), es una plataforma de programación—parte de la plataforma Java—para desarrollar y ejecutar software en Lenguaje de programación Java. Java EE incluye varias especificaciones de API, tales como JDBC, RMI, Java-Mail, JMS, Servicios Web, XML, etc. y define cómo coordinarlos. Java EE también configura algunas especificaciones únicas para Java EE, como: Enterprise JavaBeans, servlets, portlets (siguiendo la especificación de Portlets Java), JavaServerPages y varias tecnologías de servicios web. Algunos de los beneficios añadidos son, por ejemplo, que el servidor de aplicaciones puede manejar transacciones, seguridad, escalabilidad, concurrencia y gestión de los componentes desplegados, significando que los desarrolladores pueden concentrarse más en la lógica de negocio de los componentes en lugar de tareas de mantenimiento de bajo nivel. JEE
  • 7. - Programación eficiente. Para conseguir productividad es importante que los equipos de desarrollo tengan una forma estándar de construir múltiples aplicaciones en diversas capas (cliente, servidor web, etc.). - Extensibilidad frente a la demanda del negocio. En un contexto de crecimiento de número de usuarios, es preciso la gestión de recursos, como conexiones a bases de datos, transacciones o balanceo de carga. - Integración. Los equipos de ingeniera precisan estándares que favorezcan la integración entre diversas capas de software. - Aplicaciones Empresariales requieren ser Desarrolladas más rápido Con menos recursos - Las aplicaciones actuales requieren Distribución Transaccionalidad Portabilidad Seguridad RAZONES POR QUE UTILIZAR JEE
  • 9. Nivel Intermedio MODELO DE APLICACIÓN JEE Como se puede ver, un concepto clave de la arquitectura es el de contenedor. Algunos tipos de contenedores: · Contenedor Web, también denominado contenedor Servlet/JSP, maneja la ejecución de los servlets y páginas JSP. · Contenedor Enterprise JavaBeans, que gestiona la ejecución de los EJB.
  • 10. La plataforma JEE incluye APIs para el acceso a sistemas empresariales: · JDBC es el API para accceso a base de datos desde Java. · Java Transaction API (JTA) es el API para manejo de transacciones a través de sistemas heterogéneos. · Java Naming and Directory Interface (JNDI) es el API para acceso a servicios de nombres y directorios. · Java MessageService (JMS) es el API para el envío y recepción de mensajes por medio de sistemas de mensajería empresarial como IBM MQ Series. · JavaMail es el API para envío y recepción de email. · Java Interface DescriptionLanguage (JIDL) es el API para llamar a servicios CORBA. · Java Authentication and Authorization Service (JAAS) es una interfaz que permite a las aplicaciones Java acceder a servicios de control de autenticación y acceso. · Java Architecture for XML Binding (JAXB) es una interfaz que permite a las aplicaciones Java con esquemas XML, muy útil para Web Services. JEE API’s
  • 11. Tipos de Contenedores Contenedor WEB, también concido como servidor Web o HTTP. Un ejemplo es el servidor Apache. Contenedor de Aplicaciones o contenedor Servlet/JSP. Un ejemplo, Tomcat (que incluye el servicio anterior sobre páginas). Contenedor EJB, que contiene aplicativos Java de interacción con bases de datos o sistemas empresariales. Un ejemplo es Jboss o Glassfish, que contiene a los anteriores (servidor de páginas web y contenedor de aplicaciones web). Servicios ofrecidos por el contenedor EJB Seguridad Manejo de transacciones Manejo de nombres y directorios (JNDI) Conectividad remota Web Services CONTENEDORES JEE
  • 12. ¿Qué ocurre cuando un navegador invoca una aplicación?
  • 13. CAPAS DE LA ARQUITECTURA PROPUESTA POR JEE
  • 14. Diversos escenarios de aplicación
  • 15. Es el escenario canónico, donde aparecen todas las capas, empezando en un navegador HTML/XML. La generación de contenidos dinámicos se realiza normalmente en páginas JSP. La capa EJB nos permite desacoplar el acceso a datos EIS de la interacción final con el usuario que se produce en las páginas HTML y JSP. ESCENARIO DESDE UN NAVEGADOR
  • 16. Podemos considerar que tenemos como cliente una aplicación stand-alone, que puede ser una aplicación Java o incluso un programa en Visual Basic. La aplicación puede acceder directamente a la capa EJB o a la base de datos del EIS (esto último por medio de JDBC). ESCENARIO DESDE UNA APLICACIÓN
  • 17. La plataforma JEE no obliga a usar todas las capas en un sistema. Lo esencial es escoger el mecanismo adecuado para el problema. En este sentido, en ocasiones no hay (ni prevemos que haya) la complejidad como para requerir una capa EJB. Se denomina escenario web-centric porque el contenedor web es el que realiza gran parte del trabajo del sistema. ESCENARIO BASADO EN LA WEB (web-centricapplication)
  • 19. Jakarta-Tomcat es un servidor web que extiende la funcionalidad del mismo. Por sí solo, un servidor web sólo puede mostrar páginas estáticas HTML. Tomcat extiende y mejora esta funcionalidad al permitir ejecutar componentes Java tales como JSP’s, Servlets, etc. Tomcatno soporta Enteprise Java Beans (EJBs). Es básicamente un contenedor de Servlets y JSPs. Ejemplos de otros servidores de aplicaciones que soportan Servlets y JSP’s son los siguientes: · iPlanet · Jetty · JRun · Bluestone · Borland Enterprise Server DEFINICIÓN
  • 20. Aplicación web: “Una aplicación web es una colección de Servlets, páginas JSP, clases Java, archivos de descripción de la aplicación y documentos estáticos tales como HTML, XHTML, imágenes, etc. “ Estructura de archivos: APLICACIONES WEB EN TOMCAT
  • 21. PRINCIPALES DIRECTORIOS DE UNA APLICACIÓN WEB
  • 22. ARCHIVOS IMPORTANTES DE UNA APLICACIÓN WEB
  • 24.
  • 25. Contenedor WEB, también concido como servidor Web o HTTP. Un ejemplo es el servidor Apache.
  • 26. Contenedor de Aplicaciones o contenedor Servlet/JSP. Un ejemplo, Tomcat (que incluye el servicio anterior sobre páginas).
  • 27. Contenedor EJB, que contiene aplicativos Java de interacción con bases de datos o sistemas empresariales. Un ejemplo es Jboss o Glassfish, que contiene a los anteriores (servidor de páginas web y contenedor de aplicaciones web).
  • 28.
  • 29. Aquí hallará toda la especificación y ejemplos de la versión actual de JEE.
  • 31. De este documento se obtuvieron algunos conceptos para construir esta presentación.
  • 33. Aquí hallará todo lo referente a Servlets.
  • 35. Repositorio de presentaciones en donde encontrará información relevante no solo al tema de hoy, sino también al curso.
  • 37.
  • 38. Encuentra esta presentación en el AULA VIRTUAL O tambiénpuedesencontrarla en . Saludos!

Notas del editor

  1. lates.
  2. Programación eficiente. Con JEE tenemos una tecnología estándar, un único modelo de aplicaciones, que incluye diversas herramientas; en contraposición al desarrollo tradicional con HTML, JavaScript, CGI, servidor web, etc. que implicaba numerosos modelos para la creación de contenidos dinámicos, con los lógicos inconvenientes para la integración.Extensibilidad frente a la demanda del negocio. Además, los equipos de desarrollo deben aplicar un estándar que les permita abstraerse de la implementación del servidor, con aplicaciones que puedan ejecutarse en múltiples servidores, desde un simple servidor hasta una arquitectura de alta disponibilidad y balanceo de carga entre diversas máquinas.
  3. Los contenedores incluyen descriptores de despliegue (deploymentdescriptors), que son archivos XML que nos sirven para configurar el entorno de ejecución: rutas de acceso a aplicaciones, control de transacciones, parámetros de inicialización, etc.
  4. Sin embargo, conviene empezar por el principio, es decir, el lenguaje básico de interconexión: el protocolo HTTP. Este es un protocolo de aplicación, generalmente implementado sobre TCP/IP. Es un protocolo sin estado basado en solicitudes (request) y respuestas (response), que usa por defecto el puerto 8080:· "Basado en peticiones y respuestas": significa que el cliente (por ejemplo, un navegador) inicia siempre la conexión (por ejemplo, para pedir una página). No hay posibilidad de que el servidor realice una llamada de respuesta al cliente (retrollamada). El servidor ofrece la respueta (la página) y cierra la conexión. En la siguiente petición del cliente, se abre una conexión y el ciclo vuelve e empezar: el servidor devuelve el recurso y cierra conexión.· "Sin estado": el servidor cierra la conexión una vez realizada la respuesta. No se mantienen los datos asociados a la conexión. Más adelante veremos que hay una forma de persistencia de datos asociada a la "sesión“.
  5. La visión de la arquitectura es un esquema lógico, no físico. Cuando hablamos de capas nos referimos sobre todo a servicios diferentes (que pueden estar físicamente dentro de la misma máquina e incluso compartir servidor de aplicaciones y JVM).
  6. Una pregunta muy común es cuándo usar servlets y cuándo usar páginas JSP. La pregunta es lógica, al fin y al cabo ambos mecanismos permiten generar contenidos dinámicos y además las JSP son servlets generados por el servidor de aplicaciones. La norma es que la mayor parte de las interacciones con el usuario se realizarán en las JSP debido a su flexibilidad, ya que integran de forma natural etiquetas HTML, XML, JSF, etc. Los servlets serán la excepción (un ejemplo típico es usar un servlet como controlador: un controlador recibe peticiones o eventos desde el interfaz de cliente y "sabe" el componente que debe invocar).
  7. En este tipo de escenario, la capa web implica tanto lógica de presentación como lógica de negocio. Pero lo deseable es no mezclar todas las cosas, planteando un diseño modular. Para ello, las JSP y servlets no suelen acceder de forma directa a la base de datos, sino que lo hacen por medio de un servicio de acceso a datos.
  8. Se puede trabajar con Tomcat como contenedor de JSPs y Servlets y algún otro servidor de aplicaciones como contenedor de EJBs. A continuación, se listan ejemplos de servidores de aplicaciones que soportan EJBs:- Oracle 9iAS- JBoss (gratuito)- JOnAS (gratuito)- Web Logic- IBM WebSphereTomcat se constituye en uno de los proyectos más interesantes de código abierto (open source) liderado por la Apache Software Foundation y es distribuído junto con el servidor web Apache.Tomcat cumple parcialmente (no soporta EJBs) con los estándares JEE e implementa las especificaciones Servlet 2.3 y JavaServerPages 1.2.