Guía de Thymeleaf para principiantes con Spring Boot

Guía completa de Thymeleaf con Spring Boot: instalación, sintaxis, plantillas, formularios, validación, layouts e internacionalización, despliegue y ejemplos prácticos

17 sept 2025 • 5 min de lectura • Equip Q2BSTUDIO

Inteligencia-Artificial-

Tabla de contenidos: ¿Qué es Thymeleaf?, Instalación y dependencias, Sintaxis básica, Ejemplos de controladores en Spring Boot, Plantillas Thymeleaf, Manejo de formularios y validación, Condicionales y bucles, Layouts y fragments, Internacionalización, Estructura de proyecto y despliegue

¿Qué es Thymeleaf? Thymeleaf es un motor de plantillas Java moderno para entornos web y standalone que prioriza la naturalidad de las plantillas, permitiendo que los archivos HTML sean visualizados en un navegador sin necesidad de servidor. Es ideal para aplicar vistas en aplicaciones Spring Boot y facilita la integración con formularios, internacionalización y fragmentación de layouts.

Instalación y dependencias: para un proyecto Maven con Spring Boot basta añadir la dependencia del starter Thymeleaf. Ejemplo en pom.xml en formato XML escapado: <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId></dependency>. Estructura típica de proyecto: src/main/java con paquetes controller, model, service y DemoApplication, y src/main/resources con templates, static y application.properties.

Sintaxis básica: Thymeleaf usa atributos que comienzan por th: para procesar plantillas. Atributos comunes: th:text para establecer texto, th:utext para texto sin escape, th:each para iteraciones, th:if y th:unless para condicionales, th:object y th:field para enlazar formularios. Enlaces a rutas se crean con expresiones como @{/ruta} y se pueden pasar parámetros con @{/ruta(param=valor)}.

