thymeleaf在工作中常用的属性及表达式使用详解(一)

Easter79
• 阅读 635

最近在写微服务的项目,第一次接触thymeleaf,踩了很多雷,决定把我在工作中遇到的跟大家分享,希望能帮助遇到相同问题的朋友。

1.1  首先介绍一下这个东西(来源百度)

http://www.thymeleaf.org  这是thymeleaf的官网。

Thymeleaf是个XML/XHTML/HTML5模板引擎,可以用于Web与非Web应用。

Thymeleaf的主要目标在于提供一种可被浏览器正确显示的、格式良好的模板创建方式,因此也可以用作静态建模。你可以使用它创建经过验证的XML与HTML模板。相对于编写逻辑或代码,开发者只需将标签属性添加到模板中即可。接下来,这些标签属性就会在DOM(文档对象模型)上执行预先制定好的逻辑。Thymeleaf的可扩展性也非常棒。你可以使用它定义自己的模板属性集合,这样就可以计算自定义表达式并使用自定义逻辑。这意味着Thymeleaf还可以作为模板引擎框架。

Thymeleaf的模板还可以用作工作原型,Thymeleaf会在运行期替换掉静态值。

用我自己的话来来总结,就是这个东西不像JSP那样需要WEB容器来解析他,在无WEB容器的情况下,你可以直接查看 其静态内容,而需要数据动态展示的时候,又能向JSP那样接收从后台传来的数据。

1.2   为什么使用Thymeleaf?其优点是什么?

首先介绍一下我的工作内容。我在一家北京做云产品的公司(AWS、华为、PCF),我是做PCF,PaaS云。但因为我之前是做传统开发的,所以我的工作就是微服务的开发(PCF我也基本搞通)。微服务的开发我在之后再做详细介绍。

在做微服务开发的时候,官方是不推荐使用JSP作为视图框架,而是推荐使用Thymeleaf,刚刚接触Thymeleaf的时候,我也是一脸懵逼,完全找不到方向。我也希望帮助需要使用Thymeleaf但还一脸懵逼的朋友。

用我自己总结的话说,Thymeleaf的优点是它是基于HTML的,即使视图没有渲染成功,也是一个标准的HTML页面。因此它的可读性很不错,也可以作为设计原型来使用。而且它是完全独立于java ee容器的,这就意味着我们可以在任何需要渲染HTML的地方使用Thymeleaf。

之后接着介绍thymeleaf的属性使用。

原创博客,转载请注明出处:https://my.oschina.net/u/3637243/blog/1502953

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
待兔 待兔
3个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Easter79 Easter79
3年前
thymeleaf在工作中常用的属性及表达式使用详解(二)
1.1 在SpringBoot中引入Thymeleaf第一步:在Maven中引入thymeleaf的依赖,加入以下代码即可引入需要的Jar包。<dependency<groupIdorg.springframework.boot</groupId
Stella981 Stella981
3年前
Spring Boot(三):Thymeleaf 使用详解
在上篇文章SpringBoot(二):web应用开发,实现CRUD(https://my.oschina.net/u/4006148/blog/3163419)中简单介绍了一下Thymeleaf,这篇文章将更加全面详细的介绍Thymeleaf的使用。Thymeleaf是新一代的模板引擎,在Spring4.0中推荐使用Thymeleaf来
Stella981 Stella981
3年前
KVM调整cpu和内存
一.修改kvm虚拟机的配置1、virsheditcentos7找到“memory”和“vcpu”标签,将<namecentos7</name<uuid2220a6d1a36a4fbb8523e078b3dfe795</uuid
Easter79 Easter79
3年前
Twitter的分布式自增ID算法snowflake (Java版)
概述分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的。有些时候我们希望能使用一种简单一些的ID,并且希望ID能够按照时间有序生成。而twitter的snowflake解决了这种需求,最初Twitter把存储系统从MySQL迁移
Stella981 Stella981
3年前
Golang之如何(优雅的)比较两个未知结构的json
这是之前遇到的一道面试题,后来也确实在工作中实际遇到了。于是记录一下,如何(优雅的)比较两个未知结构的json。假设,现在有两个简单的json文件。{"id":1,"name":"testjson01","isadmin":true}{"isadmi
Easter79 Easter79
3年前
thymeleaf在工作中常用的属性及表达式使用详解(三)
1.1 thymeleaf的基础知识介绍    1.1.1 标准表达式介绍它们分为四类:1.变量表达式2\.选择表达式(星号表达式)3\.消息表达式(井号表达式,资源表达式)通常做国际化4.URL表达式    
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
9个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这
Easter79
Easter79
Lv1
今生可爱与温柔,每一样都不能少。
文章
2.8k
粉丝
5
获赞
1.2k