

Seu próximo nível começa aqui
Com a Assinatura Ilimitada, você tem tudo que precisa para sua aprovação.
Com a Assinatura Ilimitada, você combina prática, teoria e método em uma única assinatura com tudo que você precisa para sua aprovação.
O Spring é um dos frameworks mais consolidados no ecossistema Java para o desenvolvimento de aplicações corporativas.
Por meio de conceitos como Inversão de Controle (IoC) e Injeção de Dependências (DI), o Spring promove o baixo acoplamento entre componentes, enquanto o Spring Boot simplifica a configuração e a inicialização de projetos por meio de convenções e autoconfiguração.
Considere o seguinte trecho de código utilizando Spring Boot:

Sobre o código apresentado, considerando os conceitos do Spring Framework e o comportamento padrão do Spring Boot, assinale a afirmativa correta.
A anotação @PathVariable no método buscarPorId captura parâmetros enviados no corpo da requisição HTTP, funcionando de forma idêntica à anotação @RequestBody.
A anotação @PostMapping configura o método salvar para responder a requisições do tipo HTTP GET, sendo apenas um alias sintático para @GetMapping com semântica de criação.
A anotação @Autowired realiza a instanciação manual do objeto ProdutoService, exigindo que o desenvolvedor implemente explicitamente o padrão de projeto Factory para que a injeção funcione.
A anotação @RestController é equivalente à combinação das anotações @Controller e @ResponseBody, fazendo com que os métodos da classe retornem os dados diretamente no corpo da resposta HTTP, por padrão em formato JSON.
A anotação @RequestMapping("/produtos") aplicada à classe exige que cada método declare novamente o caminho completo/produtos em suas respectivas anotações de mapeamento, caso contrário os endpoints não serão registrados.
No desenvolvimento de aplicações SaaS com o framework Angular em combinação com o framework Spring Boot, qual seria uma prática apropriada de uso desses frameworks?
Implementar as regras de domínio de negócio com Angular para facilitar sua adaptação a diferentes clientes, enquanto o back-end, implementado com Spring Boot, deve se limitar a operações CRUD e acesso ao banco de dados, de modo a facilitar a evolução da aplicação.
Implementar as regras de negócio no back-end com Spring Boot para garantir segurança e reutilização por múltiplos clientes, enquanto a lógica de apresentação e de controle da interface de usuário deve ser implementada com Angular para garantir a interatividade da aplicação.
Implementar as regras de validação e controle de acesso no front-end com Angular, pois a separação entre cliente e servidor já garante a consistência e segurança dos dados, enquanto o back-end, baseado em Spring Boot deve expor a lógica da aplicação por meio de APIs REST padronizadas.
Implementar o acesso aos dados no front-end com Angular, de modo que validações de dados específicas de usuário possam ser feitas sem gerar sobrecarga no servidor e que a lógica de negócio, implementada no back-end com Spring Boot possa ser independente do esquema do banco de dados.
No framework Spring 7.0.2, é correto afirmar que
a anotação @RequestMapping pode ser utilizada para mapear requisições para métodos de controladores. Se múltiplas anotações @RequestMapping forem detectadas no mesmo elemento, um aviso (warning) será registrado no log e apenas o primeiro mapeamento será utilizado.
a classe ApplicationContext pode ser instanciada para criar uma fábrica avançada, capaz de manter um registro de diferentes beans e suas dependências.
as anotações @ExceptionHandler, @InitBinder e @ModelAttribute aplicam-se apenas a métodos que estão declarados em classe anotada com @ControllerAdvice.
a anotação @SpringBootConfiguration deve ser utilizada na classe principal do projeto, para habilitar o mecanismo de autoconfiguração do Spring Boot.
a classe ComponentScan pode ser instanciada para escanear e detectar automaticamente componentes com conexões incompatíveis.
O Java Spring Boot (Spring Boot) é uma ferramenta open source que simplifica e acelera o desenvolvimento de aplicações web e microsserviços baseados no Spring Framework.
Nesse cenário, assinale a afirmativa que descreve corretamente uma característica do Spring Boot.
Prioriza configuração baseada em XML.
Não permite a utilização de anotações @Profile em conjunto com @Component ou @Configuration.
Não provê suporte à Kotlin.
Fornece configurações padrão para Java Util Logging e Log4j2, mas não para Logback.
Em termos de internacionalização, por padrão, procura pela presença de um pacote de recursos chamado messages na raiz do classpath.
Um arquiteto de software está modernizando a documentação de uma aplicação construída com Spring Boot 3. Ele optou por utilizar a biblioteca springdoc-openapi para expor a interface do Swagger conforme os padrões da especificação OpenAPI 3.x. Ao implementar o controlador responsável pela gestão de inventário, ele precisa anotar um método que recupera um item específico pelo seu código identificador (ex: GET /produtos/{codigo}). Considerando as boas práticas e a compatibilidade com a especificação OpenAPI 3.x, assinale a alternativa que apresenta as anotações específicas de documentação do pacote io.swagger.v3.oas.annotations para descrever, respectivamente, a finalidade do endpoint e o detalhamento do parâmetro recebido na URL.
@Api para a definição do recurso e @ImplicitParam para documentar o código identificador na rota.
@ApiOperation para descrever a ação do método e @ApiParam para detalhar as restrições do código do produto.
@Operation para descrever o objetivo do endpoint e @Parameter para fornecer informações detalhadas sobre o identificador do produto.
@GetMapping para o mapeamento da rota, sendo desnecessário qualquer outro recurso.
Uma equipe de desenvolvimento está utilizando Spring Boot para criar uma API RESTful. Durante os testes, observaram que a aplicação demora a inicializar, principalmente devido à configuração do banco de dados. Para melhorar o tempo de inicialização, decidiram desabilitar a criação automática do esquema de banco de dados ao iniciar a aplicação. A configuração, no application.properties, que desabilita a criação automática do esquema de banco de dados pelo Spring Boot é a
spring.jpa.hibernate.ddl-auto=none
spring.datasource.database-auto=false
spring.jpa.db-sql=disable
spring.jpa.properties.hibernate.db-auto=disable
spring.jpa.create-database-init=false
Com o lançamento do Spring Framework 6.x, diversas mudanças estruturais e técnicas foram introduzidas, exigindo atenção especial de desenvolvedores que desejam migrar aplicações legadas ou iniciar novos projetos com essa versão. Acerca desse assunto, avalie as sentenças a seguir:
O Spring Framework 6.x exige JDK 17 como requisito mínimo e migra completamente para o namespace jakarta.*, tornando incompatíveis bibliotecas que ainda dependem de javax.*.
PORQUE
A principal mudança no Spring Framework 6.x está na substituição do modelo de injeção de dependência tradicional por um modelo baseado exclusivamente em reflexão e proxies dinâmicos.
Sobre as sentenças, assinale a alternativa opção CORRETA.
As duas sentenças são verdadeiras, e a segunda é uma justificativa correta da primeira.
As duas sentenças são verdadeiras, mas a segunda não é uma justificativa correta da primeira.
A primeira sentença é verdadeira, e a segunda é falsa.
A primeira sentença é falsa, e a segunda é verdadeira.
Na interface userMapper, que utiliza o MapStruct para mapear atributos entre classes, deseja-se mapear o atributo e-mail da dasse user para o atributo contactEmail da classe userDTO. Em condições ideais, a anotação que deve ser utilizada para isso é
@MappingOption(src = "email", tar = "contactEmail")
@Mapping (source = "email", target = "contactEmail")
@Mapping("email", "contactEmail")
@MappingTarget("email", "contactEmail")
@MappingOption(from = "email", to = "email")
No contexto do framework Spring, o service discovery é um dos princípios fundamentais de uma arquitetura baseada em microsserviços, pois, quando um cliente se registra no servidor Eureka, este receberá heartbeat messages de cada instância pertencente a um serviço e, caso a mensagem falhe em um horário configurável, a instância poderá ser removida do registro.
Certo
Errado
Um programador está desenvolvendo uma API REST utilizando o Spring Boot. Qual alternativa contém a anotação utilizada para mapear os métodos responsáveis pelo tratamento das requisições recebidas no Spring Boot?
@Service
@RestService
@RestController
@RequestMapping
Considere um profissional que está utilizando Spring Boot 3.2 com suporte à compilação nativa, via GraalVM. Em determinado momento, ele constrói o seguinte código:

