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

gdjlc gdjlc     2023-05-07     305

关键词:

if语句
条件判断使用th:if,它会判断表达式是否成立,表达式的结果支持boolean、number、character、String及其他类型。
满足下面情况下,if语句成立:
(1) 表达式的结果是数字且不是0
(2) 表达式的结果是字符串且不是false、off、no、0
(3) 表达式的结果是其他数据类型
switch case语句
(1) 类似Java的switch case语句:th:switch、th:case
(2) 使用th:case="*"来表示默认值
(3) 如果第一个th:case结果为true,则其它所有的th:case会被设置为false,即使它们的结果也是true

开发环境: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/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<Integer> list = new ArrayList<Integer>();
        list.add(1);
        model.addAttribute("list", list);
        model.addAttribute("flag", true);
        model.addAttribute("gender", 1);
        return "test";
    

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

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<h4>一、条件判断</h4>
     [1]<div th:text="true" th:if="$flag"></div>
     [2]<div th:text="‘数字,非0‘" th:if="10"></div>
     [3]<div th:text="‘字符串,非false、off、no‘" th:if="‘a‘"></div>
     [4]<div th:text="其他数据类型" th:if="$list"></div>
     [5]<div th:text="字符串0" th:if="‘0‘"></div>
     [6]<div th:text="数字0" th:if="0"></div>
     [7]<div th:text="false" th:if="‘false‘"></div>
     [8]<div th:text="off" th:if="‘off‘"></div>
     [9]<div th:text="no" th:if="‘no‘"></div>
<h4>二、switch case</h4>
    <select th:switch="$gender">
        <option th:case="1"></option>
        <option th:case="0"></option>
        <option th:case="*">其他</option>
    </select>

    <select th:switch="2">
        <option th:case="1"></option>
        <option th:case="0"></option>
        <option th:case="*">其他</option>
    </select>

</body>
</html>

浏览器访问:http://localhost:8080
右键查看网页源代码,生成的HTML源码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<h4>一、条件判断</h4>
     [1]<div>true</div>
     [2]<div>数字,非0</div>
     [3]<div>字符串,非false、off、no</div>
     [4]<div>其他数据类型</div>
     [5]<div>字符串0</div>
     [6]
     [7]
     [8]
     [9]
<h4>二、switch case</h4>
    <select>
        <option></option>
        
        
    </select>

    <select>
        
        
        <option>其他</option>
    </select>

</body>
</html>

 

thymeleaf常用语法:html属性设置

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

js常用判断

JS三元运算符三元运算符:如名字表示的三元运算符需要三个操作数。语法是 条件?结果1:结果2;.这里你把条件写在问号(?)的前面后面跟着用冒号(:)分隔的结果1和结果2。满足条件时结果1否则结果2。<scripttype="text/javascript">va... 查看详情

tyhmeleaf常用语法(代码片段)

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

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

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

关于thymeleaf的if多条件判断(代码片段)

<ulclass="navnav-second-level"><lith:each="cmenu:$menu.children"><aclass="J_menuItem"th:if="$cmenu.text!=‘角色管理‘&&cmenu.text!=‘系统菜单‘"href="graph_echarts.html"th:text="$cmenu 查看详情

thymeleaf常用语法:模板片断(代码片段)

系统中的很多页面有很多公共内容,例如菜单、页脚等,这些公共内容可以提取放在一个称为“模板片断”的公共页面里面,其它页面可以引用这个“模板片断”内容。一、模板片断的定义可以是html标签,也可以使... 查看详情

c语言判断和循环介绍(代码片段)

一.判断介绍判断是C语言最常用的语法之一,判断是满足某种条件时,执行对应语句的一种语法结构。下面介绍工作中最常用的几种类型的判断语句语句介绍使用场景if由一个布尔表达式后跟一个或多个语句组成。需要满... 查看详情

c语言判断和循环介绍(代码片段)

一.判断介绍判断是C语言最常用的语法之一,判断是满足某种条件时,执行对应语句的一种语法结构。下面介绍工作中最常用的几种类型的判断语句语句介绍使用场景if由一个布尔表达式后跟一个或多个语句组成。需要满... 查看详情

springboot——thymeleaf中的条件判断(th:ifth:unlessth:switchth:case)(代码片段)

1.写在前面th:if、th:unless、th:switch、th:case这几个属性,其实和JSP里面的那些标签都是类似的,含义就可以理解为Java语言中的if、else、switch-case这些条件判断一样,所以这里就不再详细叙述了,下面就直接给出例子&#... 查看详情

shell——记录个人脚本的一个进阶

    该脚本中运用到工作中常用的shell语法,琐碎的语法结合起来可以帮助处理工作,解放人力。主要常用的shell知识点:判断参数是否存在和判断参数个数声明函数判断字符串相等判断字符串包含判断数组内容和... 查看详情

thymeleaf迭代,if,switch语法

1、Thymeleaf 目标迭代语法:th:each;iterationstatus条件语法:th:if;th:unlessswitch语法:th:switch;th:case;*2、公共模拟SpringBoot后台接口后台逻辑(action)//分页查询   @RequestMapping("/allColumnValidates")   publicStringgetPage(Mod... 查看详情

freemarker语法(代码片段)

...编写用于生成JavaBean的ftl文件。在此记录下使用Freemarker的常用语法FreeMarkerJava使用实例化FreeMarke 查看详情

windows常用命令(高级语句篇)

变量操作:定义变量:setval=abc提示输入变量:set/pval=请输入变量:val替换:setval=%val:a=b%#把变量%val%中的a替换成b截取:setval=%val:~0,3%#截取val的前3位计算:set/aa=%b%+1#设置变量a的值为变量b+1判断语句:a.语法:if条件(逻辑)else(逻辑... 查看详情

thymeleaf添加语法提示(代码片段)

thymeleaf添加语法提示:xmlns:th="http://www.thymeleaf.org"  查看详情

流程控制——判断,选择,循环。(代码片段)

...分支语句;双分支语句;多分枝语句1.单分支语句——if语法:if(判断条件)判断条件为真时执行的代码块2.双分支语句——ifelse语法:if(判断条件)判断条件为假是执行的代码块else判断条件为假时执行的代码块3.多分枝语句——ifel... 查看详情

java几种常用的循环

  为什么要使用while循环?      直接打印:易错,代码量多,效率低  while循环的概念     一直在做重复没有结束的事情  while循环的特征    循环条件:开始结束的条件     循环操作:一直需... 查看详情

03-03:springboot整合thymeleaf

thymeleaf语法详解1.变量输出: th:text:在页面中输出某个值 th:value:将一个值放到input标签中的value中。2.判断字符串是否为空 ①:调用内置对象一定要用# ②:大部分的内置对象都已s结尾(strings,numbers,dates) ${... 查看详情

java基础语法-03

重要知识记录:1、流程控制  顺序结构:根据编写的顺序,从上到下进行运行。2、判断语句  1)判断语句1--if    if(判断条件){      执行语句;    }  2)判断语句2--if...else    if(判断条件){... 查看详情