SpringBoot开发——结合Thymeleaf模板整合HTML

server/2024/12/22 0:42:41/

文章目录

  • 一、 Thymeleaf介绍
  • 二、Springboot整合thymeleaf模板
    • 1、实现步骤
      • 1)创建一个Springboot项目
      • 2) 创建application.yml文件
      • 3)创建HTML文件
      • 4)编写controller文件
      • 5)启动Spring Boot
    • 2、Thymeleaf常用语法
      • 赋值、拼接
      • 条件判断: if/unless
      • 循环
      • URL
      • 三元运算
      • switch
      • 基本对象
      • 内嵌对象

Thymeleaf_2">一、 Thymeleaf介绍

Thymeleaf是一个XML/XHTML/HTML5模板引擎,可用于Web与非Web环境中的应用开发。它是一个开源的Java库,基于Apache License 2.0许可。

Thymeleaf提供了一个用于整合Spring MVC的可选模块,在应用开发中,你可以使用Thymeleaf来完全代替JSP或其他模板引擎,如Velocity、FreeMarker等。Thymeleaf的主要目标在于提供一种可被浏览器正确显示的、格式良好的模板创建方式,因此也可以用作静态建模。你可以使用它创建经过验证的XML与HTML模板。开发者只需将标签属性添加到模板中,接下来这些标签属性就会在DOM(文档对象模型)上执行预先制定好的逻辑。

更多介绍详见:Tutorial: Using Thymeleaf

二、Springboot整合thymeleaf模板

Spring Boot可以结合Thymeleaf模板来整合HTML,使用原生的HTML作为视图。

1、实现步骤

1)创建一个Springboot项目

在这里插入图片描述
选择依赖:“Spring Web” 和“Thymeleaf
在这里插入图片描述
项目创建后,目录结构如下:
在这里插入图片描述

2) 创建application.yml文件

删除文件application.properties,建文件application.yml,配置内容如下:

spring:thymeleaf:prefix: classpath:/templates/suffix: .html

HTML_30">3)创建HTML文件

在templates目录下,建文件index.html
修改后如下:

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head><meta charset="UTF-8"><title>templates</title>
</head>
<body>
<p th:text="${hello}"></p>
</body>
</html>

4)编写controller文件

创建包com.demo.thymeleaf.controller,在com.demo.thymeleaf.controller下创建controller类HelloController,内容如下:

package com.demo.thymeleaf.controller;import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;@Controller
public class HelloController {@GetMapping("/hello")public String Hello(Model model){model.addAttribute("hello", "hello Thymeleaf");return "index";}
}

现在目录结构如下:
在这里插入图片描述

5)启动Spring Boot

启动后,浏览器输入:http://localhost:8080/hello
在这里插入图片描述

温馨提示:如果希望客户端可以直接访问HTML资源,将这些资源放置在static路径下即可,否则必须通过controller的后台映射才可以访问静态资源。

Thymeleaf_74">2、Thymeleaf常用语法

赋值、拼接

@GetMapping("/index")public String index(Map<String, String> map){map.put("name","张三");return "index";}
<p th:text="${name}"></p>
<p th:text="'学生姓名是:'+${name}+'。'"></p>
<p th:text="|学生姓名是,${name}|"></p

http://www.ppmy.cn/server/115789.html

相关文章

Aigtek功率放大器的工作状态和技术指标有哪些

功率放大器是电子电路中的重要组成部分&#xff0c;用于放大电信号的功率&#xff0c;以便驱动负载&#xff0c;如扬声器、天线或电动机。它在各种应用中都起到至关重要的作用&#xff0c;从音响系统到通信设备&#xff0c;以下是功率放大器的工作状态和技术指标的详细介绍。 工…

requests-html的具体使用方法有哪些?

‌requests-html是一个功能强大的Python库&#xff0c;用于发送HTTP请求和解析HTML内容。它的使用方法包括安装库、基本使用、发送带有参数的请求、图片抓取实战案例、解析网页内容、执行JavaScript代码、使用CSS选择器来查找元素、继续跟踪链接并获取内容等。‌ ‌安装request…

Python爬虫-Amazon亚马逊oData参数

前言 本文是该专栏的第37篇,后面会持续分享python爬虫干货知识,记得关注。 本文以“亚马逊Amazon”为例,主要获取亚马逊商品详情页的oData参数规律。 具体实现思路和详细逻辑,笔者将在正文结合完整代码进行详细介绍。接下来,跟着笔者直接往下看正文详细内容。(附带完整…

【JVM】类加载过程|双亲委派模型

目录 四、类加载过程 1.类加载过程 2.双亲委派模型&#xff08;经典面试题&#xff09; 什么是双亲委派模型 双亲委派模型的优点 破坏双亲委派模型 四、类加载过程 1.类加载过程 咱们写的java代码&#xff0c;是.java文件&#xff08;硬盘&#xff09;&#xff0c;一个j…

iOS——weak修饰符的学习补充

Weak修饰符的内部机制 SideTable ObjectC中对对象的存储&#xff0c;实现上做了一定的优化&#xff0c;一旦有弱引用对象被赋值&#xff0c;即运行时&#xff08;Runtime&#xff09;会在全局的SideTables中分配一个SideTable空间&#xff0c;此空间是根据对象的地址相关算法…

7.统一网关-Gateway

文章目录 1.统一网关介绍2.网关开发3.predicate4.Route Predicate Factories(路由断言工厂)4.1Path 路由断言工厂4.2.Method 路由断言工厂4.3 Header 路由断言工厂4.4 Query 路由断言工厂4.5 Host 路由断言工厂4.6 After 路由断言工厂4.7 Before 路由断言工厂4.8 Between 路由断…

自己看---华为od--敏感字段加密

题目描述 给定一个由多个命令字组成的命令字符串&#xff1a; 字符串长度小于等于127字节&#xff0c;只包含大小写字母&#xff0c;数字&#xff0c;下划线和偶数个双引号&#xff1b; 命令字之间以一个或多个下划线_进行分割&#xff1b; 可以通过两个双引号””来标识包含下…

拓数派荣登2024年《财富》中国最具社会影响力的创业公司

9月11日&#xff0c;全球著名商业杂志《财富》(Fortune Magazine&#xff09;在其中文版发布“2024年中国最具社会影响力的创业公司”榜单。拓数派凭借基础AI理论、产品在核心领域应用&#xff0c;AI向善品牌影响力等方面的综合竞争力荣誉上榜。 作为《财富》最具权威性的榜单…