Engenharia Múltipla Escolha

Trabalhando com JPA, as instruções DML ficam transparentes para o programador, sendo executadas a partir de métodos específicos da classe EntityManager. Qual seria o método utilizado para encapsular uma instrução do tipo INSERT?

Trabalhando com JPA, as instruções DML ficam transparentes para o programador, sendo executadas a partir de métodos específicos da classe EntityManager. Qual seria o método utilizado para encapsular uma instrução do tipo INSERT?

  1. merge
  2. getReference
  3. persist
  4. getResultList

Resolução completa

Explicação passo a passo

C
Alternativa C

Alternativa C

O contexto da questão é o Java Persistence API (JPA), que é uma especificação para gerenciar dados relacionais em aplicações Java usando mapeamento objeto-relacional (ORM). O componente principal responsável por essas operações é a classe EntityManager.

Análise das Alternativas

Para identificar a resposta correta, precisamos entender o propósito de cada método listado na classe EntityManager:

  • persist: Este método é utilizado para tornar persistente um novo objeto. Quando chamado sobre uma entidade nova, o JPA gera e executa uma instrução INSERT no banco de dados ao final da transação. É a forma padrão de inserir novos registros.
  • merge: Utilizado para copiar o estado de uma entidade desvinculada (detached) para a unidade de persistência atual. Embora possa gerar um INSERT se a entidade não existir, seu foco principal é a atualização ou consolidação de estados existentes.
  • getReference: Retorna uma referência (proxy) para uma entidade sem carregá-la imediatamente do banco de dados. É voltado para leitura (SELECT), não para manipulação de dados.
  • getResultList: É um método da interface Query usado para recuperar uma lista de resultados de uma consulta. Também está relacionado à leitura (SELECT), não à escrita.

Conclusão

A função específica de criar um novo registro no banco de dados, traduzindo-se como uma instrução SQL INSERT, é realizada pelo método persist. Ele garante que a entidade seja salva no banco quando a transação for confirmada.

Portanto, a alternativa correta é a C.

Tem outra questão para resolver?

Resolver agora com IA

Mais questões de Engenharia

Ver mais Engenharia resolvidas

Tem outra questão de Engenharia?

Cole o enunciado, tire uma foto ou descreva o problema — a IA resolve com explicação completa em segundos.