Questão nº 63

Questão de Tecnologia da Informação · FGV TJ-AP 2024 (nº 63)

FGV2024Analista Judiciário - TI - Desenvolvimento de SistemasTecnologia da Informação
Gabarito: Dver comentário ↓

Breno está criando um serviço REST, que será disponibilizado por meio de um aplicativo Spring Boot. Como ele já conhece o padrão do REST, criou um método de inclusão no controlador, tendo como parâmetro uma entidade do tipo gerenciado pelo serviço.
Para que o parâmetro receba corretamente os dados fornecidos pela requisição, no formato JSON, Breno irá utilizar nesse parâmetro a anotação:

Resposta comentada

Gabarito Alternativa D

Quando um cliente (como um navegador ou aplicativo) envia dados para o seu serviço web (geralmente em formato JSON), o Spring precisa de uma instrução para pegar esses dados do "corpo" da requisição HTTP e transformá-los em um objeto Java que seu método possa usar. A anotação RequestBody faz exatamente isso.

  • (A) Incorreta: PostMapping é uma anotação de nível de método que mapeia requisições HTTP do tipo POST para aquele método. Embora a inclusão de um recurso geralmente use POST, PostMapping não é responsável por extrair os dados do corpo da requisição para um parâmetro do método. Armadilha: É tentador porque "inclusão" remete a POST, mas a pergunta é sobre como o parâmetro recebe os dados, não sobre o tipo de requisição.
  • (B) Incorreta: RestController é uma anotação de nível de classe que combina @Controller e @ResponseBody, indicando que a classe é um controlador REST e que os valores de retorno dos métodos devem ser serializados diretamente para o corpo da resposta HTTP. Não é usada em parâmetros de método.
  • (C) Incorreta: GetMapping é uma anotação de nível de método que mapeia requisições HTTP do tipo GET para aquele método. Requisições GET geralmente não possuem corpo de requisição para enviar dados para inclusão.
  • (D) Correta: RequestBody é a anotação utilizada em um parâmetro de método para indicar que o corpo da requisição HTTP (que conterá os dados JSON) deve ser lido e convertido para o tipo do parâmetro.
  • (E) Incorreta: PathParam (ou PathVariable no Spring) é usado para extrair valores de variáveis presentes na própria URL da requisição (ex: /recursos/{id}). Não é usado para ler dados do corpo da requisição.

Fonte: FGV TJ-AP 2024 Analista Judiciário - TI - Desenvolvimento de Sistemas (Caderno Tipo 1). Reproduzida para fins de estudo.

Continue estudando

Estudar é izi

Pratique milhares de questões como esta, de graça, com explicação e gamificação no Quizinho.

Estudar de graça no Quizinho