thymeleaf 语法详解
1.变量输出:
 th:text :在页面中输出某个值
 th:value :将一个值放到input标签中的value中。
2.判断字符串是否为空
 ①:调用内置对象一定要用#
 ②:大部分的内置对象都已s结尾(strings,numbers,dates)
 ${#strings.isEmpty(msg)}:判断字符串是否为空,如果为空返回true 否则返回false
 ${#strings.contains(msg,'T')} :判断字符串是否包含指定的子串,如果包含返回 true,否则返回 false
 ${#strings.startsWith(msg,'a')}:判断当前字符串是否以子串开头,如果是返回 true,否则返回 false
 ${#strings.endsWith(msg,'a')}:判断当前字符串是否以子串结尾,如果是返回 true,否则返回 false
 ${#strings.length(msg)}:返回字符串的长度
 ${#strings.indexOf(msg,'h')}:查找子串的位置,并返回该子串的下标,如果没找到则返回-1
 ${#strings.substring(msg,13)}:截取子串,用户与 jdk String 类下 SubString 方法相同
 ${#strings.substring(msg,13,15)}:截取子串,用户与 jdk String 类下 SubString 方法相同
 ${#strings.toUpperCase(msg)}:字符串转大小写。
 ${#strings.toLowerCase(msg)}:字符串转大小写。

3.日期格式化处理
 ${#dates.format(key)}:格式化日期,默认的以浏览器默认语言为格式化标准
 ${#dates.format(key,'yyy/MM/dd')}:按照自定义的格式做日期转换
 ${#dates.year(key)}:year:取年
 ${#dates.month(key)}:Month:取月
 ${#dates.day(key)}:Day:取日

4.条件判断
  ①:th:if
    <span th:if="${sex} == '男'"> 性别:男 </span>
    <span th:if="${sex} == '女'"> 性别:女 </span>
  ②:th:switch
    <div th:switch = "${id}" >
        <span th:case = "1">1</span>
        <span th:case = "2">2</span>
        <span th:case = "3">3</span>
    </div>

5.迭代遍历(对集合的遍历)
    ①:th:each
    <table border="1">
       <tr>
        <th>ID</th>
        <th>Name</th>
        <th>Age</th>
       </tr>
       <tr th:each="u : ${list}">
        <td th:text="${u.userid}"></td>
        <td th:text="${u.username}"></td>
        <td th:text="${u.userage}"></td>
       </tr>
    </table>
    ②:th:each 状态变量
    1.index 当前迭代器的索引,从0开始
    2.count 当前迭代对象的计数,从1开始
    3.size 被迭代对象的长度
    4.even/odd:布尔值,当前循环是否是偶数/奇数 从 0 开始
    5.first:布尔值,当前循环的是否是第一条,如果是返回 true 否则返回 false
    6.last:布尔值,当前循环的是否是最后一条,如果是则返回 true 否则返回 false
    
    ③.th:each 迭代Map
    <table border="1">
        <tr>
            <th>ID</th>
            <th>Name</th>
            <th>Age</th>
        </tr>
        <tr th:each="maps : ${map}">
            <td th:each="entry:${maps}"  th:text="${entry.value.userid}" ></td>
            <td th:each="entry:${maps}"  th:text="${entry.value.username}"></td>
            <td th:each="entry:${maps}"  th:text="${entry.value.userage}"></td>
        </tr>
    </table>
6.域对象操作
1.httpServletRequest

7.URL表达式
th:herf
th: src
 ①:url表达式语法
 @{} 基本语法构成
 ②:URL类型
     1.绝对路径
        <a th:href="@{http://www.baidu.com}" >绝对路径1</a>
     2.相对路径
        一、相对于当前项目的根(相对于项目的上下文的相对路径)
            <a th:href="@{show}">相对路径</a>
        二、相对于服务器路径的根
            <a th:href="@{~/project/recousename}">相对服务器的根路径</a>
  ③:在URL中实现参数的传递
     1.<a th:href="@{show(id=1,name=wj)}">传参</a>
  ④:在url中通过restful方式进行参数的传递
     1.<a th:href="@{show/{id}/(id=1,name=wj)}">传参-restful</a>

thymeleaf 的使用的更多相关文章

  1. spring boot(四):thymeleaf使用详解

    在上篇文章springboot(二):web综合开发中简单介绍了一下thymeleaf,这篇文章将更加全面详细的介绍thymeleaf的使用.thymeleaf 是新一代的模板引擎,在spring4. ...

  2. Thymeleaf

    1.在html顶部添加 <html xmlns:th="http://www.thymeleaf.org"> 2.url表达式 @{...} <link rel= ...

  3. Thymeleaf 模板的使用

    Thymeleaf是现代化服务器端的Java模板引擎,不同与JSP和FreeMarker,Thymeleaf的语法更加接近HTML,并且也有不错的扩展性.详细资料可以浏览官网.本文主要介绍Thymel ...

  4. vert.x学习(三),Web开发之Thymeleaf模板的使用

    在vert.x中使用Thymeleaf模板,需要引入vertx-web-templ-thymeleaf依赖.pom.xml文件如下 <?xml version="1.0" e ...

  5. 页面上使用 Thymeleaf 的内联js不当造成了 java.lang.StackOverflowError: null 问题

    由于在页面上内联js使用不当,从而在从 Controller 跳转到页面时发生了以下错误: java.lang.StackOverflowError: null at org.thymeleaf.ut ...

  6. Thymeleaf 与 Javascript

    在 javascript 代码中使用 Thymeleaf 模板引擎: <script th:inline="javascript"> $("#content& ...

  7. Thymeleaf+SpringMVC,如何从模板中获取数据

    Thymeleaf+SpringMVC,如何从模板中获取数据 在一个典型的SpringMVC应用中,带@Controller注解的类负责准备数据模型Map的数据和选择一个视图进行渲染.这个模型Map对 ...

  8. Thymeleaf+Spring整合

    前言 这个教程介绍了Thymeleaf与Spring框架的集成,特别是SpringMvc框架. 注意Thymeleaf支持同Spring框架的3.和4.版本的集成,但是这两个版本的支持是封装在thym ...

  9. thymeleaf常用标签

    1. th:checked ,th:selected标签<input type="radio" value="M" name="gender&q ...

  10. thymeleaf的常见用法

    1,th:属性名="",就可以直接修改控件的属性,比如 <input th:type="button" th:name="xinxin" ...

随机推荐

  1. VMware虚拟机配置端口转发(端口映射),实现远程访问【转】

    前言本文所写的远程为各个电脑在同一个网段内 本文主要详细介绍如何远程访问虚拟机里面的项目! 机器:虚拟机(装在电脑1里).电脑1(宿主机).电脑2.电脑3.电脑4.电脑n... 操作步骤: step1 ...

  2. 【mac上安装&配置&使用git】

    转自:https://www.jianshu.com/p/7edb6b838a2e 目录 安装git 创建ssh key.配置git 提交本地项目到GitHub 一.安装Git MAC 上安装Git主 ...

  3. node.js中通过dgram数据报模块创建UDP服务器和客户端

    node.js中 dgram 模块提供了udp数据包的socket实现,可以方便的创建udp服务器和客户端. 一.创建UDP服务器和客户端 服务端: const dgram = require('dg ...

  4. Android 获得本地IP地址、外网IP地址、本设备网络状态信息、本地Mac地址

    本地内网IP和外网IP的区别: 根据我的经验一台电脑需要两个ip才可以上网,一个是本地的内网ip 一个是外网的ip 本地的ip 一般是192.168.1.2这种样子  只要在不同的路由器上可以重复 外 ...

  5. 解决vs code 内置终端,字体间隔过大问题。(linux centos7成功)

    如图. 去文件-首选项-设置里修改. "terminal.integrated.fontFamily": ""注意此处默认为空白,所以显示的就比较奇怪. 此处我 ...

  6. 无线网卡连接网络后共享给本地有线网卡使用(Win10)

    无线网卡连接网络后共享给本地有线网卡使用(Win10) 1. 本文主要目的是介绍地有线网卡共享无线网卡的Wifi信号,该应用场景如下: 当在只有wifi环境下,同时有两台电脑A和B,   A为笔记本: ...

  7. 【linux轻松学】centos6.5上搭建svn服务器

    今天花了一下午,把svn环境搭好了,写篇文章分享…… 1.安装 先查看是否已经安装,如果有旧版,先删除再安装. 查看rpm -qa subversion 删除yum remove subversion ...

  8. websocket的简单使用

    一 轮询 什么是轮询:设置每一段时间去访问一次服务器,然后服务器返回最新的数据.这样服务器的压力会非常的大,并且还会有延迟.适用于小型程序. 实现:再客户端的页面设置一个定时发送请求的任务,每个这段时 ...

  9. vue报错TypeError: Cannot read property '$createElement' of undefined

    报错截图: 这个错误就是路由上的component写成了components

  10. JAVA 8 主要新特性 ----------------(二)JDK1.8优点概括

    一.JDK1.8优点概括 1.速度更快 由于底层结构和JVM的改变,使得JDK1.8的速度提高. 2.代码更少(增加了新的语法 Lambda 表达式)          增加新特性Lambda表达式的 ...