Planilha Web - Planilhas e Calculadoras online para estudantes e profissionais de Engenharia Civil, Engenharia Elétrica e Engenharia Mecânica.
E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser. Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book Apenas R$ 32,90
Você está aqui: Hibernate ::: Classes e Componentes ::: Session

Obtendo uma instância persistente no banco de dados usando o método get() da interface Session

Quantidade de visualizações: 5877 vezes
O método get() da interface Session é usado quando queremos obter uma instância persistente a partir do banco de dados. Este método possui a seguinte assinatura (há algumas sobrecargas, mas esta assinatura é a mais comum):

public Object get(Class clazz, Serializable id)
  throws HibernateException

Veja que só precisamos fornecer o nome de classe da instância que queremos obter e o id do registro na tabela do banco de dados. Se a instância existir no banco de dados, esta será retornada. Caso contrário null será retornado.

Veja um trecho de código no qual obtemos um usuário com o id 3 em uma tabela chamada usuarios:

package estudos_hibernate;

import entidades.Usuario;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;

public class Main {
  public static void main(String[] args) {
    Session session = null;
    Transaction tx = null;

    try {
      // aqui nós lemos as configurações do arquivo hibernate.cfg.xml
      // e deixamos o Hibernate pronto para trabalhar
      SessionFactory factory = new
        Configuration().configure().buildSessionFactory();

      // abre uma nova sessão
      session = factory.openSession();

      // inicia uma transação
      tx = session.beginTransaction();

      // vamos obter o usuário com o id 3
      Long idUsuario = 3L;
      Usuario u = (Usuario)session.get(Usuario.class, idUsuario);
      // vamos exibir o nome do usuário obtido
      System.out.println("O nome do usuário obtido é: " + u.getNome());

      // fecha a transação
      tx.commit();
    }
    catch(Exception e) {
      // houve algum problema? vamos retornar o banco de dados
      // ao seu estado anterior
      if(tx != null)
        tx.rollback();
      System.out.println(e.getMessage());
    }
    finally {
      session.close();
    }
  }
}

Note que neste trecho de código eu assumi que o registro com id 3 existe na tabela no banco de dados. É sempre uma boa idéia verificar se o objeto retornado é null antes de usá-lo. Veja:

// vamos obter o usuário com o id 3
Long idUsuario = 43L;
Usuario u = (Usuario)session.get(Usuario.class, idUsuario);
// vamos exibir o nome do usuário obtido
if(u != null)
  System.out.println("O nome do usuário obtido é: " + u.getNome());
else
  System.out.println("O usuário informado não existe no banco de dados");

É possível também efetuar chamadas ao método get() fornecendo o nome de classe da entidade (incluindo o pacote). Veja:

Usuario u = (Usuario)session.get("entidades.Usuario", idUsuario);


Link para compartilhar na Internet ou com seus amigos:

Veja mais Dicas e truques de Hibernate

Dicas e truques de outras linguagens

E-Books em PDF

E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
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á 49 usuários muito felizes estudando em nosso site.