Tu portal de
formación online
United States

Infórmate
Inicio » Servicios » Curso de J2EE » 3 - JavaServer Pages (JSP) y JSTL

Curso de J2EE

3 - JavaServer Pages (JSP) y JSTL



JavaServer Pages

JSP es una tecnología basada en Java empleada para desarrollar, junto con los servlets, aplicaciones web de contenido dinámico estructuradas de modo que separen eficazmente su lógica de presentación, su lógica de control y su lógica de negocios.

Esta separación se basa en el patrón de diseño MVC (Model View Controller o Modelo Vista Controlador). Persigue reducir la complejidad de una aplicación separando sus componentes de un modo coherente en base a una serie de capas, es decir, hacer que cada uno se ocupe de una determinada parte de la aplicación de modo que pueda modificarse o incluso cambiarse por completo una de ellas sin afectar a las otras. La aplicación de este patrón al diseño de aplicaciones web es recomendable ya que favorece su mantenibilidad, escalabilidad y reusabilidad.

Las capas o módulos asociados a este patrón de diseño son:

  • Capa del Modelo: lo forman componentes que contienen código responsable de la lógica de negocios, es decir, código encargado de generar los datos finales de la aplicación y de mantenerlos, si fuera necesario, de forma persistente en BDs. Típicamente son javabeans, clases Java normales o EJBs, que interactúan con el software donde se ubican los datos, es decir, BDs, documentos xml, ficheros de texto, servicios de directorios, etc.
  • Capa de las Vistas: lo forman componentes que contienen código responsable de la lógica de presentación, es decir, código encargado de interaccionar con el cliente tanto a la hora de suministrarle interfaces web para el envío de datos como de mostrar los datos suministrados por el Modelo. Además, interactuan con los componentes de la  capa del Controlador pasándoles datos del cliente, a través de formularios, links, javascript, etc . Típicamente la componen páginas jsps que suelen apoyarse en clases Java y javabeans.
  • Capa del Controlador: lo forman componentes que contienen código responsable de la lógica de control de la aplicación. Suele encargarse de instanciar el Modelo y de asociar la Vista con el Modelo. Se mantiene a la escucha de las diversas acciones que los usuarios pueden realizar en la aplicación y actúa sobre el Modelo en consecuencia. Si la aplicación es sencilla, no es necesario. Típicamente son servlets.

La tecnología JSP permite definir ficheros de extensión jsp que, al igual que los servlets, se ejecutan en un servidor J2EE compatible.

El contenido de un fichero o página jsp se compone de etiquetas html más código Java encerrado entre una serie de etiquetas especiales.

Ejemplo: se creará con JCreator un proyecto vacio de nombre JSPs  (su Location será tomcat_home\webapps\jsp-examples). A este proyecto se irán agregando ficheros jsp teniendo en cuenta que para cada uno de ellos se tendrá como valor de Location, el mismo que para el proyecto.

Hecho esto, para acceder a la página jsp desde el cliente, se tecleará en su barra de direcciones:

http://localhost:8080/jsp-examples/Primera.jsp

Resulta cómodo crear una entrada en Favoritos, que apunte a http://localhost:8080/jsp-examples. Previamente, cambiar el nombre del index.html ubicado en tomcat_home\webapps\jsp-examples, para que no vaya automáticamente a dicha página.

NOTA: el directorio tomcat_home\webapps\jsp-examples es el raíz de una aplicación web desarrollada por el equipo de Tomcat que engloba ejemplos de jsps que no tienen nada que ver entre sí. Nosotros lo utilizaremos para albergar las primeras páginas jsp que desarrollemos. Más adelante, crearemos nuestras propias aplicaciones web y será en sus correspondientes directorios raíz donde ubiquemos las jsps de cada una de ellas.

Para acceder al código completo de Primera.jsp, ir a  menú Ver/Código fuente, una vez pulsado el enlace de abajo

Código fuente

De aquí en adelante y a largo de todo el tema, todas las jsps se guardarán en tomcat_home\webapps\jsp-examples, formando parte del proyecto JSPs creado anteriormente con JCreator.

¿Cómo responde el servidor a la petición de la jsp?

Depende de si se la invoca pasándole parámetros o no.

  • Si el cliente accede a la jsp mediante http://localhost:8080/jsp-examples/Primera.jsp,  no se le pasa ningun parámetro y la respuesta será una página html con el saludo textual "HOLA mundo, cómo te va la vida?", una línea de separación horizontal y el texto "Copyright por Jesús Fernández"

  • Si se accede mediante http://localhost:8080/jsp-examples/Primera.jsp?nombre=Jesus, se le está pasando un parámetro y la respuesta sería otra página html con el saludo textual "HOLA Jesus, cómo te va la vida?", la misma línea de separación horizontal y el mismo mensaje de Copyright. Si se modifica el nombre de Jesus por otro cualquiera, la respuesta html sería el saludo "HOLA nombreIntroducido".



Si desea obtener un acceso sin restricciones a los contenidos del curso de J2EE y disfrutar de todas las herramientas del aula virtual (Videos explicativos streaming, acceso a los foros, chat, ejercicios resueltos, la ayuda del tutor, audioconferencia, estudio de grabación, test y actividades de autoevaluación, etc...) puede inscribirse completamente gratis y comenzar a realizar de forma inmediata el curso.
aaa