Trabalhando com matrizes no Thymeleaf

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.