SlideShare uma empresa Scribd logo
1 de 25
Baixar para ler offline
Let's Rock Java
Fundamentos de Java Enterprise Edition
con JDeveloper
Eudris Cabrera Rodriguez
Ingeniero Telemático
Senior Software Developer
Skype:eudriscabrera
LinkedIn:http://www.linkedin.com/in/eudriscabrera
Noviembre 2011, Santiago de los Caballeros, R. D.
Objetivos
Entender los conceptos básicos de la
programación web usando tecnología Java.
Agenda
○ Introducción al desarrollo de aplicaciones web en Java.
■ Servlet
■ Java Server Pages (JSP)
Java Servlet
Los servlets, son objetos que corren dentro del contexto de un
contenedor de servlets (ej: Tomcat) y extienden su funcionalidad.
La palabra servlet deriva de otra anterior, applet, que se refería a
pequeños programas que se ejecutan en el contexto de un
navegador web. Por contraposición, un servlet es un programa que
se ejecuta en un servidor.
El uso más común de los servlets es generar páginas web de forma
dinámica a partir de los parámetros de la petición que envíe el
navegador web.
Aspectos técnicos
Un servlet es un objeto que se ejecuta en un servidor o contenedor
JEE, especialmente diseñado para ofrecer contenido dinámico
desde un servidor web, generalmente HTML.
Otras opciones que permiten generar contenido dinámico son los
lenguajes ASP, PHP, JSP (un caso especial de servlet), Ruby y
Python. Forman parte de JEE (Java Enterprise Edition), que es una
ampliación de JSE (Java Standard Edition).
Un servlet implementa la interfaz javax.servlet.Servlet o hereda
alguna de las clases más convenientes para un protocolo específico
(ej: javax.servlet.HttpServlet). Al implementar esta interfaz el
servlet es capaz de interpretar los objetos de tipo
HttpServletRequest y HttpServletResponse quienes contienen la
información de la página que invocó al servlet.
Aspectos técnicos
Entre el servidor de aplicaciones (o web content) y el servlet existe
un contrato que determina cómo han de interactuar. La
especificación de éste se encuentra en los JSR (Java Specification
Requests) del JCP (Java Community Process).
Ciclo de vida
El ciclo de vida de un Servlet se divide en los siguientes puntos:
a. El cliente solicita una petición a un servidor vía URL.
b. El servidor recibe la petición.
i. Si es la primera, se utiliza el motor de Servlets para
cargarlo y se llama al método init().
ii. Si ya está iniciado, cualquier petición se convierte
en un nuevo hilo. Un Servlet puede manejar múltiples
peticiones de clientes.
c. Se llama al método service() para procesar la petición
devolviendo el resultado al cliente.
d. Cuando se apaga el motor de un Servlet se llama al método
destroy(), que lo destruye y libera los recursos abiertos.
Clases y objetos necesarios
Podemos crear un Servlet haciendo uso del paquete javax.
servlet.
Interface HttpServletRequest
Interface HttpServletResponse
Beneficios de utilizar Servlets en lugar de CGI
a. Son más eficientes y utilizan menos recursos. CGI utiliza un
nuevo proceso por cada petición. En cambio en los Servlets
sólo existe una copia cargada en la máquina virtual y por
cada petición se inicia un hilo, lo cual reduce el uso de
memoria del servidor y el tiempo de respuesta.
b. Tienen persistencia, por lo que siguen "vivos" una vez
terminada la petición.
DEMO I
a. Configurar entorno de trabajo para poder desplegar
archivos web.
b. Ejemplo básico de Servlet.
Descriptor de despliegue
El descriptor de despliegue es un archivo que se localiza en el
directorio WEB-INF y se llama web.xml. En él es donde se
controla el comportamiento de los Servlet y páginas JSP.
Explicación del descriptor de despliegue del ejemplo realizado
Servlet 3.0
Es una actualización a la versión anterior Servlet 2.5, sus
principales funcionalidades son:
● Soporte para transacciones asíncrona.
● Facilidad de configuración.
● Mejoras en el API.
● Facilidad para ser integrada con otras tecnologías
(Pluggability).
DEMO II
a. Otros ejemplos de Servlet
JavaServer Pages
JavaServer Pages (JSP) es una tecnología Java que permite generar
contenido dinámico para web, en forma de documentos HTML,
XML o de otro tipo.
Las JSP's permiten la utilización de código Java mediante scripts.
Además, es posible utilizar algunas acciones JSP predefinidas
mediante etiquetas. Estas etiquetas pueden ser enriquecidas
mediante la utilización de Bibliotecas de Etiquetas (TagLibs o Tag
Libraries) externas e incluso personalizadas.
JavaServer Pages
Arquitectura
JSP puede considerarse como una manera alternativa, y simplificada, de
construir servlets. Es por ello que una página JSP puede hacer todo lo
que un servlet puede hacer, y viceversa. Cada versión de la
especificación de JSP está fuertemente vinculada a una versión en
particular de la especificación de servlets.
El funcionamiento general de la tecnología JSP es que el Servidor de
Aplicaciones interpreta el código contenido en la página JSP para
construir el código Java del servlet a generar. Este servlet será el que
genere el documento (típicamente HTML) que se presentará en la
pantalla del Navegador del usuario.
JSP -> Servidor Aplicaciones (Servlets) -> Cliente (Navegador)
JavaServer Pages
Arquitectura
Es posible enriquecer el lenguaje de etiquetas utilizado por
JSP. Para ello debemos extender la capa de alto nivel JSP
mediante la implementación de Bibliotecas de Etiquetas
(Tags Libraries). Un ejemplo de estas bibliotecas son las
proporcionadas por Sun bajo la denominación de JSTL o las
distribuidas por Apache junto con el Framework de Struts.
TagLibs -> JSP -> Servidor Aplicaciones (Servlets) ->
Cliente (Navegador)
JavaServer Pages
El rendimiento de una página JSP es el mismo que tendría el
servlet equivalente, ya que el código es compilado como
cualquier otra clase Java. A su vez, la máquina virtual
compila dinámicamente el código de máquina de las partes
de la aplicación que lo requieran.
Esto hace que JSP tenga un buen desempeño y sea más
eficiente que otras tecnologías web que ejecutan el código
de una manera puramente interpretada.
JavaServer Pages
Ventajas:
La principal ventaja de JSP frente a otros lenguajes es que el
lenguaje Java es un lenguaje de propósito general que
excede el mundo web y que es apto para crear clases que
manejan lógica de negocio y acceso a datos de una manera
prolija.
Esto permite separar en niveles las aplicaciones web,
dejando la parte encargada de generar el documento HTML
en el archivo JSP.
JavaServer Pages
Ventajas:
JSP hereda la portabilidad de Java, y es posible ejecutar las aplicaciones
en múltiples plataformas sin cambios. Es común incluso que los
desarrolladores trabajen en una plataforma y que la aplicación termine
siendo ejecutada en otra.
Los servlets y Java Server Pages (JSPs) son dos métodos de creación
de páginas web dinámicas en servidor usando el lenguaje Java. En ese
sentido son similares a otros métodos o lenguajes tales como el PHP,
ASP o los CGIs, programas que generan páginas web en el servidor. Sin
embargo, se diferencian de ellos en otras cosas.
JavaServer Pages
Ventajas:
Para empezar, los JSPs y servlets se ejecutan en una máquina virtual
Java, lo cual permite que, en principio, se puedan usar en cualquier tipo
de ordenador, siempre que exista una máquina virtual Java para él.
Cada servlet (o JSP, a partir de ahora lo usaremos de forma indistinta) se
ejecuta en su propia hebra, es decir, en su propio contexto; pero no se
comienza a ejecutar cada vez que recibe una petición, sino que persiste
de una petición a la siguiente, de forma que no se pierde tiempo en
invocarlo (cargar programa + intérprete).
JavaServer Pages
Ventajas
Su persistencia le permite también hacer una serie de cosas de forma
más eficiente: conexión a bases de datos y manejo de sesiones, por
ejemplo.
Las JSPs son en realidad una forma alternativa de crear servlets ya que
el código JSP se traduce a código de servlet Java la primera vez que se
le invoca y en adelante es el código del nuevo servlet el que se ejecuta
produciendo como salida el código HTML que compone la página web de
respuesta.
JavaServer Pages
Arquitectura
DEMO III
● Primeros pasos con JSP
● Conociendo etiquetas
● Taglibs
PREGUNTAS ?
WE ROCK JAVA !!!

