Aplicación Todo con Spring Boot MVC y Thymeleaf

Guía paso a paso para crear una aplicación Todo con Spring Boot MVC, Thymeleaf y H2, con seguridad básica y listas de tareas por usuario autenticado.

16 sept 2025 • 3 min de lectura • Equipo Q2BSTUDIO

Inteligencia-Artificial-

En este artículo explico paso a paso cómo construir una aplicación Todo usando Spring Boot MVC y Thymeleaf, con almacenamiento en memoria H2 y seguridad básica con Spring Security. La idea es crear una app sencilla donde cada usuario tiene su propia lista de tareas.

Paso 1 Configuración inicial. Crea un proyecto Spring Boot con Spring Initializr o desde IntelliJ y añade las dependencias principales spring-boot-starter-web para controladores MVC, spring-boot-starter-thymeleaf para plantillas HTML, spring-boot-starter-data-jpa para persistencia, la base de datos H2 para desarrollo y spring-boot-starter-security para autenticación y autorización.

Paso 2 Propiedades de la aplicación. En src/main/resources/application.properties activa la consola H2 y configura la URL jdbc h2 mem todoapp. También puedes activar spring jpa show sql para ver las consultas y spring jpa hibernate ddl auto update para que JPA cree las tablas desde las entidades.

Paso 3 Modelo Todo. Crea una entidad Todo con campos id autogenerado, title, completed por defecto false y username que identifica al propietario de la tarea. El campo username garantiza que cada usuario solo vea sus propios todos.

Paso 4 Repositorio. Define una interfaz TodoRepository que extienda JpaRepository y añade un método personalizado findByUsername para obtener las tareas de un usuario concreto. Con JpaRepository obtienes de forma automática métodos CRUD como save findById y deleteById.

Paso 5 Seguridad. Configura Spring Security con un SecurityFilterChain que requiera autenticación para todas las rutas excepto los recursos estáticos y que use una página de login personalizada en /login. Para un entorno de demo puedes registrar usuarios en memoria con InMemoryUserDetailsManager y usar un PasswordEncoder sencillo solo para pruebas. En producción sustituye por un proveedor seguro y almacenamiento persistente de usuarios.

Paso 6 Controlador. Implementa un controlador TodoController con rutas para listar los todos del usuario autenticado, añadir una nueva tarea asignando el username desde el objeto Authentication, alternar el estado completed y eliminar tareas. Después de cada operación redirige a la lista de todos para que la vista se actualice.

Paso 7 Plantillas Thymeleaf. Crea una plantilla login para el formulario de acceso y una plantilla todos que muestre un formulario para añadir tareas y una tabla con todas las tareas del usuario. Usa enlaces form action apuntando a las rutas del controlador y botones para alternar y borrar. Incorpora estilos con Bootstrap cargando el CSS en la plantilla.

Paso 8 Ejecutar y probar. Ejecuta la app con mvn spring-boot run y abre el navegador en localhost 8080 login. Inicia sesión con las credenciales definidas en memoria y prueba a añadir alternar y borrar tareas. H2 guarda los datos en memoria por lo que se reiniciarán al reiniciar la aplicación.

Resumen del flujo. El usuario accede a la página de login. Spring Security valida las credenciales y redirige a la lista de todos. El controlador consulta el repositorio por username y Thymeleaf renderiza la vista con Bootstrap. H2 facilita el desarrollo y JPA se encarga del mapeo objeto relacional.

Sobre Q2BSTUDIO. En Q2BSTUDIO somos una empresa de desarrollo de software y aplicaciones a medida que ofrece soluciones personalizadas para empresas de todos los tamaños. Nos especializamos en software a medida y aplicaciones a medida, inteligencia artificial aplicada a procesos empresariales, ciberseguridad y servicios cloud. Si buscas desarrollar una aplicación corporativa a medida consulta nuestra página de desarrollo de aplicaciones y software multiplataforma en desarrollo de aplicaciones y software multiplataforma. Para proyectos que requieran modelos de IA, agentes inteligentes o ia para empresas visita nuestra sección de inteligencia artificial.

Palabras clave y servicios. Ofrecemos servicios cloud aws y azure, servicios de inteligencia de negocio y power bi, automatización de procesos, agentes IA y consultoría en ciberseguridad y pentesting para proteger tus aplicaciones. Si necesitas una solución completa que combine software a medida, inteligencia artificial y seguridad, Q2BSTUDIO puede acompañarte desde el diseño hasta la puesta en producción.

Consejos finales. Para un producto listo para producción cambia la base de datos H2 por una base de datos persistente, usa un gestor de usuarios y contraseñas seguro, aplica validación y control de acceso en el backend y añade pruebas automatizadas. Con estas mejoras podrás escalar la aplicación Todo hacia una solución empresarial.

¿UNA PAUSA?

Juega un momento antes de irte

NUESTROS SERVICIOS

Cómo podemos ayudarte

Inteligencia artificial

Agentes de IA, chatbots y asistentes inteligentes que automatizan tareas y atienden a tus clientes 24/7 para mejorar la eficiencia de tu negocio.

Más info

Desarrollo de software

Aplicaciones web, móviles y de escritorio, intranets, e-commerce, SaaS y plataformas de gestión diseñadas para las necesidades concretas de tu empresa.

Más info

Servicios cloud

Migración, infraestructura, hosting gestionado, alta disponibilidad y seguridad en Microsoft Azure y Amazon Web Services para que tu negocio escale sin límites.

Más info

Ciberseguridad y pentesting

Auditorías de seguridad, test de intrusión (pentesting) y protección de aplicaciones, datos e infraestructura on-premise y cloud, con hacking ético y cumplimiento normativo.

Más info

Business Intelligence

Cuadros de mando y análisis de datos con Power BI: integramos tus fuentes, diseñamos dashboards y KPIs y convertimos tus datos en decisiones.

Más info

Automatización de procesos

Automatizamos tareas repetitivas y conectamos tus aplicaciones con n8n, Power Automate, Make y RPA, eliminando trabajo manual y aumentando la productividad.

Más info

Formación para empresas

Formamos a tus equipos en tecnología con criterio: desarrollo web, bases de datos, Git, buenas prácticas y seguridad, automatización con n8n, inteligencia artificial para empresas y creación de soluciones de IA con Azure AI Foundry.

Más info

Auditoría de código

Auditamos el código que creas tú, tu equipo o una IA: te decimos qué está bien y qué mejorar, lo securizamos y lo dejamos listo para producción, web o app.

Más info

Generación de imágenes con IA

Creamos por ti las imágenes que necesita tu negocio con inteligencia artificial: producto, redes, publicidad, ilustración y avatares. Tú nos dices qué quieres y te lo entregamos listo para usar.

Más info

Generación de vídeos con IA

Creamos por ti vídeos con inteligencia artificial: promocionales, para redes, presentadores virtuales, doblaje y animaciones. Nos cuentas la idea y te lo entregamos montado y listo para publicar.

Más info

Avatares conversacionales con IA

Creamos avatares conversacionales con IA —humanos digitales con cara y voz— que atienden a tus clientes y equipos con el conocimiento de tu empresa, en tu web, monitores interactivos, WhatsApp o Teams.

Más info

Marketing Online e IA

Google Ads, Meta Ads, LinkedIn Ads y posicionamiento en motores de IA (GEO/AEO): captamos clientes y hacemos que tu marca aparezca donde te buscan, también en ChatGPT, Gemini y Perplexity.

Más info

¿Tienes un proyecto en mente?

Cuéntanos tu visión y la convertimos en una solución de software. Sea cual sea el alcance, hacemos realidad tu idea.

Live Chat