springboot Thymeleaf模版引擎使用

1.引入依赖 

<!--thymeleaf视图引擎-->
<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>

 html中要声明约束,这样就可以使用themelraf视图引擎了

<html lang="en" xmlns:th="http://www.thymeleaf.org">

2.样例

html:

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<!--链接、引用需要用@{},下面演示引入js和css-->
<!--<link rel="stylesheet" th:href="@{index.css}">-->
<!--<script type="text/javascript" th:src="@{index.js}"></script>-->
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
超链接
<div><a th:href="@{https://www.baidu.com/}">点击跳转百度!</a></div>
1.普通字符
<div th:text="${name}"></div>
2.JavaBean对象
<table bgcolor="#ffe4c4" border="1">
    <tr>
        <td>介绍</td>
        <td th:text="${user.name}"></td>
    </tr>
    <tr>
        <td>年龄</td>
        <td th:text="${user['age']}"></td>
    </tr>
    <tr>
        <td>性别</td>
        <td th:text="${user.getAge()}"></td>
    </tr>
</table>
3.list集合
<table bgcolor="#ffe4c4" border="1">
    <tr th:each="item:${list}">
        <td th:text="${item.name}"></td>
        <td th:text="${item.age}"></td>
        <td th:text="${item.sex}"></td>
    </tr>
</table>
4.map
<table bgcolor="#ffe4c4" border="1">
    <tr th:each="item:${map}">
        <td th:text="${item.key}"></td>
        <td th:text="${item.value.sex}"></td>
    </tr>
</table>
5.*使用
<div th:object="${user}">
    <p>Name: <span th:text="*{name}"></span>.</p>
    <p>Age: <span th:text="*{age}"></span>.</p>
    <p>sex: <span th:text="*{sex}"></span>.</p>
</div>
6.#直接从配置文件读取
<table bgcolor="#ffe4c4" border="1">
    <tr>
        <td>name</td>
        <td th:text="#{perspn.name}"></td>
    </tr>
    <tr>
        <td>年龄</td>
        <td th:text="#{person.age}"></td>
    </tr>
    <tr>
        <td>性别</td>
        <td th:text="#{person.sex}"></td>
    </tr>
</table>
</body>
</html>

 User实体类:

package com.qcby.thymeleaf_demo01.pojo;
public class User {
    public String name;
    public Integer age;
    public Character sex;

    public User(String name, Integer age, Character sex) {
        this.name = name;
        this.age = age;
        this.sex = sex;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Integer getAge() {
        return age;
    }

    public void setAge(Integer age) {
        this.age = age;
    }

    public Character getSex() {
        return sex;
    }

    public void setSex(Character sex) {
        this.sex = sex;
    }


}

 Comtroller:

import com.qcby.thymeleaf_demo01.pojo.User;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

@Controller
public class urlController {
    @GetMapping("demo")//页面的url地址
    public String demo(Model model)//对应函数
    {
        User user1=new User("hhh",15,'女');
        User user2=new User("xxx",18,'女');
        User user3=new User("qqq",19,'女');
        List<User> list=new ArrayList<>();
        list.add(user1);
        list.add(user2);
        list.add(user3);
        Map<String ,User> map=new HashMap<>();
        map.put("hhh",user1);
        map.put("xxx",user2);
        map.put("qqq",user3);
        //数据添加到model中
        model.addAttribute("name","nihao");//普通字符串
        model.addAttribute("user",user1);//javabean
        model.addAttribute("list",list);//list
        model.addAttribute("map",map);//Map
        return "success";
    }
}

在直接读取properties文件的内容时:要springboot的配置文件声明路径

application.properties:

#直接读取配置文件
spring.messages.basename=templates/temp

