Thymeleafオブジェクトの使用:日付オブジェクト

Thymeleafは、テンプレート内の#datesまたは#calendars 2つのオブジェクトを使用して日付を処理しますが、これら2つのオブジェクトはほとんど同じです。

開発環境:IntelliJ IDEA 2019.2.2
Spring Bootバージョン:2.1.8

demoという名前の新しいSpringBootプロジェクトを作成します。


1.Thymeleaf依存関係をpom.xmlに追加します

        <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

 

おすすめ

転載: blog.csdn.net/gdjlc/article/details/102539339