4.1什么是thymleaf

简单说, Thymeleaf 是一个跟 Velocity、FreeMarker 类似的模板引擎,它可以完全替代 JSP 。它有如下三个极吸引人的特点: Thymeleaf 在有网络和无网络的环境下皆可运行,即它可以让美工在浏览器查看页面的静态效果,也可以让程序员在服务器查看带数据的动态页面效果。这是由于它支持 html 原型,然后在 html 标签里增加额外的属性来达到模板+数据的展示方式。浏览器解释 html 时会忽略未定义的标签属性,所以 thymeleaf 的模板可以静态地运行;当有数据返回到页面时,Thymeleaf 标签会动态地替换掉静态内容,使页面动态显示。

4.2如何使用

1)pom.xml中添加thymeleaf依赖,去掉jasper依赖

2)controller方法实现跳转到index的逻辑视图里

3)访问时,发现404的错误,即使webapp下有index.jsp,并且springMVC配置的是正确的视图解析器。这是因为,在pom.xml中配置了thymeleaf模块后,视图默认是templates目录下的html。因此,我们在templates目录下创建一个index.html,发现访问正常。(记得取消filter和interceptor的功能)

4.3如何传值

1)用el表达式是无法传值的,更不能用jstl

2)在html的标签上添加th命名空间

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

3)demo html

4) 大多数Thymeleaf属性允许将它们的值设置为或包含表达式,这些表达式有五种类型

4.3变量表达式

变量表达式就是el表达式,就是上下文变量,从page,request,session,application域中获取变量值。

用th:text来输出内容:

(1)变量

<h3>欢迎页面!欢迎:<span th:text="${key}">默认用户名</span></h3>

a. th:text 用来将内容输出到所在的标签<span>中,替换静态内容“默认用户名”

(3)对象

${}可以分别从request,session,applicatin中获取变量值

3)可以直接传递一个对象

例子:

4.4选择表达式*{…}

选择表达式就像变量表达式一样,只不过对象不是上下文变量,而是先前由th:object指定的对象。

<div th:object="${user}">

...

<span th:text="*{username}">...</span>

...

</div>

例子:

4.5消息表达式#{…}

消息表达式可以默认读取resources目录下的messages.properties文件中的内容,通过键来引用这引用这些消息。

(1)在resources目录下创建一个messages.properties,内容如下:

(2)在index.html页面通过消息表达式,可以直接获取.properties文件中的内容

(3)消息表达式可以带参数

可以通过spring.messages.basename: messages来更改默认读取的配置文件

thymleaf详细介绍相关推荐

  1. HTML页面加载和解析流程详细介绍

    浏览器加载和渲染html的顺序.如何加快HTML页面加载速度.HTML页面加载和解析流程等等,在本文将为大家详细介绍下,感兴趣的朋友不要错过 浏览器加载和渲染html的顺序 1. IE下载的顺序是从上 ...

  2. mysql为什么要压测_mysql集群压测的详细介绍

    本篇文章给大家带来的内容是关于mysql集群压测的详细介绍,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. mysql压测 mysql自带就有一个叫mysqlslap的压力测试工具,通 ...

  3. php比较运算符案列,PHP实例:PHP比较运算符的详细介绍

    <PHP实例:PHP比较运算符的详细介绍>要点: 本文介绍了PHP实例:PHP比较运算符的详细介绍,希望对您有用.如果有疑问,可以联系我们. 比拟运算符种类 PHP实战如同它们名称所暗示的 ...

  4. Tempdb数据库详细介绍

    Tempdb数据库详细介绍 一.Tempdb简介 tempdb是SQLServer的系统数据库一直都是SQLServer的重要组成部分,用来存储临时对象.可以简单理解tempdb是SQLServer的 ...

  5. linux路由介绍,Linux的路由表详细介绍

    Linux的路由表详细介绍 一 在Linux下执行route命令[root@localhost backup]# route -nKernel IP routing tableDestination ...

  6. pythonexcel介绍_Python 中pandas.read_excel详细介绍

    Python 中pandas.read_excel详细介绍 #coding:utf-8 import pandas as pd import numpy as np filefullpath = r& ...

  7. 渡神纪帧数测试软件,渡神纪芬尼斯崛起配置要求高吗 渡神纪配置要求详细介绍_游侠网...

    渡神纪芬尼斯崛起配置要求高吗?本作将在12月3日登陆主机和PC,很多玩家比较关心游戏的配置,这里给大家带来了渡神纪配置要求详细介绍,快来了解下吧. 渡神纪配置要求详细介绍 最低要求(720p/30 f ...

  8. C++11 unordered_map详细介绍

    整理的算法模板合集: ACM模板 目录: 1.介绍 1.1 特性 2. 模版 2.1 迭代器 3. 功能函数 3.1 构造函数 3.2 容量操作 3.2.1 size 3.2.2 empty 3.3 ...

  9. autosar中com模块_详细介绍AUTOSAR各个模块作用PART1(OS,SYS)

    这片文章中我们详细讲解下每个模块的功能,上图是vector的autosar方案,每个模块的详细介绍后续会有单独文章进行讲解,请关注.以下是各个模块的简介 1.VHSM hardware Securit ...

最新文章

  1. Python求解最速降线问题
  2. ssh白名单_阿里云服务器ssh白名单
  3. linux ftp查看用户目录权限,linux 指定ftp用户 特定目录及权限
  4. 高效神器!小目标检测迎来曙光!SSPNet金字塔网络!川大出品
  5. 《敏捷生活练习》打印书籍
  6. django url 生效_django 定制管理页面外观 模板文件不生效的解决方法
  7. 编译速度谁“最快”?25岁的 C++Builder 还能打!
  8. centos通过yum的方式快速安装jdk1.8
  9. Httpd-2.2.0虚拟主机目录权限问题
  10. Wave Arts Tube Saturator for Mac(电子管模拟效果器插件)
  11. 电力IEC61850的基础知识和使用
  12. 安卓TextView完美展示html格式代码
  13. python信息安全书籍_2018年信息安全从业者书单推荐
  14. IT行业是什么工作?做什么的?
  15. win10无法安装完成若要在此计算机上,win10提示windows安装无法继续怎么办
  16. 开发者痛斥手机供应商为了续航恶意查杀后台应用
  17. 软件测试的“道”与“术” - 软件测试新观察(转载崔启亮的文章)
  18. ArcGIS卸载--删除写入注册表相关
  19. 安全课堂|关于小程序AppSecret密钥泄露漏洞官方
  20. 购买Arndale Octa 5420开发板

热门文章

  1. prime_series_level-1
  2. 2021河南省城市活力大数据报告
  3. H3C Telnet、SSH登录 用户名和密码一致
  4. “个人所得税”手机APP下载注册指引
  5. 编程之路--鞭策自己
  6. 有重要的事在华为手机上如何设置提醒?
  7. 【无人机 学习笔记 5】天线之全向天线与定向天线工作原理
  8. 计算机应用基础课程整体设计说课视频,创新杯说课大赛计算机应用基础类一等奖作品:电子表格处理软件应用教学设计方案(正文)...
  9. 示波器调节李萨如图形
  10. Python Virtualenv 虚拟环境