Pular para o conteúdo principal

Questão de Arquitetura de Software — Conceitos Básicos em Arquitetura de Software — FGV 2025

Arquitetura de SoftwareConceitos Básicos em Arquitetura de Software
Código
fg107866
Banca
FGV
Órgão
CPRM
Ano
2025
Nível
Superior
Cargo
Analista em Geociências - Geoprocessamento
Sobre o funcionamento e a arquitetura do Spring Boot, analise as seguintes afirmativas:I. O mecanismo de autoconfiguração (@SpringBootApplication) carrega configurações padrão com base nas dependências presentes no classpath, reduzindo a necessidade de arquivos XML.II. É possível personalizar comportamentos do Spring Boot sobrescrevendo beans padrão definidos pela autoconfiguração.III. O uso de @ComponentScan limita a busca por componentes apenas ao pacote da classe principal, não incluindo subpacotes automaticamente.Está correto o que se afirma em
  1. AI, apenas.
  2. BII, apenas.
  3. CI e III, apenas.
  4. DII e III, apenas.
  5. EI e II, apenas.
Revelar gabarito e comentário

GabaritoE — I e II, apenas.

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: Autoconfiguração e Component Scan

Gabarito: letra E (afirmativas I e II corretas). O Spring Boot utiliza autoconfiguração baseada em dependências do classpath (I) e permite sobrescrever beans padrão (II). Já a afirmativa III é falsa porque @ComponentScan (embutido em @SpringBootApplication) varre o pacote da classe principal e todos os seus subpacotes, não apenas o pacote raiz.

Afirmativa I — ✅ Correta

O mecanismo de autoconfiguração do Spring Boot, ativado pela anotação @SpringBootApplication, identifica bibliotecas no classpath e configura beans automaticamente, reduzindo ou eliminando a necessidade de arquivos XML de configuração. Esse é um dos pilares da convenção sobre configuração do framework.

Afirmativa II — ✅ Correta

A autoconfiguração define beans com condicionais (ex.: @ConditionalOnMissingBean). Se o desenvolvedor declarar seu próprio bean do mesmo tipo (com @Bean, @Component, etc.), ele sobrescreve o bean padrão, permitindo personalização sem desabilitar toda a autoconfiguração.

Afirmativa III — ❌ Incorreta

O comportamento padrão de @ComponentScan (e do @SpringBootApplication que a inclui) é varrer o pacote da classe anotada e todos os seus subpacotes. A banca tenta confundir ao afirmar que a varredura se limita ao pacote principal, mas a documentação oficial do Spring determina que subpacotes são automaticamente incluídos.

NÃO CAIA NESSA!

A afirmativa III inverte o comportamento do @ComponentScan: a anotação inclui subpacotes, não os exclui. Candidatos desatentos podem marcar III como correta, confundindo com a ideia de escopo restrito.

Conclusão: Estão corretas apenas as afirmativas I e II → gabarito letra E.

Link permanente: /questoes/fg107866