Apoio Especializado - Tecnologia da Informação - Desenvolvimento de Sistemas
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:
APostMapping;
BRestController;
CGetMapping;
DRequestBody;
EPathParam.
Revelar gabarito e comentário▾
GabaritoD — RequestBody;
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Anotações Spring Boot para REST
Gabarito: letra D. Para receber os dados da requisição no formato JSON em um parâmetro de método em um controlador REST do Spring Boot, a anotação correta é @RequestBody. Essa anotação vincula o corpo da requisição HTTP a um objeto Java, realizando a desserialização automática do JSON.
A questão testa o conhecimento das anotações mais comuns do Spring MVC para construção de APIs REST. Vamos analisar cada alternativa:
Alternativa A — ❌ Incorreta
@PostMapping é uma anotação de nível de método que mapeia requisições HTTP POST para o método. Ela não é usada em parâmetros.
Alternativa B — ❌ Incorreta
@RestController é uma anotação de classe que combina @Controller e @ResponseBody, indicando que a classe é um controlador onde cada método retorna dados diretamente (não uma view). Não se aplica a parâmetros.
Alternativa C — ❌ Incorreta
@GetMapping é similar ao @PostMapping, mas para requisições GET. Também é anotação de método, não de parâmetro.
Alternativa D — ✅ Correta ⟵ GABARITO
@RequestBody é a anotação de parâmetro usada para extrair o corpo da requisição e convertê-lo para o tipo do parâmetro. No contexto REST com Spring, o formato padrão de serialização é JSON (quando o Jackson está no classpath). Assim, Breno deve usá-la para receber a entidade no formato JSON.
Alternativa E — ❌ Incorreta
@PathVariable (escrito erroneamente como @PathParam na alternativa) é usada para extrair valores da URI (partes variáveis do path), não do corpo da requisição.
PEGA ESSA DICA!
Lembre-se do papel de cada anotação: @RequestBody → corpo da requisição; @PathVariable → parâmetros de URL; @RequestParam → parâmetros de query string. Em APIs REST, @RequestBody é essencial para operações POST, PUT e PATCH que enviam dados no corpo.