Os pré-requisitos para este tutorial são:
Firebird instalado e rodando.
Ver instalação e Download do Firebird no artigo:
Base de dados em Firebird.
Ver criação de banco de dados no artigo:
Para criação do nosso primeiro projeto utilizaremos a IDE do NetBeans que é uma aplicação de código aberto feita para auxiliar os desenvolvedores na criação de aplicativos em diferentes plataformas .
Download do NetBeans:
Objeto de conexão do projeto:
Para mapeamento do banco de dados, utilizaremos a ferramenta de mapeamento Hibernate, que já vem instalado no NetBeans.
O Hibernate é uma ferramenta de mapeamento objeto/relacional para Java. Transforma os dados da estrutura lógica de um banco de dados em objetos definidos pelo desenvolvedor é mais indicado para sistemas que contam com um modelo MVC (prática comum no desenvolvimento de aplicações Java, onde se particiona a aplicação em tres partes, View - Control e Model, ou seja uma camada de interface, uma camada de controle e uma camada de negócio), onde a maior parte da lógica de negócios fica na própria aplicação Java, dependendo pouco de funções específicas do banco de dados.
Após Carregar o NetBeans clique no botão novo projeto conforme a imagem abaixo:
Na caixa novo projeto selecione a pasta Java e em Projetos selecione Aplicativos Java e em seguida clique no botão Aplicativo Java
Em seguida clique em avançar conforme a imagem abaixo:
Na caixa de dialogo para criação de projeto no NetBeans insira as informações necessárias para criação do projeto:
1º Nome do Projeto: pragenda
Nome do projeto a ser desenvolvido.
2º Localização do projeto: EX: c:\projetos\
Caminho para criação do projeto.
3º Criar classe principal .Main
Clique no botão finalizar conforme a imagem abaixo:
Após criar o projeto é hora de estabelecer conexão com o banco de dados, para isso clique com o botão direito do mouse encima do seu projeto selecione Novo/Outro... conforme a imagem abaixo:
Abrirá uma caixa com as Categorias e Tipos de arquivo:
Selecione:
Categorias: Hibernate
Tipo de arquivo:
Assistente para Configuração de Hibernate
No assistente Selecione:
Nome do arquivo: hibernate.cfg
Clique em Próximo >
Selecione a fonte de dados que o hibernate estabelecerá uma conexão e clique em finalizar
O NetBeans gerou o Hibernate.cfg.xml com a configuração da sua base de dados, abra esse arquivo role até Propriedade variada clique em adicionar e altere o valor da propriedade para thread
Após realizar as alterações no arquivo o mesmo ficará conforme a imagem abaixo:
Salve e feche esta classe para que as alterações tenham efeito conforme a imagem abaixo:
Após criar o assistente de configuração, é hora de criar o assistente de Engenharia reversa do Hibernate, com ele criaremos o XML com as configurações da conexão.
Clique com o botão direito do mouse encima do seu projeto selecione Novo/Outro... conforme a imagem abaixo:
Na categoria Hibernate, selecione Assistente para Engenharia reversa do Hibernate e clique em Próximo conforme a imagem abaixo:
Logo em seguida abrirá a caixa para inserção do nome do arquivo
Não é preciso mudar o nome clique em Próximo>
Em seguida o assistente vai carregar as tabelas da sua base de dados e disponibilizá-las para você, a imagem abaixo mostra o assistente carregando as tabelas aguarde até o termino.
Agora as tabelas se encontram disponíveis no lado esquerdo da tela, selecione as tabelas depois clique em adicionar todos >>
Após adicionar as tabelas clique em finalizar
O Hibernate .reveng criou o XML com mapeamento das suas tabelas conforme a imagem abaixo deixe estas duas classes no pacote padrão do seu projeto.
Agora vamos criar os Arquivos de mapeamento do Hibernate e POJOs de banco de dados.
Agora vem a parte mais interessante do projeto, pois ele vai gerar a classe de todas as tabelas que foram selecionadas no hibernate.reveng.xml com todas as configurações de uma vez para você.
Clique com o botão direito do mouse encima do seu projeto selecione Novo/Outro... conforme a imagem abaixo:
Selecione a Categoria: Hibernate e o Tipo de arquivo: Arquivos de mapeamento do Hibernate e POJOs de banco de dados
Em seguida clique em Próximo.
Repare que já foi selecionado o arquivo de configuração do hibernate e arquivo de engenharia reversa, portanto basta incluir o nome do pacote que as tabelas ficarão situadas, por padrão inseri o nome entidades, mais pode inserir o nome que achar conveniente desde que seja coerente.
Clique em Finalizar conforme a imagem abaixo e aguarde o término da criação das tabelas .
Se você seguiu fielmente o artigo até aqui, foi criado o pacote entidades contendo as classes Java de suas tabelas e os XMLs com todo conteúdo pronto para serem usados, conforme a imagem abaixo:
Agora só falta o criar a classe HibernateUtil para finalizar a parte de conexão do banco.
Clique com o botão direito do mouse encima do seu projeto selecione Novo/Outro... conforme a imagem abaixo:
Em Categorias selecione Hibernate e em Tipos de arquivo selecione HibernateUtil.java e clique em Próximo> conforme a imagem abaixo:
Renomeie o arquivo para HibernateUtil, crie um pacote chamado util Finalizar
Conforme a imagem abaixo:
Se tudo ocorreu de forma tranquila a extrutura do seu projeto estará parecida com a imagem abaixo, listando os pacote de conexão com os arquivos Hibernate.XML de conexão do banco, o pacote entidades com as tabelas .java e XML do banco, o pacote com a classe Main.java do seu projeto, e o pacote útil com a classe HibernateUtil.java.
Galera abaixo uma pequena implementação na classe Main.javapara testar sua conexão, caso o banco de dados seja diferente não se esqueça de alterar o nome das tabelas e os campos.
O procedimento descrito ao longo deste artigo é válido para qualquer banco de dados que tenha sido conectado com o Hibernate.
Espero que tenham gostado, qualquer dúvida posta ai!
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package pragenda;
import entidades.Tblendereco; /* import da minha tabela*/
import util.HibernateUtil; // import da classe util esta classe garante que terá apenas uma sessão aberta no seus sistema com isso temos melhoria de desenpenho no programa
import org.hibernate.Session; //import para uso do Session no hibernate
/**
*
* @author Ueliton
*/
public class Main {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
Tblendereco endereco = new Tblendereco(); // aqui crio o objeto contato do tipo tblcontato
/******* aqui podemos utilizar caixas JOptionPanes para inserir os valores **************/
endereco.setCodigo(5);
endereco.setCidade("JUIZ DE FORA");
endereco.setEstado("MINAS GERAIS");
Session conexao = HibernateUtil.getSessionFactory().getCurrentSession(); // aqui crio o objeto de conexão que abre a sessão no banco de dados
conexao.beginTransaction(); // aqui inicio a sessão com o banco
conexao.save(endereco); //aqui salvo as informações do objeto na tabela do banco de dados
conexao.getTransaction().commit(); // aqui fecho a sessão do meu banco
}
Até achar este post, estava tendo muito trabalho com a dupla Netbeans 7.1 + Hibernate. Solução, voltei p/ a versão 6.9.1 e segui seu tutorial e tudo funcionou blz. Muito bem explicado, não deixa dúvidas. Parabéns.
ResponderExcluirSelecione a fonte de dados que o hibernate estabelecerá uma conexão e clique em finalizar
ExcluirCOMO EU CRIO ESSA FONTE DE DADOS...???
Responde aii..
klebinho.joga10@hotmail.com
Assunto: FAP - "o nome desse artigo".
Vlw...
Selecione a fonte de dados que o hibernate estabelecerá uma conexão e clique em finalizar
ResponderExcluirCOMO EU CRIO ESSA FONTE DE DADOS...???
Responde aii..
klebinho.joga10@hotmail.com
Assunto: FAP - "o nome desse artigo".
Vlw...
Kleber.
Olá,
Excluira fonte de dados é nome do mapeamento do seu banco de dados.
no link abaixo eu estou explicando como criar este mapeamento caso tenha dúvida dê uma olhadinha.
http://basiclogica.blogspot.com.br/2011_10_01_archive.html
abç
Arquivos de mapeamento do Hibernate e POJOs de banco de dados.
ResponderExcluirFAÇO TODO O PROCESSO, MAS NÃO CRIA O PACOTE ENTIDADES, O QUE HÁ DE ERRADO?
ATT.
ARNON
Olá arnon,
ExcluirO seu BD está mapeado?
Quantas tabelas existem no seu bd?
atualize seu projeto e veja se o pacote é listado.
qualquer dúvida poste ae!
Boa tarde! Meu nome é Moiseis Lopes e sou novo com java e preciso de ajuda!!!
ResponderExcluirQuando vou fazer o penúltimo passo: Arquivos de mapeamento do Hibernate e POJOs de banco de dados dá um erro.
"A configuração do Hibernate falha com a mensagem: java.lang.NullPointerException" e não me permite continuar. Como posso resolver isso?
Mesma coisa aqui, up!!
ExcluirUP!!
ExcluirEstou com o mesmo problema, você conseguiu resolve-lo?
ResponderExcluirAo criar as entidades, obtenho o erro java.lang.NullPointerException
ResponderExcluire o botao finalizar nao fica habilitado.
Tem idéia do que pode ser banco com 39 tabelas.
Verifique se está inserindo o nome do pacote de destino corretamente e se o mesmo existe, ou ainda se está deixando algum campo nulo ou vazio.
Excluircaso contrário repita o procedimento com calma.
abç
Mesmo erro dos anônimos, jorge henriqe e marcio lopes acima, to utilizando a versão 7.3.1 do netbeans..
ResponderExcluir"A configuração do Hibernate falha com a mensagem: java.lang.NullPointerException"
Já refiz o processo várias vezes, porém não consigo avançar.
Estou com o mesmo problema
ResponderExcluir"A configuração do Hibernate falha com a mensagem: java.lang.NullPointerException"
Alguém poderia tentar ajudar?
Estou com o mesmo erro.
ResponderExcluirUeliton Luis poderia nos ajudar?
Pessoal fiz uma pergunta no fórum stackoverflow sobre o erro citado por varias pessoas acima e encontrei a solução, precisa atualizar a versão do jaybird para a 2.2.4, foi corrigido o problema nessa versão.
ResponderExcluirsegue o link do jaybird 2.2.4:
http://stackoverflow.com/questions/18904451/how-to-configure-jaybird-with-hibernate/18920383?noredirect=1#18920383
segue o link da pergunta no stackoverflow:
http://sourceforge.net/projects/firebird/files/firebird-jca-jdbc-driver/2.2.4-SNAPSHOT/
Abraços
Muito obrigado meu amigo! Estava desesperado.
ExcluirEste comentário foi removido pelo autor.
ResponderExcluirOla, estou iniciando meus projetos em JAVA e gostei muito desse tutorial, mas fiquei com uma duvida, vinculei as tabelas q ja tinha criando a minha nova aplicação, OK , blz, tudo bem, mas e se eu precisar acrescentar mais uma campo a uma tabela ja vinculada, como faço pra "atualizar" a tabela q esta em meu codigo java?
ResponderExcluirOlá quase consegui meu netbenas é o 8 quando inclui o Hibernate e POJOs de banco de dados, não apareceu o campo pacote e uma mensagem de erro A configuração do Hibernate falha com a mensagem:
ResponderExcluirjava.lang.NullPointerException
veja o message.log para obter detalhes sobre a exceção.