Mais conteúdo relacionado

Mais procurados

Mais procurados (20)

Curso Java Avanzado 1 IntroduccióN Al Desarrollo Web
Curso Java Avanzado   1 IntroduccióN Al Desarrollo WebCurso Java Avanzado   1 IntroduccióN Al Desarrollo Web
Curso Java Avanzado 1 IntroduccióN Al Desarrollo Web
 
JSP
JSPJSP
JSP
 
Curso Java Avanzado 3 4 Js Ps Con Java Beans
Curso Java Avanzado   3 4 Js Ps Con Java BeansCurso Java Avanzado   3 4 Js Ps Con Java Beans
Curso Java Avanzado 3 4 Js Ps Con Java Beans
 
2. Java Servlets (J2EE) - Curso 2005-2006
2. Java Servlets (J2EE) - Curso 2005-20062. Java Servlets (J2EE) - Curso 2005-2006
2. Java Servlets (J2EE) - Curso 2005-2006
 
Herramientas de Desarrollo de Sistemas
Herramientas de Desarrollo de SistemasHerramientas de Desarrollo de Sistemas
Herramientas de Desarrollo de Sistemas
 
Resumen jee
Resumen jeeResumen jee
Resumen jee
 
Servlets exposicion
Servlets exposicionServlets exposicion
Servlets exposicion
 
