thymeleaf常用语法:模板注释

gdjlc      2022-02-17     805

关键词:

Thymeleaf模板注释分为标准HTML/XML注释、解析层注释、原型注释三种。

一、注释说明

1、标准HTML/XML注释

直接通过浏览器打开,不显示,Thymeleaf模板引擎解析也不处理,但查看网页源代码,注释有在里面。
语法: 

<!-- 内容 -->

浏览器界面不显示,查看浏览器网页源码有显示;

2、解析层注释

直接通过浏览器打开,会显示。但Thymeleaf模板引擎解析时会移除注释标签和里面内容。
一般开发人员使用,减少对原型页面的破坏。
语法:

<!--/*--> 内容 <!--*/-->

3、原型注释

直接通过浏览器打开,不显示。但Thymeleaf模板引擎解析时只移除注释标签,不会移除里面内容,最后会正常输出。
一般界面设计人员使用。
语法:

<!--/*/ 内容 /*/-->

 

二、使用实例

开发环境:IntelliJ IDEA 2019.2.2
Spring Boot版本:2.1.8

新建一个名称为demo的Spring Boot项目。

1、pom.xml
加入Thymeleaf依赖

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

2、src/main/java/com/example/demo/User.java

package com.example.demo;

public class User {
    Integer id;
    String name;

    public User(Integer id, String name) {
        this.id = id;
        this.name = name;
    }
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
}

3、src/main/java/com/example/demo/TestController.java

package com.example.demo;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

import java.util.ArrayList;
import java.util.List;

@Controller
public class TestController {
    @RequestMapping("/")
    public String test(Model model){
        List<User> users = queryUsers();
        model.addAttribute("users", users);
        return "test";
    }

    private List<User> queryUsers(){
        List<User> users = new ArrayList<User>();
        users.add(new User(1,"张三"));
        users.add(new User(2,"李四"));
        users.add(new User(3,"王五"));
        return users;
    }
}

