Questão FC373626
Considere o método abaixo, existente em uma classe de uma aplicação Java em condições ideais, que utiliza JPA 2.0. Considere a execução com sucesso de um método chamado conectar, q
Plataforma Java EE
FCC · 2022
Considere o método abaixo, existente em uma classe de uma aplicação Java em condições ideais, que utiliza JPA 2.0. Considere a execução com sucesso de um método chamado conectar, que estabelece a conexão com um banco de dados, e do método desconectar, que encerra a conexão. Considere também que manager é um objeto do tipo EntityManager, criado com sucesso no método conectar.

Nesse método, "Departamento.findAll" refere-se
- ao método findAll existente na classe Departamento.
- a uma query nomeada por meio da anotação @NamedQuery na classe Departamento.
- ao comando SELECT da classe Departamento, nomeado pela anotação @SQLQuery.
- ao método findAll, que será criado na classe Departamento, quando esta instrução for executada.
- a um método de uma stored procedure que será executada no banco de dados, retornando todos os departamentos cadastrados.
Mostrar resposta e comentário
Gabarito
B
Comentário do professor
Departamento.findAll é o identificador de uma named query declarada na entidade Departamento com a anotação @NamedQuery. Essa anotação associa um nome (string) a uma consulta JPA (JPQL) pré-definida, por exemplo:
@NamedQuery(name="Departamento.findAll", query="SELECT d FROM Departamento d").
Em tempo de execução, o EntityManager recupera essa consulta pelo nome usando createNamedQuery("Departamento.findAll"), retornando um objeto Query ou TypedQuery que pode ser executado com getResultList() ou getSingleResult().
Named queries são convenientes porque centralizam a definição da consulta na entidade, permitem validação/otimização em implantação e evitam concatenação dinâmica de strings no código.
Conteúdo do catálogo FC Concursos · Atualizado em