Pular para o conteúdo principal

Questão de Programação — Linguagens de programação — FGV 2025

ProgramaçãoLinguagens de programação
Código
fg121766
Banca
FGV
Órgão
TCE-PI
Ano
2025
Nível
Superior
Cargo
Auditor de Controle Externo - Controle Externo - Específica de Tecnologia da Informação - Sistemas, Engenharia de Dados e Ciência de Dados (Manhã)
Spring Boot é uma estrutura de software livre em Java, baseada em microsserviços e que simplifica o processo de configuração e inicialização para o uso de Spring em uma aplicação.Diante desse contexto, analise as afirmativas a seguir e assinale (V) para a verdadeira e (F) para a falsa.( ) Por padrão, o Spring Boot Starter para Redis utiliza Jedis.( ) Cada aplicativo Web Spring Boot inclui um servidor web embutido.( ) Anotações de classe @RestController do Spring em uma aplicação Spring Boot renderizam uma resposta JSON por padrão, desde que Jackson2 esteja no classpath.As afirmativas são, respectivamente,
  1. AF – V – V.
  2. BV – V – F.
  3. CF – F – V.
  4. DF – V – F.
  5. EV – F – V.
Revelar gabarito e comentário

GabaritoD — F – V – F.

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”.

Spring Boot – Comportamentos Padrão

Gabarito: letra D (F – V – F). A primeira afirmativa é falsa (desde o Spring Boot 2.x o cliente Redis padrão é o Lettuce, não o Jedis); a segunda é verdadeira (toda aplicação Web Spring Boot possui servidor embutido); a terceira é falsa (a anotação @RestController por si só não renderiza JSON; ela é uma meta-anotação que combina @Controller e @ResponseBody, e a conversão para JSON depende dos HttpMessageConverters configurados, embora na prática com Jackson presente o JSON seja o formato padrão – a banca considerou o aspecto conceitual de que a anotação não rende­riza diretamente).

A questão exige conhecimento dos defaults do Spring Boot 2.x+, especialmente sobre starters, servidor web e a mecânica de @RestController.

Item 1 – ❌ Falso

"Por padrão, o Spring Boot Starter para Redis utiliza Jedis."

Em versões do Spring Boot anteriores à 2.0, o cliente Redis padrão era o Jedis. Contudo, a partir do Spring Boot 2.x, o starter spring-boot-starter-data-redis passou a usar o Lettuce como cliente padrão, por ser reativo e mais moderno. Portanto, a afirmação está falsa.

Item 2 – ✅ Verdadeiro

"Cada aplicativo Web Spring Boot inclui um servidor web embutido."

Correto. Ao adicionar a dependência spring-boot-starter-web, o Spring Boot auto-configura um servidor web embutido (por padrão, o Tomcat). Isso permite executar a aplicação sem deploy externo, atendendo ao conceito de aplicação autossuficiente.

Item 3 – ❌ Falso

"Anotações de classe @RestController do Spring em uma aplicação Spring Boot renderizam uma resposta JSON por padrão, desde que Jackson2 esteja no classpath."

A anotação @RestController é uma meta-anotação que combina @Controller e @ResponseBody. Ela indica que os métodos retornam o corpo da resposta diretamente, mas o formato da resposta (JSON, XML, etc.) não é definido pela anotação – depende dos HttpMessageConverters configurados na aplicação. Embora o Spring Boot configure automaticamente o MappingJackson2HttpMessageConverter se Jackson estiver no classpath, a afirmação é falsa no sentido estrito: a anotação por si só não renderiza JSON; ela ativa o @ResponseBody, e a conversão é feita pelo conversor. A banca considerou esse detalhe conceitual.

NÃO CAIA NESSA!

A primeira afirmativa explora a mudança de padrão do Spring Boot 1.x para 2.x (Jedis → Lettuce). A terceira afirmativa parece verdadeira na prática, mas a banca foca no papel da anotação: @RestController não renderiza – ela apenas sinaliza que os métodos têm @ResponseBody; a renderização é papel do HttpMessageConverter. Sempre desconfie de afirmações que atribuem renderezação diretamente a anotações.

Conclusão: sequência correta: F – V – F, correspondente à alternativa D.

Link permanente: /questoes/fg121766