Questão nº 43
Questão de Tecnologia da Informação · FCC TRT22 2022 (nº 43)
As versões mais recentes do Spring Boot permitem a configuração de inicialização lenta (lazy initialization), que faz com que os beans sejam criados à medida que são necessários e não durante a inicialização do aplicativo. Uma das maneiras de habilitar a inicialização lenta é colocar
- A`@Lazy(true)` no arquivo `application.properties`
- B`spring.main.lazy-initialization=true` no arquivo `application.properties` (alternativa correta)
- C`set-lazy-initialization=true` no arquivo `spring-boot.xml`
- D`lazy-initialization=true` no arquivo `spring-application-builder.xml`
- E`@SpringMainLazyInitialization` na classe `SpringApplicationBuilder`
Resposta comentada
Gabarito Alternativa B
A inicialização lenta (lazy initialization) no Spring Boot significa que os componentes (chamados beans) do seu aplicativo são criados e configurados apenas no momento em que são realmente necessários, e não todos de uma vez quando o aplicativo é iniciado. Isso pode tornar o início do aplicativo mais rápido e consumir menos memória inicialmente.
- (A) Incorreta: A anotação
@Lazy(true)é usada em classes de configuração ou em beans individuais para habilitar a inicialização lenta para aquele componente específico, e não é colocada no arquivoapplication.properties. Armadilha da banca: Esta é a alternativa mais tentadora porque@Lazyé uma anotação real do Spring para inicialização lenta, mas seu uso e local estão incorretos para a configuração global viaapplication.properties. - (B) Correta: A propriedade
spring.main.lazy-initialization=trueno arquivoapplication.propertiesé a maneira padrão e global de habilitar a inicialização lenta para todos os beans no Spring Boot 2.2 e versões posteriores. - (C) Incorreta:
spring-boot.xmlnão é um arquivo de configuração padrão para o Spring Boot; a configuração é geralmente feita viaapplication.properties,application.ymlou classes Java. Além disso, o nome da propriedade está incorreto. - (D) Incorreta:
spring-application-builder.xmlnão é um arquivo de configuração padrão do Spring Boot. O nome da propriedade também está incompleto para uma configuração global. - (E) Incorreta:
@SpringMainLazyInitializationnão é uma anotação padrão do Spring Boot para essa finalidade, e a classeSpringApplicationBuilderé usada para construir e executar uma aplicação Spring programaticamente, não para receber uma anotação de configuração global como essa.
Fonte: FCC TRT22 2022 Analista Judiciário - Área Apoio Especializado - Especialidade Tecnologia da Informação (Caderno Tipo 1). Reproduzida para fins de estudo.