Thymeleafから現在の日付(および最終的には時刻)を印刷するにはどうすればよいですか?私はこれらの関数を試しています: http://www.thymeleaf.org/doc/tutorials/2.1/usingthymeleaf.html#dates しかし、それらを機能させることができません。
これで試してください:
_${#dates.format(#dates.createNow(), 'dd MMM yyyy HH:mm')}
_
Java.util.Date()
オブジェクトが作成され、必要に応じてフォーマットされます。
_#calendars
_ユーティリティオブジェクトを使用
これは代替方法です。
_${#calendars.format(#calendars.createNow(), 'dd MMM yyyy HH:mm')}
_
結果は同じになります。
これは私にとってはうまくいきます:
${#dates.format(#dates.createNow(),'YYYY/MM/dd HH:mm')}
Date
は#dates
ユーティリティによって処理されます。
新しいLocalDateTime
、LocalDate
クラスは、#temporals
ユーティリティによって処理されます。
形式を設定します:
<p th:text="${#dates.format(standardDate, 'dd-MM-yyyy HH:mm')}"></p>
<p th:text="${#temporals.format(localDateTime, 'dd-MM-yyyy HH:mm')}"></p>
<p th:text="${#temporals.format(localDate, 'MM-yyyy')}"></p>
それをビューに送信する必要がある場所次のように:
model.addAttribute("standardDate", new Date());
model.addAttribute("localDateTime", LocalDateTime.now());
model.addAttribute("localDate", LocalDate.now());
LocalDate
のフォーマットは、時間フィールドをスキップして、特定の日付フィールドのみを指定する場合にのみ可能です。
出力結果:
24-05-2019 21:57
24-05-2019 21:57
24-05-2019
Thymeleafで現在の日付と時刻を取得するもう1つの方法は、
${execInfo.now}
現在の日付と時刻(
${execInfo.now}
)、テンプレートエンジンがこのテンプレートの実行を開始した瞬間に対応するCalendarオブジェクト。
WebContextを作成して、コンテキスト変数を変更できます。
WebContext ctx = new WebContext(request, servletContext, request.getLocale());
コンテキストが作成されると、テンプレートエンジンの2つの値を保持するオブジェクトが作成されます。オブジェクト名はexecInfo
です。 2つの変数はtemplateName
とnow
です。これらの変数は、テンプレートのどこからでもアクセスできます。
あなたがこのようにすることができる日付形式をフォーマットする必要がある場合、
WebContext ctx = new WebContext(request, servletContext, request.getLocale());
ctx.setVariable("today", dateFormat.format(cal.getTime()));
例:
Current time : <div th:text="${execInfo.now.time}">Wed Feb 10 13:55:58 IST 2016</div>
これがうまくいくことを願っています:
<b th:text="${#execInfo.now.time}"></b>