Charla
CharlaCharla
Charla
 
JSP
JSPJSP
JSP
 
Introduccion java ser
Introduccion java serIntroduccion java ser
Introduccion java ser
 
Plataforma de programación Java
Plataforma de programación JavaPlataforma de programación Java
Plataforma de programación Java
 
Servlets y jsp
Servlets y jspServlets y jsp
Servlets y jsp
 
Capacitacion Kumbia PHP Framework
Capacitacion Kumbia PHP FrameworkCapacitacion Kumbia PHP Framework
Capacitacion Kumbia PHP Framework
 
Breve introducción a Apache Ant
Breve introducción a Apache AntBreve introducción a Apache Ant
Breve introducción a Apache Ant
 
Curso Jsp
Curso JspCurso Jsp
Curso Jsp
 
Taller de kumbiaPHP Mexico ITSJR
Taller de kumbiaPHP Mexico ITSJRTaller de kumbiaPHP Mexico ITSJR
Taller de kumbiaPHP Mexico ITSJR
 
Programacion web java
Programacion web javaProgramacion web java
Programacion web java
 
Java servlet
Java servletJava servlet
Java servlet
 
Kumbia php
Kumbia phpKumbia php
Kumbia php
 
Estructura de Directorio de KumbiaPHP Framework versión 1.0 Spirit
Estructura de Directorio de KumbiaPHP Framework versión 1.0 SpiritEstructura de Directorio de KumbiaPHP Framework versión 1.0 Spirit
Estructura de Directorio de KumbiaPHP Framework versión 1.0 Spirit
 

Semelhante a [ES] Introdución al desarrollo de aplicaciones web en java

Programación en Internet
Programación en InternetProgramación en Internet
Programación en InternetFernando Solis
 