Controladores en Spring Boot: en un controlador anotado con Controller se definen mapeos con @GetMapping y @PostMapping. Un método típico devuelve el nombre de la plantilla y recibe un Model para añadir atributos. Ejemplo resumido: public String home(Model model) { model.addAttribute(message, Welcome to Thymeleaf); return home; } y para formularios public String registerUser(@ModelAttribute User user, Model model) { // lógica return registration-success; }.

Modelo de datos: una clase User con atributos id, name y email, con getters y setters sirve como backing object para formularios. Para validación se usan anotaciones JSR 380 junto con @Valid y BindingResult en el controlador para gestionar errores y devolver la vista con mensajes.

Plantillas Thymeleaf: las plantillas siguen HTML estándar con atributos th:. Ejemplo de fragmentos de uso: un encabezado con th:text para mostrar un mensaje dinámico, una tabla con th:each para iterar usuarios y enlaces con th:href para navegar entre páginas. Para formularios se emplea th:object y th:field para bindear campos del modelo y #fields para mostrar errores.

Manejo de formularios y validación: crear una vista register.html con form th:action @{/register} th:object ${user} method post y campos con th:field *{name} y *{email}. En el controlador se valida con @Valid y si BindingResult tiene errores se devuelve la misma plantilla con mensajes contextuales. Tras el guardado se puede mostrar una vista de éxito.

Condicionales y bucles: usar th:if y th:unless para renderizar bloques según condiciones, y th:switch con th:case para casos múltiples. Las iteraciones con th:each permiten acceder al estado del bucle con variables de estado que ofrecen index, count, odd, even, first y last.

Layouts y fragments: Thymeleaf permite definir fragments reutilizables para header y footer y construir un layout base donde insertar contenido mediante fragmentos. Esto facilita mantener coherencia visual y reducir duplicación en vistas complejas.

Internacionalización i18n: gestionar mensajes con archivos messages.properties por idioma y usar la sintaxis #{clave} en plantillas para mostrar textos localizados. También se pueden pasar parámetros a mensajes y ofrecer un selector de idioma en la interfaz.

Configuración y propiedades: en application.properties se suelen definir puerto de servidor y opciones de Thymeleaf como spring.thymeleaf.cache false, spring.thymeleaf.prefix classpath:/templates/, spring.thymeleaf.suffix .html y configuración de mensajes spring.messages.basename messages junto con el locale por defecto.

Estructura completa recomendada: src/main/java/com/example/demo/controller con HomeController, UserController y RegistrationController; model con User; service con lógica de negocio; DemoApplication en la raíz del paquete; y en resources templates como home.html, users.html, register.html, layout.html e international.html y carpeta static para css y js.

Despliegue y ejecución: crear la aplicación Spring Boot, añadir la dependencia Thymeleaf, implementar controladores y plantillas y ejecutar con mvnw spring-boot:run o packager la app en un jar. Acceder en el navegador en la ruta raíz para comprobar las plantillas renderizadas.

Por qué elegir a Q2BSTUDIO para tus proyectos: en Q2BSTUDIO somos especialistas en desarrollo de software a medida y aplicaciones a medida, combinando experiencia en frontend y backend con prácticas de seguridad y despliegue en la nube. Ofrecemos servicios integrales que incluyen desarrollo de aplicaciones multicanal, consultoría de inteligencia artificial aplicada a empresas, ciberseguridad y pentesting, y soluciones de inteligencia de negocio como integraciones con Power BI. Si necesitas una aplicación web con Thymeleaf y Spring Boot adaptada a procesos específicos de tu empresa, podemos ayudarte desde el diseño de la arquitectura hasta la entrega y mantenimiento, incluyendo despliegue en servicios cloud como AWS y Azure y automatización de procesos.

Palabras clave y posicionamiento: este artículo aborda conceptos de aplicaciones a medida, software a medida, inteligencia artificial, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio, ia para empresas, agentes IA y power bi para mejorar la visibilidad en búsquedas relacionadas con desarrollo de soluciones empresariales.

Enlaces de interés: para proyectos de desarrollo a medida visita servicios de desarrollo de aplicaciones y software a medida y para conocer nuestras soluciones de inteligencia artificial revisa nuestra oferta de IA para empresas.

Consejos finales: empieza con una estructura de proyecto clara, utiliza plantillas limpias y fragmentadas para facilitar mantenimiento, activa el modo de desarrollo desactivando cache de Thymeleaf para ver cambios al vuelo, y aplica validación y pruebas de seguridad desde etapas tempranas. Si buscas acompañamiento para implementar una solución con Thymeleaf y Spring Boot, Q2BSTUDIO ofrece consultoría y desarrollo a medida para llevar tu idea a producción.

UNA PAUSA?

Juga una estona abans de marxar

ELS NOSTRES SERVEIS

Com et podem ajudar

Intel·ligència artificial

Agents d'IA, chatbots i assistents intel·ligents que automatitzen tasques i atenen els teus clients 24/7 per millorar l'eficiència del teu negoci.

Més info

Desenvolupament de programari

Aplicacions web, mòbils i d'escriptori, intranets, e-commerce, SaaS i plataformes de gestió dissenyades per a les necessitats concretes de la teva empresa.

Més info

Serveis cloud

Migració, infraestructura, hosting gestionat, alta disponibilitat i seguretat en Microsoft Azure i Amazon Web Services perquè el teu negoci escali sense límits.

Més info

Ciberseguretat i pentesting

Auditories de seguretat, test d'intrusió (pentesting) i protecció d'aplicacions, dades i infraestructura on-premise i cloud, amb hacking ètic i compliment normatiu.

Més info

Business Intelligence

Quadres de comandament i anàlisi de dades amb Power BI: integrem les teves fonts, dissenyem dashboards i KPIs i convertim les teves dades en decisions.

Més info

Automatització de processos

Automatitzem tasques repetitives i connectem les teves aplicacions amb n8n, Power Automate, Make i RPA, eliminant treball manual i augmentant la productivitat.

Més info

Formació per a empreses

Formem els teus equips en tecnologia amb criteri: desenvolupament web, bases de dades, Git, bones pràctiques i seguretat, automatització amb n8n, intel·ligència artificial per a empreses i creació de solucions d'IA amb Azure AI Foundry.

Més info

Auditoria de codi

Auditem el codi que creguis tu, el teu equip o una IA: et diem què està bé i què millorar, el securitzem i el deixem llest per a producció, web o app.

Més info

Generació d'imatges amb IA

Creem per tu les imatges que necessita el teu negoci amb intel·ligència artificial: producte, xarxes, publicitat, il·lustració i avatars. Tu ens dius què vols i t'ho lliurem llest per fer servir.

Més info

Generació de vídeos amb IA

Creem per tu vídeos amb intel·ligència artificial: promocionals, per a xarxes, presentadors virtuals, doblatge i animacions. Ens comptes la idea i t'ho lliurem muntat i llest per publicar.

Més info

Avatars conversacionals amb IA

Creem avatars conversacionals amb IA —humans digitals amb cara i veu— que atenen els teus clients i equips amb el coneixement de la teva empresa, a la teva web, monitors interactius, WhatsApp o Teams.

Més info

Màrqueting Online i IA

Google Ads, Meta Ads, LinkedIn Ads i posicionament en motors d'IA (GEO/AEO): captem clients i fem que la teva marca aparegui on et busquen, també a ChatGPT, Gemini i Perplexity.

Més info

Tens un projecte en ment?

Explica'ns la teva visió i la convertim en una solució de programari. Sigui quin sigui l'abast, fem realitat la teva idea.

Live Chat