FC ConcursosFC Concursos

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

  1. ao método findAll existente na classe Departamento.
  2. a uma query nomeada por meio da anotação @NamedQuery na classe Departamento.
  3. ao comando SELECT da classe Departamento, nomeado pela anotação @SQLQuery.
  4. ao método findAll, que será criado na classe Departamento, quando esta instrução for executada.
  5. 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

Continue aprendendo