[ES] Fundamentos de Java Enterprise Edition
[ES] Fundamentos de Java Enterprise Edition [ES] Fundamentos de Java Enterprise Edition
[ES] Fundamentos de Java Enterprise Edition Eudris Cabrera
 
Serlets y jsp prev
Serlets y jsp prevSerlets y jsp prev
Serlets y jsp prevjtk1
 
Serlets y jsp pre
Serlets y jsp preSerlets y jsp pre
Serlets y jsp prejtk1
 
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
 
Introducción a Tomcat
Introducción a TomcatIntroducción a Tomcat
Introducción a TomcatIker Canarias
 
Aplicaciones web
Aplicaciones webAplicaciones web
Aplicaciones webFelipe
 
Programacion Web 2o dept
Programacion Web 2o deptProgramacion Web 2o dept
Programacion Web 2o deptLeonardo Moreno
 
Aprendiendo a Programas en 4 horas JavaScript
Aprendiendo a Programas en 4 horas JavaScriptAprendiendo a Programas en 4 horas JavaScript
Aprendiendo a Programas en 4 horas JavaScriptKarsarmi
 

Semelhante a [ES] Introdución al desarrollo de aplicaciones web en java (20)

Programación en Internet
Programación en InternetProgramación en Internet
Programación en Internet
 
20001215 Programación de Servlets y WML
20001215   Programación de Servlets y WML20001215   Programación de Servlets y WML
20001215 Programación de Servlets y WML
 
JSP
JSP JSP
JSP
 
[ES] Fundamentos de Java Enterprise Edition
[ES] Fundamentos de Java Enterprise Edition [ES] Fundamentos de Java Enterprise Edition
[ES] Fundamentos de Java Enterprise Edition
 
Jsp
JspJsp
Jsp
 
Eclipse
EclipseEclipse
Eclipse
 
Java Web - Introduccion
Java Web - IntroduccionJava Web - Introduccion
Java Web - Introduccion
 
SERVLET BASICS
SERVLET BASICSSERVLET BASICS
SERVLET BASICS
 
Java Web - Servlet
Java Web - ServletJava Web - Servlet
Java Web - Servlet
 
Jsp
JspJsp
Jsp
 
Serlets y jsp prev
Serlets y jsp prevSerlets y jsp prev
Serlets y jsp prev
 
Serlets y jsp pre
Serlets y jsp preSerlets y jsp pre
Serlets y jsp pre
 
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 Tomcat
Introducción a TomcatIntroducción a Tomcat
Introducción a Tomcat
 
Aplicaciones web
Aplicaciones webAplicaciones web
Aplicaciones web
 
JSP
JSPJSP
JSP
 
Programacion Web 2o dept
Programacion Web 2o deptProgramacion Web 2o dept
Programacion Web 2o dept
 
Java Scripts
Java ScriptsJava Scripts
Java Scripts
 
Aprendiendo a Programas en 4 horas JavaScript
Aprendiendo a Programas en 4 horas JavaScriptAprendiendo a Programas en 4 horas JavaScript
Aprendiendo a Programas en 4 horas JavaScript
 
Prg3 3x02
Prg3 3x02Prg3 3x02
Prg3 3x02
 

Último

guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfJulian Lamprea
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 

Último (10)

guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 

