Trabalhando com matrizes no Thymeleaf
1. Visão geral
Neste tutorial rápido, vamos ver como podemos usar matrizes no Thymeleaf. Para uma configuração fácil, usaremos um inicializador spring-boot para inicializar nosso aplicativo.
Os fundamentos do Spring MVC e Thymeleaf podem ser encontradoshere.
2. Dependência de Thymeleaf
Em nosso arquivopom.xml, as únicas dependências que precisamos adicionar são SpringMVC e Thymeleaf:
org.springframework.boot
spring-boot-starter-thymeleaf
org.springframework.boot
spring-boot-starter-web
3. O controlador
Para simplificar, vamos usar um controlador com apenas um método que lida com solicitações deGET.
Isso responde passando uma matriz para o objeto de modelo que o tornará acessível para a visualização:
@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. A vista
Na página de visualização, vamos acessar o arraycontinents pelo nome com o qual passamos (continentes) deour controller above.
4.1. Propriedades e índices
Uma das primeiras propriedades que vamos inspecionar é o comprimento da matriz. É assim que podemos verificar:
......
E olhando para o trecho de código acima, que é da página de visualização, devemos notar o uso da palavra-chaveth:text. Nós o usamos para imprimir o valor da variável dentro das chaves, neste caso, o comprimento da matriz.
Consequentemente,we access the value of each element of the array continents by its index just like we use to do within our normal Java code:
Como vimos no fragmento de código acima, cada elemento é acessível por meio de seu índice. Podemos irhere para aprender mais sobre as expressões em Thymeleaf.
4.2. Iteração
Da mesma forma,we can iterate over the elements the array sequentially.
No Thymeleaf, aqui está como podemos conseguir isso:
Ao usarth:each keyword to iterate over the element of an array, não estamos restritos a usar apenas tags de lista. Podemos usar qualquer tag HTML capaz de exibir texto na página. Por exemplo:
No trecho de código acima, cada elemento será exibido em sua própria tag<h4></h4> separada.
4.3. Funções de utilidade
Finalmente, vamos empregar o uso de funções de classe de utilidade para examinar algumas outras propriedades do array.
Vamos dar uma olhada nisso:
The greatest continents.
Europe is a continent: .
Array of continents is empty .
Consultamos o comprimento da matriz primeiro e, em seguida, verificamos seEurope é um elemento da matrizcontinents.
Por último, verificamos se o arraycontinents está vazio ou não.
5. Conclusão
Neste artigo, aprendemos como trabalhar com uma matriz em Thymeleaf verificando seu comprimento e acessando seus elementos usando um índice. Também aprendemos como iterar seus elementos no Thymeleaf.
Por fim, vimos o uso de funções utilitárias para inspecionar outras propriedades de uma matriz.
E, como sempre, o código-fonte completo deste artigo pode ser encontradoover on Github.