当前位置: 首页 > news >正文

springboot 下的Thymeleaf 前端渲染引擎

Thymeleaf 是一种现代化的服务器端 Java 模板引擎,常用于 Spring Boot 项目中,支持动态页面渲染和前后端分离。

1. 创建 Spring Boot 项目

  1. 使用 IDE(如 IntelliJ IDEA)创建一个 Spring Boot 项目。

  2. 在项目创建时,选择以下依赖: Spring Web:用于构建 Web 应用。 Thymeleaf:模板引擎支持。

<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency>
</dependencies>

2. 配置 Thymeleaf

在 application.properties 或 application.yml 中添加以下配置:

spring.thymeleaf.cache=false # 禁用缓存(开发时使用)
spring.thymeleaf.prefix=classpath:/templates/ # 模板文件路径
spring.thymeleaf.suffix=.html # 模板文件后缀
spring.thymeleaf.encoding=UTF-8 # 文件编码

3. 编写 Controller

创建一个控制器类,用于处理请求并传递数据到模板:

package com.example.demo.controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
@Controller
public class DemoController {@GetMapping("/hello")public String hello(Model model) {model.addAttribute("message", "欢迎使用 Thymeleaf!");return "hello"; // 对应 templates/hello.html
   }
}

4. 创建 Thymeleaf 模板

在 src/main/resources/templates 目录下创建 hello.html 文件:

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head><title>Thymeleaf 示例</title>
</head>
<body><h1 th:text="${message}">默认消息</h1>
</body>
</html>

5. 启动项目并测试

  1. 启动 Spring Boot 项目。

  2. 在浏览器中访问 http://localhost:8080/hello,页面将显示传递的动态数据。

 

Thymeleaf 

  • 动静分离:Thymeleaf 支持直接打开 HTML 文件查看静态效果,方便前端开发。

  • 扩展性:可自定义方言和标签,满足复杂需求。

  • 性能优化:生产环境建议开启模板缓存(spring.thymeleaf.cache=true)。

 

http://www.jsqmd.com/news/33075/

相关文章:

  • 2025年南昌苹果售后维修点推荐:高性价比维修解决方案排行榜
  • 2025年武汉苹果售后维修点推荐:知名门店列表与避坑方案
  • 2025年泉州苹果售后维修点推荐:主流门店列表与选择方案
  • 利用keil +RASC给瑞萨RA8D1编译烧写软件
  • vxe-table 复制单元格时如何自定义内容,自定义复制的文本内容
  • 我发现很多程序员都不会打日志。。。
  • ThreadLocal与ScopedValue对比讲解
  • openEuler系统安装DDE桌面与openGauss数据库完整指南
  • 2025年抖音关键词排名优化公司推荐:口碑榜单与可验证数据全解析
  • 2025年无纸化会议系统批发厂家权威推荐榜单:无纸化智能会议系统/无纸化会议升降屏/无纸化会议设备源头厂家精选
  • Gitee:中国DevSecOps实践的标杆与未来
  • 2025年抖音排名优化公司推荐:市场报告与主流排行榜单
  • 2025年抖音搜索优化公司推荐:高性价比选择全攻略
  • MyEMS:智能化能源管理的创新实践者
  • 小红书收藏夹里的精美图片/视频,这样保存更清爽
  • 2025年抖音SEO排名推荐:市场报告揭示的头部解决方案
  • 2025年精密精轧管生产厂家权威推荐榜单:不锈钢管精轧管/冷拔管精轧管/精轧焊管源头厂家精选
  • 完整教程:2024年提示工程架构师必看:用户参与研究的最新趋势,提升提示设计效果
  • 2025年11月智能AI客服服务商榜单:Voicefox与四家竞品深度评测
  • 还在担心文件泄露?这个浏览器里的格式转换工具,给了另一种答案
  • 2025年抖音搜索排名优化公司推荐:高性价比选择指南与避坑方案
  • 2025年中国AI生态服务行业TOP5企业推荐:南方网通深度解析
  • 2025年11月智能AI客服服务商评价榜:Voicefox等五强实测数据解析
  • 2025年创致联创迅灵GEO技术支持怎么样?
  • 2025年11月呼叫中心系统品牌评测榜:Voicefox等五强深度对比
  • Qt/C++编写GB28181服务/前后端分离/定义一套交互协议/视频点播/录像回放和控制/警情通知
  • 2025年11月效果图公司推荐榜:权威评测五强排名与横向对比
  • 开源 C++ QT QML 开发(八)自定义控件--圆环 - 实践
  • psql -U PostgreSQL端命令
  • Linux V4L2框架详解:Camera软件架构与驱动达成