Thymeleaf在模板中使用 #dates 或 #calendars 两个对象来处理日期,这两个对象大部分类似。

开发环境: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/resources/application.yml
设置模板缓存为false,这样修改html页面后刷新浏览器能马上看到结果

spring:
thymeleaf:
cache: false

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.*; @Controller
public class TestController {
@RequestMapping("/")
public String test(Model model){
Calendar cal = Calendar.getInstance();
Date date = cal.getTime(); Calendar cal1 = Calendar.getInstance();
Calendar cal2 = Calendar.getInstance();
cal1.add(Calendar.DATE, 1);
cal2.add(Calendar.DATE, 2); Date[] arr = new Date[]{cal1.getTime(), cal2.getTime()};
List list = Arrays.asList(arr);
Set set = new HashSet(list); model.addAttribute("date", date);
model.addAttribute("cal", cal);
model.addAttribute("arr", arr);
model.addAttribute("list", list);
model.addAttribute("set", set); return "test";
}
}

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

<div>格式化日期<div>
format(date)
<div th:text="${#dates.format(date)}"></div>
formatISO(date)
<div th:text="${#dates.formatISO(date)}"></div>
format(date,'yyyy-MM-dd HH:mm:ss')
<div th:text="${#dates.format(date,'yyyy-MM-dd HH:mm:ss')}"></div>
format(cal)
<div th:text="${#calendars.format(cal)}"></div>
formatISO(date)
<div th:text="${#calendars.formatISO(date)}"></div>
format(date,'yyyy-MM-dd HH:mm:ss')
<div th:text="${#calendars.format(date,'yyyy-MM-dd HH:mm:ss')}"></div>
arrayFormat(arr)
<div th:each="date : ${#dates.arrayFormat(arr)}">
<div th:text="${date}"></div>
</div>
listFormat(list,'yyyy-MM-dd')
<div th:each="date : ${#dates.listFormat(list,'yyyy-MM-dd')}">
<div th:text="${date}"></div>
</div>
setFormat(set)
<div th:each="date : ${#dates.setFormat(set)}">
<div th:text="${date}"></div>
</div>
<div>获取日期<div>
day(date) 第几天
<div th:text="${#dates.day(date)}"></div>
month(date) 月份
<div th:text="${#dates.month(date)}"></div>
monthName(date) 月份名称
<div th:text="${#dates.monthName(date)}"></div>
monthNameShort(date) 月份名称简称
<div th:text="${#dates.monthNameShort(date)}"></div>
year(date) 年份
<div th:text="${#dates.year(date)}"></div>
dayOfWeek(date) 星期几索引
<div th:text="${#dates.dayOfWeek(date)}"></div>
dayOfWeekName(date) 星期几名称
<div th:text="${#dates.dayOfWeekName(date)}"></div>
dayOfWeekNameShort(date) 星期几名称简称
<div th:text="${#dates.dayOfWeekNameShort(date)}"></div>
hour(date) 时
<div th:text="${#dates.hour(date)}"></div>
minute(date) 分
<div th:text="${#dates.minute(date)}"></div>
second(date) 秒
<div th:text="${#dates.second(date)}"></div>
millisecond(date) 毫秒
<div th:text="${#dates.millisecond(date)}"></div>

浏览器访问:http://localhost:8080
页面输出:

格式化日期
format(date)
2019年10月13日 下午10时35分32秒
formatISO(date)
2019-10-13T22:35:32.484+08:00
format(date,'yyyy-MM-dd HH:mm:ss')
2019-10-13 22:35:32
format(cal)
2019年10月13日 下午10时35分32秒
formatISO(date)
2019-10-13T22:35:32.484+08:00
format(date,'yyyy-MM-dd HH:mm:ss')
2019-10-13 22:35:32
arrayFormat(arr)
2019年10月14日 下午10时35分32秒
2019年10月15日 下午10时35分32秒
listFormat(list,'yyyy-MM-dd')
2019-10-14
2019-10-15
setFormat(set)
2019年10月15日 下午10时35分32秒
2019年10月14日 下午10时35分32秒
获取日期
day(date) 第几天
13
month(date) 月份
10
monthName(date) 月份名称
十月
monthNameShort(date) 月份名称简称
十月
year(date) 年份
2019
dayOfWeek(date) 星期几索引
1
dayOfWeekName(date) 星期几名称
星期日
dayOfWeekNameShort(date) 星期几名称简称
星期日
hour(date) 时
22
minute(date) 分
35
second(date) 秒
32
millisecond(date) 毫秒
484

