Thymeleafリストユーティリティオブジェクト

1. 概要

http://www.thymeleaf.org/[Thymeleaf]は、HTMLを処理および作成するためのJavaテンプレートエンジンです。
このクイックチュートリアルでは、Thymeleafの_lists_ユーティリティオブジェクトを調べて、一般的なリストベースの操作を実行します。

2. 計算サイズ

まず、* _size_メソッドはリストの長さを返します。* _th:text_属性を使用して、リストを含めることができます。
size: <span th:text="${#lists.size(myList)}"/>
_myList_は私たち自身のオブジェクトです。 link:/thymeleaf-in-spring-mvc [コントローラー経由]で合格しました:
@GetMapping("/size")
public String usingSize(Model model) {
    model.addAttribute("myList", getColors());
    return "lists/size";
}

3. リストが空かどうかを確認する

*指定されたリストに要素がない場合、_isEmpty_ method *はtrueを返します。
<span th:text="${#lists.isEmpty(myList)}"/>
一般に、このユーティリティメソッドは条件付きで使用されます– _th:if_および_th:unless_:
<span th:unless="${#lists.isEmpty(myList)}">List is not empty</span>

4. メンバーシップの確認

  • contains method *は、要素が指定されたリストのメンバーであるかどうかを確認します。

myList contains red: <span th:text="${#lists.contains(myList, 'red')}"/>
同様に、* containsAll_メソッドを使用して、複数の要素のメンバーシップを確認できます*。
myList contains red and green: <span th:text='${#lists.containsAll(myList, {"red", "green"})}'/>

5. ソート

  • _sort_メソッド*を使用すると、リストをソートできます。

sort: <span th:text="${#lists.sort(myList)}"/>

sort with Comparator: <span th:text="${#lists.sort(myList, reverse)}"/>
ここでは、2つのオーバーロードされた_sort_メソッドがあります。 この例では、モデルからこのコンパレータを取得しています。

6. _List_への変換

最後に、* _ toList_メソッドを使用して__Iterable__sと配列を__List__sに変換できます。*
<span th:with="convertedList=${#lists.toList(myArray)}">
    converted list size: <span th:text="${#lists.size(convertedList)}"/>
</span>
ここでは、新しい_List _、_ convertedList_を作成し、そのサイズを#_lists.size._で出力しています。

7. 概要

このチュートリアルでは、Thymeleafの組み込み_lists_ユーティリティオブジェクトと、それを効果的に使用する方法を調査しました。
いつものように、すべての例のソースコードはhttps://github.com/eugenp/tutorials/tree/master/spring-thymeleaf-2[GitHubで]で入手できます。