1. Обзор
В этом кратком руководстве мы рассмотрим, как мы можем использовать массивы в Thymeleaf. Для удобства настройки мы собираемся использовать инициализатор spring-boot для начальной загрузки нашего приложения.
Основы Spring MVC и Thymeleaf можно найти здесь .
2. Зависимость от Тимелифа
В вашем pom.xml файл, единственные зависимости, которые нам нужно добавить, – это SpringMVC и Thymeleaf:
org.springframework.boot spring-boot-starter-thymeleaf org.springframework.boot spring-boot-starter-web
3. Контроллер
Для простоты давайте использовать контроллер только с одним методом, который обрабатывает запросы GET .
Это отвечает передачей массива объекту модели, который сделает его доступным для представления:
@Controller public class ThymeleafArrayController { @GetMapping("/arrays") public String arrayController(Model model) { String[] continents = { "Africa", "Antarctica", "Asia", "Australia", "Europe", "North America", "Sourth America" }; model.addAttribute("continents", continents); return "continents"; } }
4. Вид
На странице просмотра мы собираемся получить доступ к массиву континенты по имени, с которым мы передаем его (контингенты) из нашего контроллера выше .
4.1. Свойства и индексы
Одним из первых свойств, которое мы собираемся проверить, является длина массива. Вот как мы можем это проверить:
......
И, глядя на фрагмент кода выше, который находится на странице просмотра, мы должны заметить использование ключевого слова th:text . Мы использовали его для печати значения переменной внутри фигурных скобок, в данном случае длины массива.
Следовательно, мы получаем доступ к значению каждого элемента массива континентов по его индексу точно так же, как мы это делаем в нашем обычном коде Java :
Как мы видели в приведенном выше фрагменте кода, каждый элемент доступен через его индекс. Мы можем перейти сюда , чтобы узнать больше о выражениях в T thymeleaf .
4.2. Итерация
Аналогично, мы можем последовательно перебирать элементы массива .
В Тимелиф, вот как мы можем этого добиться:
При использовании th:каждое ключевое слово для итерации по элементу массива мы не ограничиваемся использованием только тегов списка. Мы можем использовать любой HTML-тег, способный отображать текст на странице. Например:
В приведенном выше фрагменте кода каждый элемент будет отображаться в отдельном теге .
4.3. Служебные функции
Наконец, мы собираемся использовать функции служебного класса для изучения некоторых других свойств массива.
Давайте взглянем на это:
The greatest continents.
Europe is a continent: .
Array of continents is empty .
Сначала мы запрашиваем длину массива, а затем проверяем, является ли Европа элементом массива континенты.
Наконец, мы проверяем, что массив континенты пуст или нет.
5. Заключение
В этой статье мы узнали, как работать с массивом inT thymeleaf , проверяя его длину и получая доступ к его элементам с помощью индекса. Мы также узнали, как перебирать его элементы в Thymeleaf.
Наконец, мы видели использование служебных функций для проверки других свойств массива.
И, как всегда, полный исходный код этой статьи можно найти на Github .