O tutorial será bem simples, vamos apenas cadastrar uma pessoa no banco de dados.
Para este tutorial vamos utilizar as seguintes ferramentas:
Após baixar estas ferramentas vamos criar um novo projeto Java no Eclipse. Criei o meu com o nome de ProjetoHibernate, mas você pode dar o nome que quiser.
Agora precisamos criar uma pasta para armazenar os jar que iremos precisar.
Criei a pasta com o nome lib.
Descompacte a pasta que você baixou do Hibernate, dentro dela há uma pasta chamada lib, dentro desta pasta há uma pasta chamada required. Copie todos os jars dessa pasta e coloque na nossa pasta lib, esta que acabamos de criar. Adicione também o jar do seu banco de dados de preferencia. Neste tutorial utilizei o PostegreSQL, portanto é o jar dele que adicionei na pasta lib.
Não esqueça de adicionar os jars para a Build Path.
Agora vamos falar do arquivo de configuração do Hibernate, o hibernate.cfg.xml
Ele deve estar dentro da pasta src do seu projeto.
org.postgresql.Driver org.hibernate.dialect.PostgreSQLDialect postgres postgres jdbc:postgresql://localhost:5432/exemploCadastro true create
Na terceira linha do arquivo acima, estamos definindo o driver de conexão com o banco de dados, lembrando que para este tutorial foi utilizado o sistema gerenciador de banco de dados PostegreSQL.
Na quarta linha definimos o dialect, ele define qual variação do SQL será utilizada.
Na quinta e na sexta linha, encontram-se o usuário e a senha do banco de dados.
Na sétima linha informamos a url do nosso banco de dados.
A propriedade show_sql que aparece na oitava linha faz com que todo SQL gerado pelo Hibernate apareça no console.
Na propriedade hbm2ddl.auto utilizei a opção create, isso significa que o Hibernate irá criar as minhas tabelas toda vez que eu rodar a aplicação. Caso alguma tabela já exista, ela irá deleta-lá e para cria-lá novamente.
Até agora nosso projeto deve estar da seguinte forma:
Vamos iniciar nossa aplicação criando a classe Pessoa:
package modelo;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
@Entity(name="pessoa")
public class Pessoa {
@Id
@GeneratedValue
private int id;
private String nome;
public int getId() {
return id;
}
public String getNome() {
return nome;
}
public void setId(int id) {
this.id = id;
}
public void setNome(String nome) {
this.nome = nome;
}
}
Reparem que utilizei apenas três anotações:
@Entity(name="pessoa") : significa que essa minha classe está representando a tabelapessoa no meu banco de dados.
@Id : significa que este atributo é o id da minha tabela.
@GeneratedValue : significa que o Hibernate estará encarregado de gerar o valor de cada id desta tabela.
A próxima classe a ser criada é o HibernateUtil, ela tem o objetivo de criar e configurar a sessão para utilizar o hibernate.
package util;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
public class HibernateUtil {
public static final SessionFactory session = buildSession();
private static SessionFactory buildSession() {
try {
Configuration cfg = new Configuration();
cfg.configure("hibernate.cfg.xml");
return cfg.buildSessionFactory();
} catch (Throwable b) {
System.out.println("Não deu \n" + b);
throw new ExceptionInInitializerError();
}
}
public static SessionFactory getSessionFactory() {
return session;
}
}
O método private static SessionFactory buildSession() instancia um objeto da classe Configuration que possui o método configure, o qual busca na pasta raiz das classe java o arquivo de configuração do hibernate.Por fim, vamos criar nossa classe de Teste:
package view;
import modelo.Pessoa;
import org.hibernate.Session;
import util.HibernateUtil;
public class Teste {
public static void main(String[] args) {
Session session = HibernateUtil.getSessionFactory().openSession();
Pessoa pessoa1 = new Pessoa();
pessoa1.setNome("Maria");
Pessoa pessoa2 = new Pessoa();
pessoa2.setNome("Joao");
Pessoa pessoa3 = new Pessoa();
pessoa3.setNome("Pedro");
// realizando operação para salvar no banco
session.beginTransaction();
session.save(pessoa1);
session.save(pessoa2);
session.save(pessoa3);
session.getTransaction().commit();
session.close();
}
}
Na linha 11, a classe Teste instancia um objeto da classe Session para receber as configurações da sessão do hibernate e abri a sessão.
Feito isso, criei três objetos do tipo Pessoa para salva-los no banco de dados.
Para realizar a persistência devemos iniciar a transação, realizar o método save, realizar o método commit e então fechar a sessão.
Se tudo ocorrer perfeitamente, teremos três pessoas cadastradas no nosso banco de dados.
Qualquer dúvida, entrem em contato.
Até a próxima.
Nenhum comentário:
Postar um comentário