Você está aqui: JPA - Java Persistence Architecture API - Arquitetura de Persistência Java ::: Interfaces, Classes e Componentes ::: EntityManager

Usando o método find() da interface EntityManager para pesquisar uma instância de uma entidade em suas aplicações JPA

Quantidade de visualizações: 8333 vezes
O método find() da interface EntityManager é usado quando precisamos pesquisar e retornar uma instância de uma determinada classe e retorná-la a partir do contexto de persistência. Veja sua assinatura:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

<T> T find(java.lang.Class<T> entityClass,
  java.lang.Object primaryKey)

Veja que o método possui dois parâmetros: o tipo de classe da entidade e o valor a ser usado para pesquisar a entidade de acordo com sua chave primária. Veja um exemplo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

package estudosjpa;

import entidades.Cliente;
import javax.persistence.*;

public class EstudosJPA {
  public static void main(String[] args) {
    // vamos criar o EntityManagerFactory a partir do contexto de persistência
    EntityManagerFactory emf = 
      Persistence.createEntityManagerFactory("LocadoraService");
    
    // vamos obter um objeto da interface EntityManager
    EntityManager em = emf.createEntityManager();
    
    // vamos obter o cliente com o id 4
    Cliente c = em.find(Cliente.class, 4);
    // o cliente foi encontrado? vamos mostrar seus dados
    if(c != null){
      System.out.println("Id: " + c.getId());
      System.out.println("Nome: " + c.getNome());
      System.out.println("E-Mail: " + c.getEmail());
      System.out.println("Data de Cadastro: " + c.getDataCadastro());
    }
    else{
      System.out.println("Registro não encontrado.");  
    }
  
    em.close(); // fecha o EntityManager
    emf.close(); // fecha o EntityManagerFactory
  }
}

Ao executar este código teremos um resultado parecido com:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

Id: 4
Nome: Carlos Augusto Marcelo Ramos
E-Mail: carlos@arquivodecodigos.net
Data de Cadastro: Fri May 31 12:32:51 BRT 2013

O método find() da interface EntityManager pode atirar uma exceção do tipo IllegalArgumentException se o primeiro argumento não representar um tipo de entidade ou o segundo argumento não for um tipo válido para a chave primária da entidade ou for nulo (null).

Link para compartilhar na Internet ou com seus amigos:

Veja mais Dicas e truques de JPA - Java Persistence Architecture API - Arquitetura de Persistência Java

Dicas e truques de outras linguagens

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: Delphi
6º lugar: C
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 39 usuários muito felizes estudando em nosso site.