A classe Produto possui o seguinte código:
![]()
Durante o processo de geração de imagem nativa com spring-aot e native-image, a aplicação falha ao serializar a resposta JSON da API. Acerca do cenário apresentado, avalie as sentenças a seguir:
A solução para a falha é a adição de um @ReflectionHint ou configurar um arquivo reflect-config.json para garantir que os campos do record sejam acessíveis em tempo de execução.
PORQUE
A serialização falha porque a classe Produto não foi registrada para reflexão no build nativo.
Sobre as sentenças, assinale a alternativa CORRETA.
As duas sentenças são verdadeiras, e a segunda é uma justificativa correta da primeira.
As duas sentenças são verdadeiras, mas a segunda não é uma justificativa correta da primeira.
A primeira sentença é verdadeira, e a segunda é falsa.
A primeira sentença é uma proposição falsa, e a segunda é verdadeira.
Um desenvolvedor Java vai criar uma nova API REST usando Spring e deseja evitar configuração manual extensa (XML ou classes de configuração) para tarefas comuns, como definir o DataSource, configurar o Spring MVC e iniciar um servidor web embutido (por exemplo, Tomcat).
Com base nessa situação hipotética, assinale a opção que apresenta o principal recurso do Spring Boot que, seguindo o princípio de “convenção acerca da configuração”, atende a esse requisito.
inversão de controle (IoC)
Project Reactor
Programação orientada a aspectos (AOP)
Spring Data JPA
autoconfiguração
Os microsserviços da Plataforma Digital do Poder Judiciário (PDPJ) são desenvolvidos com tecnologias de código aberto, são implementados com o uso do Spring framework, e Java é a principal linguagem de programação. De acordo com a documentação da PDPJ, faz parte do ecossistema do Spring Framework o
Data Envers, que é um módulo Hibernate que adiciona funcionalidades de auditoria às entities JPA.
Swagger, que organiza os scripts SQL que são executados no banco de dados, funcionando como um controle de versão.
Flyway, serviço de documentação que descreve APIs RESTful expressas usando JSON.
Zuul, que fornece os recursos de cliente para o serviço de descoberta Eureka.
Netflix Eureka, que tem como principal função ser um ponto único de entrada, distribuindo as requisições entre as diversas instâncias de serviços.
Um Analista de Ti está desenvolvendo uma API com Spring Boot e deseja integrar Swagger para facilitar a documentação e testes dessa API. Para integrar no Swagger com um projeto Spring Boot a abordagem mais adequada é
adicionar as dependências do Swagger manualmente no classpath do projeto.
adicionar as dependências do Swagger no arquivo pom.xml OU build.gradle do projeto Spring Boot.
criar um arquivo separado para todas as configurações do Swagger sem importar as dependências no projeto.
utilizar um plugin extemo para o IDE que automaticamente gera a documentação do Swagger sem configuração adicional.
configurar o servidor de aplicação para disponibilizar a documentação do Swagger sem modificar o código do projeto.
Assinale a alternativa correta.
Spring é um framework de código aberto, também visto como um ecossistema de frameworks, criado com o intuito de simplificar a programação Java e facilitar a criação de aplicações robustas e escaláveis, utilizando conceitos de Inversão de Dependências e Injeção de Controle para gerenciar componentes.
O framework Spring é composto por diversos módulos independentes, como o Spring Boot, o Spring Data, o Spring Security, o Spring MVC, o Spring Cloud, o Spring Business, o Spring Batch e o Spring Web Services, entre outros.
O Spring Boot simplifica o processo de configuração e facilita o desenvolvimento de aplicações standalone, oferecendo configuração automática, dependências pré-definidas e servidores embutidos.
O Core Container é o núcleo do Spring Framework e engloba as funcionalidades essenciais de Inversão de Dependências e Injeção de Controle, fornecendo um ambiente para criação, configuração e gestão de objetos, promovendo um design modular e flexível para aplicações Java.
O Spring Business disponibiliza classes para a construção de aplicações voltadas ao comércio eletrônico, com suporte a transações financeiras. Trata-se de módulo incluído em 2025.
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,
F – V – V.
V – V – F.
F – F – V.
F – V – F.
V – F – V.
O analista Fábio precisa adicionar o suporte a um segundo DataSource, chamado DS2, em uma aplicação baseada em Spring Boot. Cada DataSource da aplicação é conectado a um banco de dados diferente. O projeto com o código da aplicação possui o arquivo de parâmetros do Spring Boot application.properties, que deve ser modificado por Fábio para acelerar a implementação.
Para adicionar o suporte ao segundo banco de dados no Spring Boot, Fábio deve adicionar ao application.properties os parâmetros do DS2 e:
ativar a property spring.datasource.multiple;
configurar a property spring.datasource.active=2;
ativar a property spring.datasource.allow-second;
declarar um bean PropertyMapper para cada DataSource;
declarar um bean ConfigurationProperties para cada DataSource.
A linguagem Java, assim como outras linguagens possui frameworks, ou seja, ferramentas que auxiliam a maximizar o desenvolvimento. Um dos mais utilizados em Java é o Spring, desta forma, analise as afirmativas abaixo e dê valores Verdadeiro (V) ou Falso (F).
( ) O Spring é exclusivamente utilizado para o desenvolvimento de aplicações Android.
( ) O Spring não suporta a criação de APIs RESTful, sendo focado apenas em arquiteturas baseadas em serviços SOAP.
( ) O Spring é um framework de código aberto para desenvolvimento de aplicações Java.
Assinale a alternativa que apresenta a sequência correta de cima para baixo.
F - F - V
F - V - V
V - F - F
V - V - V
Leia o caso a seguir.
Durante a construção de uma aplicação empresarial, a equipe de desenvolvimento está avaliando frameworks para persistência de dados e injeção de dependências. Eles precisam de uma solução que facilite a manutenção e promova a eficiência no consumo de recursos.
Elaborado pelo(a) autor(a).
Considerando esse contexto, a conduta assertiva é
utilizar o Hibernate para injeção de dependências, pois é mais eficiente que o Spring.
escolher o Spring Framework para persistência de dados, já que é mais leve que o Hibernate.
adotar o Spring Framework para injeção de dependências e o Hibernate para persistência de dados.
implementar o Hibernate tanto para injeção de dependências quanto para persistência de dados.
O Spring MVC (Model-View-Controller) é um framework do Spring que facilita o desenvolvimento de aplicativos da web baseados no padrão de arquitetura MVC. Ele fornece um modelo de programação flexível e robusto para criar aplicativos da web, permitindo a separação clara de responsabilidades entre o modelo de dados (Model), a lógica de apresentação (View) e o controle de fluxo (Controller). Qual anotação no Spring MVC é usada para extrair valores de caminho (partes da URL) e passá-los para um método do controlador como argumentos?
@RequestHeader
@RequestParam
@ResponseBody
@PathVariable