Computação Múltipla Escolha

A definição de componentes para uso com o framework Spring é muito simples, efetuada com base em classes comuns e inclusão das anotações corretas. Qual anotação deve ser adotada para que a classe se transforme em um controlador de serviços do tipo REST?

A definição de componentes para uso com o framework Spring é muito simples, efetuada com base em classes comuns e inclusão das anotações corretas. Qual anotação deve ser adotada para que a classe se transforme em um controlador de serviços do tipo REST?

  1. PutMapping.
  2. GetMapping.
  3. RestController.
  4. PostMapping.
  5. Controller.

Resolução completa

Explicação passo a passo

C
Alternativa C

Alternativa C - RestController

A questão aborda o uso de anotações no framework Spring, especificamente na construção de aplicações web e APIs REST. Para responder corretamente, é necessário distinguir entre anotações de controle de fluxo de requisições HTTP e anotações que definem o tipo de componente da aplicação.

Análise Detalhada

No ecossistema Spring Framework, existem anotações específicas para marcar classes como beans gerenciados pelo container. No contexto de desenvolvimento web, a diferença principal reside entre controladores tradicionais e controladores RESTful.

O Papel de Cada Anotação

AnotaçãoNívelFunção Principal
@ControllerClasseDefine um controlador MVC tradicional, geralmente usado para retornar nomes de views (páginas HTML/JSP).
@RestControllerClasseDefine um controlador REST. Combina @Controller + @ResponseBody, indicando que o retorno dos métodos será serializado (JSON/XML) diretamente na resposta HTTP.
@GetMapping / @PostMapping / @PutMappingMétodoMapeiam verbos HTTP específicos (GET, POST, PUT) para métodos dentro de uma classe controladora já existente.

Por que as outras alternativas estão incorretas?

  • A, B e D (PutMapping, GetMapping, PostMapping): Estas são anotações de nível de método. Elas indicam qual verbo HTTP deve chamar aquele método específico, mas não transformam a classe inteira em um controlador por si sós. Sem a anotação de classe correta (como @RestController ou @Controller), elas não funcionariam adequadamente.
  • E (Controller): Embora seja uma anotação de classe válida, ela é destinada ao padrão MVC tradicional (Model-View-Controller). Se usada para criar uma API REST, seria necessário adicionar manualmente a anotação @ResponseBody em cada método para garantir que os dados sejam retornados como JSON. A anotação @RestController já faz isso automaticamente.

Conclusão

Para transformar uma classe em um controlador de serviços do tipo REST no Spring, a anotação esteriotípica correta é @RestController. Ela instrui o framework a tratar a classe como um endpoint de API, onde os objetos retornados são convertidos automaticamente para formatos de troca de dados como JSON.

Portanto, a alternativa correta é a C.

Tem outra questão para resolver?

Resolver agora com IA

Mais questões de Computação

Ver mais Computação resolvidas

Tem outra questão de Computação?

Cole o enunciado, tire uma foto ou descreva o problema — a IA resolve com explicação completa em segundos.