Apache Tomcat es un contenedor de servlets desarrollado bajo el proyecto Jakarta en la Apache Software Foundation. Implementa las especificaciones de los servlets y de JavaServer Pages (JSP) de Oracle Corporation. Tomcat funciona como un servidor web que puede ejecutar aplicaciones Java web dinámicas.
Un gestor de dependencias es una herramienta que administra automáticamente las bibliotecas y módulos necesarios en un proyecto de software. En Java, los principales gestores son Maven y Gradle.
Maven es una herramienta de software libre lanzada en 2002 para gestionar proyectos Java. Se basa en archivos XML y sigue la filosofía de estandarización de estructuras de aplicaciones.
JSP es un lenguaje de script del lado del servidor que permite la creación de contenido web dinámico independiente de la plataforma. JSP tiene acceso a toda la familia de APIs de Java, incluyendo JDBC para acceso a bases de datos.
<% código java %>
<%! declaración; %>
<%= expresión %>
<%@ directiva %>
Spring Framework es un framework robusto para el desarrollo de aplicaciones empresariales en Java. Fue creado con la finalidad de estandarizar el trabajo, resolver y agilizar los problemas que aparecen en el desarrollo empresarial.
Spring Boot es una herramienta que permite crear proyectos con Spring Framework eliminando la complejidad de configuraciones e instalación de dependencias, integrando un servidor de pruebas para despliegue en desarrollo.
java --version
Durante esta unidad de aprendizaje, he adquirido conocimientos profundos sobre el desarrollo de aplicaciones empresariales con Java. El aprendizaje más significativo fue comprender cómo Spring Framework revoluciona el desarrollo Java mediante la inversión de control y la inyección de dependencias, simplificando considerablemente la gestión de objetos y dependencias en aplicaciones complejas.
La progresión desde JSP básico hasta APIs REST completas con Spring Boot me permitió entender la evolución de las tecnologías web Java y cómo cada herramienta resuelve problemas específicos del desarrollo empresarial.
Mi proceso de aprendizaje siguió una metodología práctica y progresiva:
Este proceso de aprendizaje me ha enseñado la importancia de la arquitectura en el desarrollo de software empresarial. Inicialmente, la cantidad de configuraciones y conceptos nuevos (IoC, DI, anotaciones, etc.) resultaba abrumadora, pero gradualmente comprendí que cada elemento tiene un propósito específico en la construcción de aplicaciones escalables y mantenibles.
La experiencia me ha llevado a reflexionar sobre cómo aprendo tecnologías complejas: descubrí que necesito combinar teoría con práctica inmediata, y que los errores de configuración, aunque frustrantes inicialmente, son oportunidades valiosas para profundizar en el funcionamiento interno de las herramientas.
Un aspecto crucial de mi aprendizaje fue desarrollar pensamiento sistémico: entender cómo cada componente (desde la base de datos hasta la presentación) interactúa en un ecosistema más amplio. Esto me ha preparado mejor para abordar problemas complejos de arquitectura de software.
Finalmente, este aprendizaje me ha enseñado la importancia de la documentación y las buenas prácticas. Spring Boot, con su enfoque de "convención sobre configuración", demuestra cómo las decisiones arquitectónicas bien pensadas pueden simplificar significativamente el desarrollo sin sacrificar funcionalidad.