Questão nº 30
Questão de Tecnologia da Informação · FCC TRT5 2022 (nº 30)
Em uma aplicação construída com Spring Boot, em condições ideais, há um arquivo index.html, onde consta o link abaixo.
<a href="validar"> Validar </a>
Ao clicar nesse link uma requisição é enviada para uma classe anotada com @RestController, onde consta o método seguinte.
public String getValida() {
return "Validado";
}
Para que essa requisição seja direcionada corretamente ao método getValida(), esse método precisa estar anotado, imediatamente antes de sua declaração, com
- A@MappingRequest("/validar")
- B@ServletMapping(path="validar")
- C@Mapping(path="/validar")
- D@ServletMapping("/validar")
- E@RequestMapping("/validar") (alternativa correta)
Resposta comentada
Gabarito Alternativa E
Em Spring Boot, para que uma URL específica (como `/validar`) seja atendida por um método em sua aplicação, usamos anotações que "mapeiam" essa URL ao método. Isso significa que, quando alguém acessa aquela URL, o Spring sabe exatamente qual pedaço de código deve executar.
(A) Incorreta: `@MappingRequest` não é uma anotação padrão do Spring para mapeamento de requisições.
(B) Incorreta: `@ServletMapping` é uma anotação do pacote `javax.servlet.annotation` (API de Servlets Java) e não é usada diretamente para mapear métodos em controladores Spring Boot.
(C) Incorreta: A anotação `@Mapping` não existe sozinha no Spring para mapear requisições. Ela faz parte de outras anotações mais completas, como `@RequestMapping`, `@GetMapping`, etc. É uma pegadinha que usa uma palavra-chave do conceito correto, mas de forma incompleta ou inexistente como anotação independente.
(D) Incorreta: Assim como a alternativa B, `@ServletMapping` não é a anotação correta para mapear métodos em controladores Spring Boot.
(E) Correta: A anotação `@RequestMapping("/validar")` é a forma padrão e correta no Spring Framework (e, consequentemente, no Spring Boot) para mapear uma requisição HTTP (neste caso, uma requisição GET feita pelo link `<a>`) para um método específico dentro de uma classe controladora.
Fonte: FCC TRT5 2022 Técnico Judiciário - Área Apoio Especializado - Especialidade Tecnologia da Informação (Caderno Tipo 001). Reproduzida para fins de estudo.