4、src/main/resources/templates/test.html 

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style type="text/css">
        table { border-collapse:collapse;}
        td { border: 1px solid #C1DAD7;}
    </style>
</head>
<body>
    <!--<div>标准HTML/XML注释</div>-->

    <!--解析层注释-->
    <table>
        <tr th:each="user : ${users}">
            <td th:text="${user.id}">11</td>
            <td th:text="${user.name}">小明</td>
        </tr>
        <!--/*-->
        <tr>
            <td>22</td>
            <td>小红</td>
        </tr>
        <!--*/-->
    </table>

    <!--/*/
   <div>原型注释</div>
    /*/-->
</body>
</html>

IDEA运行后,浏览器访问:http://localhost:8080,界面显示如下

技术图片

  查看网页源代码,如下:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style type="text/css">
        table { border-collapse:collapse;}
        td { border: 1px solid #C1DAD7;}
    </style>
</head>
<body>
    <!--<div>标准HTML/XML注释</div>-->

    <!--解析层注释-->
    <table>
        <tr>
            <td>1</td>
            <td>张三</td>
        </tr>
        <tr>
            <td>2</td>
            <td>李四</td>
        </tr>
        <tr>
            <td>3</td>
            <td>王五</td>
        </tr>
        
    </table>

    
   <div>原型注释</div>
    
</body>
</html>

如果直接在浏览器中打开test.html,界面显示如下:

技术图片

  查看网页源代码,如下:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style type="text/css">
        table { border-collapse:collapse;}
        td { border: 1px solid #C1DAD7;}
    </style>
</head>
<body>
    <!--<div>标准HTML/XML注释</div>-->

    <!--解析层注释-->
    <table>
        <tr th:each="user : ${users}">
            <td th:text="${user.id}">11</td>
            <td th:text="${user.name}">小明</td>
        </tr>
        <!--/*-->
        <tr>
            <td>22</td>
            <td>小红</td>
        </tr>
        <!--*/-->
    </table>

    <!--/*/
   <div>原型注释</div>
    /*/-->
</body>
</html>

 

thymeleaf常用语法:自定义数据转换类(代码片段)

...板文件中,可以使用“$...”表达式进行数据转换,Thymeleaf会使用配置好的数据转换类,来实现转换。例如一个User对象,简单起见假设有姓名和年龄两个字段,对象的toString()方法拼接所有字段,使用“$user”会调用对... 查看详情

thymeleaf常用语法:html属性设置

使用Thymeleaf的属性来设置HTML属性。(1)使用th:attr属性可以修改原来HTML节点的属性;(2)th:attr属性可以同时设置多个属性;(3)每一个HTML属性都有对应的Thymeleaf属性,如th:attr="value=‘值‘"可换为th:value="值"(4)HTML的type为chec... 查看详情

认识模板引擎-thymeleaf(代码片段)

模板引擎什么是模板引擎?原理/流程Thymeleaf使用流程1.通过maven引入依赖2.创建Html模板文件3.编写Servlet代码Thymeleaf常用模板语法理解只创建一个引擎实例ServletContext代码示例:多个Servlet共享数据监听器Listener代码示例:... 查看详情

认识模板引擎-thymeleaf(代码片段)

模板引擎什么是模板引擎?原理/流程Thymeleaf使用流程1.通过maven引入依赖2.创建Html模板文件3.编写Servlet代码Thymeleaf常用模板语法理解只创建一个引擎实例ServletContext代码示例:多个Servlet共享数据监听器Listener代码示例:... 查看详情

django模板常用语法规则

 Django模板标签if/else标签for标签ifequal/ifnotequal标签注释标签过滤器include标签URL标签模板继承  if/else标签1.基本语法格式如下:%ifcondition%...display%endif%或者:%ifcondition1%...display1%elifcondiiton2%...display2 查看详情

认识模板引擎-thymeleaf(代码片段)

模板引擎什么是模板引擎?原理/流程Thymeleaf使用流程1.通过maven引入依赖2.创建Html模板文件3.编写Servlet代码Thymeleaf常用模板语法理解只创建一个引擎实例ServletContext代码示例:多个Servlet共享数据监听器Listener代码示例:... 查看详情

模板引擎thymeleaf介绍及使用(代码片段)

...擎2.1模板引擎介绍2.2模板引擎的作用2.3常见的模板引擎3.Thymeleaf3.1Thymeleaf介绍3.2Thymeleaf语法规则3.2.1标准表达式语法3.2.2th属性3.3Thymeleaf使用流程1.服务器生成动态页 查看详情

模板引擎thymeleaf介绍及使用(代码片段)

...擎2.1模板引擎介绍2.2模板引擎的作用2.3常见的模板引擎3.Thymeleaf3.1Thymeleaf介绍3.2Thymeleaf语法规则3.2.1标准表达式语法3.2.2th属性3.3Thymeleaf使用流程1.服务器生成动态页 查看详情

springboot页面展示thymeleaf

...上面并没有列举所有SpringBoot支持的页面模板技术。其中Thymeleaf是SpringBoot官方所推荐使用的,下面来谈谈Thymeleaf一些常用的语法规则。要想使用Thhymeleaf,首先要在pom.xml文件中单独添加Thymeleaf依赖。SpringBoot默认存放模板页面的路... 查看详情

thymeleaf介绍和基本语法使用(代码片段)

SpringBoot中推荐使用Thymeleaf作为模板引擎.因为Thymeleaf提供了完美的SpringMVC支持.Thymeleaf是一个java类库,他是一个xml/xhtml/html5的模板引擎,可以作为mvc的web应用的view层。   我们把HTML页面放在classpath:/templates/,thymeleaf就能... 查看详情

thymeleaf入门与基础语法(代码片段)

1.简介Thymeleaf是用来开发Web和独立环境项目的现代服务器端Java模板引擎。Thymeleaf的主要目标是为您的开发工作流程带来优雅的自然模板-HTML。可以在直接浏览器中正确显示,并且可以作为静态原型,从而在开发团队中实现更强大... 查看详情

tyhmeleaf常用语法(代码片段)

<!DOCTYPEhtml><htmllang="zh"xmlns:th="http://www.thymeleaf.org"xmlns:shiro="http://www.pollix.at/thymeleaf/shiro"><head> <th:blockth:include="in 查看详情

thymeleaf模板引擎(代码片段)

Springboot需要使用thymeleaf模板引擎来编写前端页面,代替了SSM中的JSPcontroller的return页面的路径,默认为resources下的template 查看thymeleaf的配置文件,在template下默认使用.html页面  thymeleaf的语法:在html中导入thymeleaf的命名... 查看详情

❤️springboot模板引擎❤️——thymeleaf(代码片段)

目录模板引擎简介引入Thymeleaf模板引擎分析Thymeleaf模板引擎测试Thymeleaf模板引擎Thymeleaf入门: thymeleaf语法学习 练习测试 总结:模板引擎简介jsp有着强大的功能,能查出一些数据转发到JSP页面以后,我们可以用j... 查看详情

thymeleaf常用语法:条件判断ifswitchcase(代码片段)

...本:2.1.8新建一个名称为demo的SpringBoot项目。1、pom.xml加入Thymeleaf依赖<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId></dependency>2、src/main/java/com/example/demo/TestController.ja... 查看详情

springboot开发之thymeleaf模板引擎

1、引入thymeleaf在pom.xml中写入:<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId></dependency>2、thymeleaf语法Hell 查看详情

thymeleaf模板引擎学习(代码片段)

...SpringBoot中已经不推荐使用JSP页面进行页面渲染了。从而Thymeleaf提供了一个用于整合SpringMVC的可选模块,在应用开发中,你可以使用Thymeleaf来完全代替JSP,或其他模板引擎,如Velocity、FreeMarker等。它的语法与我们以前使用的EL表达... 查看详情

day08-2-thymeleaf(代码片段)

服务器渲染技术-Thymeleaf1.基本介绍官方在线文档:Readonline文档下载:Thymeleaf3.1PDF,EPUB,MOBIThymeleaf是什么Thymeleaf是一个现代的服务器端Java模板引擎,适用于Web和独立环境,能够处理HTML,XML,JavaScript,CSS甚至纯文本Thymeleaf是一个跟V... 查看详情