[ES] Introdución al desarrollo de aplicaciones web en java

  • 1. Let's Rock Java Fundamentos de Java Enterprise Edition con JDeveloper Eudris Cabrera Rodriguez Ingeniero Telemático Senior Software Developer Skype:eudriscabrera LinkedIn:http://www.linkedin.com/in/eudriscabrera Noviembre 2011, Santiago de los Caballeros, R. D.
  • 2. Objetivos Entender los conceptos básicos de la programación web usando tecnología Java.
  • 3. Agenda ○ Introducción al desarrollo de aplicaciones web en Java. ■ Servlet ■ Java Server Pages (JSP)
  • 4. Java Servlet Los servlets, son objetos que corren dentro del contexto de un contenedor de servlets (ej: Tomcat) y extienden su funcionalidad. La palabra servlet deriva de otra anterior, applet, que se refería a pequeños programas que se ejecutan en el contexto de un navegador web. Por contraposición, un servlet es un programa que se ejecuta en un servidor. El uso más común de los servlets es generar páginas web de forma dinámica a partir de los parámetros de la petición que envíe el navegador web.
  • 5. Aspectos técnicos Un servlet es un objeto que se ejecuta en un servidor o contenedor JEE, especialmente diseñado para ofrecer contenido dinámico desde un servidor web, generalmente HTML. Otras opciones que permiten generar contenido dinámico son los lenguajes ASP, PHP, JSP (un caso especial de servlet), Ruby y Python. Forman parte de JEE (Java Enterprise Edition), que es una ampliación de JSE (Java Standard Edition). Un servlet implementa la interfaz javax.servlet.Servlet o hereda alguna de las clases más convenientes para un protocolo específico (ej: javax.servlet.HttpServlet). Al implementar esta interfaz el servlet es capaz de interpretar los objetos de tipo HttpServletRequest y HttpServletResponse quienes contienen la información de la página que invocó al servlet.
  • 6. Aspectos técnicos Entre el servidor de aplicaciones (o web content) y el servlet existe un contrato que determina cómo han de interactuar. La especificación de éste se encuentra en los JSR (Java Specification Requests) del JCP (Java Community Process).
  • 7. Ciclo de vida El ciclo de vida de un Servlet se divide en los siguientes puntos: a. El cliente solicita una petición a un servidor vía URL. b. El servidor recibe la petición. i. Si es la primera, se utiliza el motor de Servlets para cargarlo y se llama al método init(). ii. Si ya está iniciado, cualquier petición se convierte en un nuevo hilo. Un Servlet puede manejar múltiples peticiones de clientes. c. Se llama al método service() para procesar la petición devolviendo el resultado al cliente. d. Cuando se apaga el motor de un Servlet se llama al método destroy(), que lo destruye y libera los recursos abiertos.
  • 8. Clases y objetos necesarios Podemos crear un Servlet haciendo uso del paquete javax. servlet. Interface HttpServletRequest Interface HttpServletResponse
  • 9. Beneficios de utilizar Servlets en lugar de CGI a. Son más eficientes y utilizan menos recursos. CGI utiliza un nuevo proceso por cada petición. En cambio en los Servlets sólo existe una copia cargada en la máquina virtual y por cada petición se inicia un hilo, lo cual reduce el uso de memoria del servidor y el tiempo de respuesta. b. Tienen persistencia, por lo que siguen "vivos" una vez terminada la petición.
  • 10. DEMO I a. Configurar entorno de trabajo para poder desplegar archivos web. b. Ejemplo básico de Servlet.
  • 11. Descriptor de despliegue El descriptor de despliegue es un archivo que se localiza en el directorio WEB-INF y se llama web.xml. En él es donde se controla el comportamiento de los Servlet y páginas JSP. Explicación del descriptor de despliegue del ejemplo realizado
  • 12. Servlet 3.0 Es una actualización a la versión anterior Servlet 2.5, sus principales funcionalidades son: ● Soporte para transacciones asíncrona. ● Facilidad de configuración. ● Mejoras en el API. ● Facilidad para ser integrada con otras tecnologías (Pluggability).
  • 13. DEMO II a. Otros ejemplos de Servlet
  • 14. JavaServer Pages JavaServer Pages (JSP) es una tecnología Java que permite generar contenido dinámico para web, en forma de documentos HTML, XML o de otro tipo. Las JSP's permiten la utilización de código Java mediante scripts. Además, es posible utilizar algunas acciones JSP predefinidas mediante etiquetas. Estas etiquetas pueden ser enriquecidas mediante la utilización de Bibliotecas de Etiquetas (TagLibs o Tag Libraries) externas e incluso personalizadas.
  • 15. JavaServer Pages Arquitectura JSP puede considerarse como una manera alternativa, y simplificada, de construir servlets. Es por ello que una página JSP puede hacer todo lo que un servlet puede hacer, y viceversa. Cada versión de la especificación de JSP está fuertemente vinculada a una versión en particular de la especificación de servlets. El funcionamiento general de la tecnología JSP es que el Servidor de Aplicaciones interpreta el código contenido en la página JSP para construir el código Java del servlet a generar. Este servlet será el que genere el documento (típicamente HTML) que se presentará en la pantalla del Navegador del usuario. JSP -> Servidor Aplicaciones (Servlets) -> Cliente (Navegador)
  • 16. JavaServer Pages Arquitectura Es posible enriquecer el lenguaje de etiquetas utilizado por JSP. Para ello debemos extender la capa de alto nivel JSP mediante la implementación de Bibliotecas de Etiquetas (Tags Libraries). Un ejemplo de estas bibliotecas son las proporcionadas por Sun bajo la denominación de JSTL o las distribuidas por Apache junto con el Framework de Struts. TagLibs -> JSP -> Servidor Aplicaciones (Servlets) -> Cliente (Navegador)
  • 17. JavaServer Pages El rendimiento de una página JSP es el mismo que tendría el servlet equivalente, ya que el código es compilado como cualquier otra clase Java. A su vez, la máquina virtual compila dinámicamente el código de máquina de las partes de la aplicación que lo requieran. Esto hace que JSP tenga un buen desempeño y sea más eficiente que otras tecnologías web que ejecutan el código de una manera puramente interpretada.
  • 18. JavaServer Pages Ventajas: La principal ventaja de JSP frente a otros lenguajes es que el lenguaje Java es un lenguaje de propósito general que excede el mundo web y que es apto para crear clases que manejan lógica de negocio y acceso a datos de una manera prolija. Esto permite separar en niveles las aplicaciones web, dejando la parte encargada de generar el documento HTML en el archivo JSP.
  • 19. JavaServer Pages Ventajas: JSP hereda la portabilidad de Java, y es posible ejecutar las aplicaciones en múltiples plataformas sin cambios. Es común incluso que los desarrolladores trabajen en una plataforma y que la aplicación termine siendo ejecutada en otra. Los servlets y Java Server Pages (JSPs) son dos métodos de creación de páginas web dinámicas en servidor usando el lenguaje Java. En ese sentido son similares a otros métodos o lenguajes tales como el PHP, ASP o los CGIs, programas que generan páginas web en el servidor. Sin embargo, se diferencian de ellos en otras cosas.
  • 20. JavaServer Pages Ventajas: Para empezar, los JSPs y servlets se ejecutan en una máquina virtual Java, lo cual permite que, en principio, se puedan usar en cualquier tipo de ordenador, siempre que exista una máquina virtual Java para él. Cada servlet (o JSP, a partir de ahora lo usaremos de forma indistinta) se ejecuta en su propia hebra, es decir, en su propio contexto; pero no se comienza a ejecutar cada vez que recibe una petición, sino que persiste de una petición a la siguiente, de forma que no se pierde tiempo en invocarlo (cargar programa + intérprete).
  • 21. JavaServer Pages Ventajas Su persistencia le permite también hacer una serie de cosas de forma más eficiente: conexión a bases de datos y manejo de sesiones, por ejemplo. Las JSPs son en realidad una forma alternativa de crear servlets ya que el código JSP se traduce a código de servlet Java la primera vez que se le invoca y en adelante es el código del nuevo servlet el que se ejecuta produciendo como salida el código HTML que compone la página web de respuesta.
  • 23. DEMO III ● Primeros pasos con JSP ● Conociendo etiquetas ● Taglibs