 temp.properties文件:

perspn.name=超级飞侠
person.age=15
person.sex=男

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/475502.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

EMC Unity存储系统(包含VNXe)常用检查命令

DELL EMC的Unity存储系统&#xff0c;包括VNXe存储系统的OS已经完全和Clariion 的VNX不同了&#xff0c;近期遇到很多关于EMC unity存储系统故障的一些初步检查需求&#xff0c;下面是一些对于DELL EMC Unity存储系统的最常用的底层检查命令&#xff0c;可以对系统故障有个初步…

小程序商城如何接入和设置支付宝支付功能?

众所周知&#xff0c;移动支付已成为电商平台不可或缺的核心组件。为了提升用户体验并拓宽支付渠道&#xff0c;许多小程序商城系统纷纷引入了支付宝作为支付选项。那么&#xff0c;如何在小程序商城系统中成功接入和设置支付宝支付功能呢&#xff1f;这似乎是大家当前所面临的…

电子台账:账页数据溯源

目录 1 前言 2 打开数据溯源面板 3 溯源面板操作 1 前言 账页中让人眼花缭乱的大堆数据来自哪里&#xff1f;从企业数据源表格中自动抓取数据后&#xff0c;如果感觉数据不对&#xff0c;就需要进行核对、排错&#xff0c;怎样确定程序到底抓取的哪些单元格&#xff1f;取数…

Visual Studio 2022 出现:E1696无法打开 源 文件 “stdafx.h“;E0020未定义标识符 “_TCHAR“错误解决办法

今天在用自己电脑上的visual studio2022写并行计算实验报告时出现了这种错误&#xff0c;但我在机房电脑vs2010版本运行时没有任何问题&#xff0c;于是我在网上找了解决办法&#xff0c;现总结如下。 1.报错E1696无法打开 源 文件 "stdafx.h"&#xff0c;解决办法&a…

思维线索(Thread of Thought)-ThoT梳理混乱的语境

Thread of Thought Unraveling Chaotic Contexts 大型语言模型&#xff08;LLMs&#xff09;在自然语言处理领域开启了一个变革的时代&#xff0c;在文本理解和生成任务上表现出色。然而&#xff0c;当面对混乱的上下文环境&#xff08;例如&#xff0c;干扰项而不是长的无关上…

【Java - 框架 - SpringMVC】(01) SpringMVC框架的简单创建与使用,快速上手

"SpringMVC"框架的简单创建与使用&#xff0c;快速上手&#xff1b; 环境 Java版本"1.8.0_202"&#xff1b;Spring Boot版本"2.5.9"&#xff1b;Windows 11 专业版_22621.2428&#xff1b;IntelliJ IDEA 2021.1.3(Ultimate Edition)&#xff1…

NVIDIA NCCL 源码学习(十三)- IB SHARP

背景 之前我们看到了基于ring和tree的两种allreduce算法&#xff0c;对于ring allreduce&#xff0c;一块数据在reduce scatter阶段需要经过所有的rank&#xff0c;allgather阶段又需要经过所有rank&#xff1b;对于tree allreduce&#xff0c;一块数据数据在reduce阶段要上行…

淘宝店铺如何从1688一键铺货?官方授权API接口,可满足多样化上货需求

那么新手卖家如何将1688的源头厂货一键铺货到淘宝店铺呢&#xff1f;下面我教大家几招&#xff1a; 1、通过淘宝复制一键复制上货 淘宝API接口采集 taobao.item_get 公共参数 名称类型必须描述keyString是调用key&#xff08;必须以GET方式拼接在URL中&#xff09;secretStr…

无粉乳胶手套:提升操作效率与舒适度的理想选择

作为一种新型的个人防护装备&#xff0c;无粉乳胶手套因其清洁、舒适和高靈敏度的特点&#xff0c;逐渐成为各个行业的首选。本文将通过对比分析无粉乳胶手套与其他手套的差异&#xff0c;探讨其在提升操作效率和舒适度方面的优势。 提升操作效率&#xff1a; 无粉乳胶手套具有…

[C语言]——函数递归

目录 一.什么是递归 1.递归的思想&#xff1a; 二.递归的限制条件 三.递归举例 1.举例1&#xff1a;求n的阶乘 1.1分析和代码实现 1.2画图推演 2.举例2&#xff1a;顺序打印⼀个整数的每⼀位 2.1分析和代码实现 2.2画图推演 四.递归与迭代 1.举例3&#xff1a;求第…

记录一次服务器内存使用率过高达到90%告警问题排查。

目录 一、前言二、问题排查处理三、 结尾 &#x1f469;&#x1f3fd;‍&#x1f4bb;个人主页&#xff1a;阿木木AEcru &#x1f525; 系列专栏&#xff1a;Docker容器化部署系列 &#x1f4b9;每一次技术突破&#xff0c;都是对自我能力的挑战和超越。 一、前言 一大早就有一…

EtherCAT 开源主站 IGH 在 linux 开发板的移植和伺服通信测试

手边有一套正点原子linux开发板imax6ul&#xff0c;一直在吃灰&#xff0c;周末业余时间无聊&#xff0c;把EtherCAT的开源IGH主站移植到开发板上玩玩儿&#xff0c;搞点事情做。顺便学习研究下EtherCAT总线协议及其对伺服驱动器的运动控制过程。实验很有意思&#xff0c;这里总…

01mysql

登陆mysql 默认数据库 进入&#xff0c;展示&#xff0c;删除 &#xff0c;查看当前正使用的库 select version()查看版本 查看表结构desc 查询 not in不会忽略空 in会自动忽略 like模糊查询 %o%中间带o的 _A%第二个字母是A的 查名字是下划线的 %\_% 排序 order …

Spring Batch | quick start

导学 官网介绍&#xff1a;https://docs.spring.io/spring-batch/reference/spring-batch-intro.html批处理就是将数据分批次进行处理的过程。常规的批处理操作步骤&#xff1a;系统A从数据库中导出数据到文件&#xff0c;系统B读取文件数据并写入到数据库批处理特点&#xff…

matlab 最小二乘拟合圆柱

目录 一、算法原理1、算法简介2、参考文献二、代码实现三、结果展示四、测试数据本文由CSDN点云侠原创,原文链接。如果你不是在点云侠的博客中看到该文章,那么此处便是不要脸的爬虫。 一、算法原理 1、算法简介 圆柱拟合步骤主要包括两步: 一是确定柱面模型参数初始值; 二是…

粤嵌6818开发板如何理解Linux文件IO?

一、文件IO的概述 1、什么是文件&#xff1f; Linux下一切皆文件。普通文件、目录文件、管道文件、套接字文件、链接文件、字符设备文件、块设备文件。 2、什么是IO&#xff1f; input output&#xff1a;输入输出 3、什么是文件IO&#xff1f; 对文件的输入输出&#xff0c;把…

鸿蒙一次开发,多端部署(五)页面开发的一多能力介绍

本章介绍如何使用方舟开发框架“一多”能力&#xff0c;开发出在多设备上正常显示的页面。方舟开发框架推荐开发者使用声明式开发范式开发应用&#xff0c;故本章的内容和示例都主要基于声明式开发范式。本章主要包含如下内容&#xff1a; 布局能力 布局决定了页面中的元素按照…

【Git】恢复被 git checkout -- . 重置掉的代码(或未commit的代码)

文章目录 有时候大家在工作区的代码未提交被重置了&#xff0c;然后又没有commit记录&#xff0c;这时候就可以尝试下面这种方法找回。 在 vscode 中&#xff0c;先打开被重置的文件点击该文件的本地时间线&#xff0c;就可以在 vscode 中看到该文件的本地记录 这里可以找到工作…

ai写作助手,破解写作遇到的难题

在写作过程中&#xff0c;有些人会遇到不同写作的难题&#xff0c;没写作灵感写不出文章&#xff0c;文笔差不会写文章&#xff0c;没有时间去写文章等等&#xff0c;然而把这些问题放在一个ai写作助手面前来说&#xff0c;却不成问题&#xff0c;那是因为ai写作助手它具备强大…

OR-6N137高速隔离运放光耦,对标6N137等

高效率的AlGaAs LED和高速光学探测器组成 拥有交流和直流隔离 改善了传统光电晶体管耦合器的速度 共模瞬态抗扰度 特征 VCM1000V&#xff0c;瞬时共模抑制&#xff1a;10KV/μsec 宽工作温度范围 -40~85C 高输入输出隔离电压 &#xff08; Viso 5000Vrms &#xff09; …
最新文章