JSP (JavaServer Pages)

JSP (JavaServer Pages) es una tecnología del lado del servidor que permite generar contenido web dinámico combinando HTML con código Java, el cual se traduce y compila como un servlet en el servidor.

JSP (JavaServer Pages) es una tecnología de Java para el desarrollo de aplicaciones web dinámicas. Un archivo JSP es, básicamente, una página HTML (u otro formato de texto como XML) que incluye fragmentos de código Java y etiquetas especiales que se ejecutan en el servidor antes de enviar la respuesta al navegador.

Cuando un usuario solicita una URL que apunta a un archivo con extensión .jsp, el servidor de aplicaciones (por ejemplo, Apache Tomcat) traduce esa página JSP en un servlet Java y lo compila. A partir de ese momento, el servlet generado se reutiliza en peticiones posteriores para producir HTML dinámico de forma eficiente.

En JSP se pueden utilizar varios elementos:

  • Scriptlets (<% ... %>): fragmentos de lógica Java incrustados en la página.
  • Expresiones JSP (<%= ... %>): evalúan una expresión Java y muestran su resultado en el HTML.
  • Directivas (<%@ ... %>): configuran la página, por ejemplo importando clases o declarando la página de errores.
  • Bibliotecas de etiquetas (como JSTL): proporcionan etiquetas personalizadas para trabajar con bucles, condiciones, formatos y acceso a datos sin escribir código Java explícito en la vista.

JSP suele utilizarse en arquitecturas MVC, donde la lógica de negocio se concentra en servlets o controladores y clases de servicio, mientras que las JSP se encargan principalmente de la capa de presentación, generando la interfaz HTML que ve el usuario.

Ejemplos

  • Ejemplo:
    Una página login.jsp que muestra un formulario de acceso y, tras recibir el resultado de la autenticación desde un servlet, imprime mensajes de bienvenida o de error de forma dinámica.
  • Ejemplo:
    Un sitio de comercio electrónico que utiliza JSP para generar el listado de productos desde una base de datos, mostrando precios, fotos y descripciones actualizadas sin necesidad de modificar manualmente el HTML.
  • Ejemplo:
    Un panel de administración donde una JSP consume datos proporcionados por un servlet y los presenta en tablas con filtros y paginación, utilizando JSTL para recorrer colecciones de objetos Java.

Preguntas frecuentes

¿En qué se diferencia JSP de un servlet?
Un servlet es una clase Java pura que maneja las peticiones HTTP y contiene principalmente lógica de negocio, mientras que una JSP se escribe como una página HTML con elementos Java incrustados y está orientada a la presentación. Internamente, una JSP se traduce a un servlet, pero su sintaxis es más adecuada para diseñar vistas.
¿Qué servidor necesito para ejecutar páginas JSP?
Para ejecutar JSP se necesita un contenedor de servlets compatible con Java, como Apache Tomcat, Jetty, WildFly o similares. Estos servidores se encargan de traducir la JSP a servlet, compilarla y gestionar su ciclo de vida para responder a las peticiones web.
¿Sigue siendo útil JSP en proyectos modernos?
Aunque hoy existen frameworks más modernos para la capa de vista, JSP sigue utilizándose en aplicaciones Java existentes y en proyectos donde se busca una solución sencilla basada en tecnologías estándar de Java EE/Jakarta EE, especialmente en combinación con servlets y arquitecturas MVC clásicas.

SINÓNIMOS

También conocido como: JavaServer Pages, Páginas Java del lado del servidor

ÚLTIMA REVISIÓN

Actualizado el: 01/11/2025