Thymeleaf对象的使用:日期对象的更多相关文章

  1. JavaScript Date 对象 实现 时间戳=>日期对象 ,时间戳=>字符串,字符串=>时间戳,获取一年内所有的星期

    由于业务需求要写一个日历,日历好写,但是,要标出周六和周日为红色,用到的部分核心函数如下: <script> /* *时间戳=>日期对象 * return Number * */ f ...

  2. JS内置对象-String对象、Date日期对象、Array数组对象、Math对象

    一.JavaScript中的所有事物都是对象:字符串.数组.数值.函数... 1.每个对象带有属性和方法 JavaScript允许自定义对象 2.自定义对象 a.定义并创建对象实例 b.使用函数来定义 ...

  3. js对象 1字符串对象2时间日期对象3数字对象

    1字符串对象  直接对字符操作 var str = "这,是,不,是,字,符,串";        //字符串转数组  字符串.split(分隔符)        var arr ...

  4. js之Date(日期对象)

    通过日期对象我们可以进行一些对日期时间的操作处理 一.日期对象的创建: var myDate=new Date() 二.Date对象方法: Link:http://www.w3school.com.c ...

  5. java基础1.5版后新特性 自动装箱拆箱 Date SimpleDateFormat Calendar.getInstance()获得一个日历对象 抽象不要生成对象 get set add System.arrayCopy()用于集合等的扩容

    8种基本数据类型的8种包装类 byte Byte short Short int Integer long Long float Float double Double char Character ...

  6. safari 日期对象新建new Date( timeStr ) 参数TimeStr格式

    这是一个浏览器兼容的问题,在此总结一下,别老在这掉坑. 先坐下测试 var timeStrArray = [ '2016-10-04', '2016.10.04', '2016/10/04', '10 ...

  7. js 日期对象Date以及传参

    创建一个日期对象,日期对象可传参new Date() 创建日期对象getFullYear() 获取年份 getMonth() 获取月份 返回值是 0(一月) 到 11(十二月) 之间的一个整数 get ...

  8. 日期对象-Date

    新建日期对象  var date = new Date(); getTime()         从 1970年 1月 1日开始计算到 Date 对象中的时间之间的毫秒数. getFullYear() ...

  9. JavaScript内置对象(字符串,数组,日期的处理)

    Date 日期对象 日期对象可以储存任意一个日期,并且可以精确到毫秒数(1/1000 秒). 定义一个时间对象 : var Udate=new Date(); 注意:使用关键字new,Date()的首 ...

随机推荐

  1. UiPath Read CSV 中文乱码

    问题:UiPath 读取.CSV文件时,出现中文乱码. 解决1: 修改CSV文件的编码为UTF-8 解决2: 设置Read CSV Activity的 encoding属性为csv相应的编码格式 参考 ...

  2. 利用keras自带房价数据集进行房价预测

    import numpy as np from keras.datasets import boston_housing from keras import layers from keras imp ...

  3. 如何安装 IntelliJ IDEA 最新版本——详细教程

    IntelliJ IDEA 简称 IDEA,被业界公认为最好的 Java 集成开发工具,尤其在智能代码助手.代码自动提示.代码重构.代码版本管理(Git.SVN.Maven).单元测试.代码分析等方面 ...

  4. mysql的锁机制详解

    这段时间一直在学习mysql数据库.项目组一直用的是oracle,所以对mysql的了解也不深.本文主要是对mysql锁的总结. Mysql的锁主要分为3大类: 表级锁:存储引擎为Myisam.锁住整 ...

  5. pyecharts画图总结

    pyecharts 画图归纳 将本地文件导入到Pyecharts: test = open(filename, 'r') data = test.readlines() test.close() 如果 ...

  6. Ubuntu 18.04安装MySQL

    安装 MySQL 服务端 sudo apt-get install mysql-server 等待安装完成. 检查 mysql 服务状态 servive mysql status 登录 mysql 客 ...

  7. 【漏洞预警】Redis 4.x/5.x 远程命令执行高危漏洞

    2019年7月09日,阿里云应急响应中心监测到有安全研究人员披露Redis 4.x/5.x 远程命令执行高危漏洞利用代码工具.针对未授权或弱口令的Redis服务,攻击者通过构造特定请求,成功利用漏洞可 ...

  8. 网站如何免费升级到HTTPS?

    最近在做网站SSL升级,看似简单的操作还是会遇到各种问题,现在和大家分享一下. 证书申请: 公司是创业公司,为了省成本准备申请免费证书,对比了一些证书商,最后选择使用沃通wosign提供的证书服务,发 ...

  9. 关于字符串的格式化----format与%

    格式化字符串一般有两种方法 1.%(d整数,s字符,f浮点数) 2.format 用处极为广泛且限制不多 注意:第一种对于数组的传递会报TypeError,所以必须传递数组 a = (1, 2, 3) ...

  10. 《工作笔记:移动web页面前端开发总结》

    工作笔记:移动web页面前端开发总结 移动web在当今的发展速度是一日千里,作为移动领域的门外汉,在这段时间的接触后,发现前端开发这一块做一个小小的总结. 1.四大浏览器内核 1.Trident (I ...