Problemas no Hibernate

6 respostas
Washington_Wiltenbur

Não consigo conectar com o banco de dados através do hibernate, eu adicionei o arquivo hibernate.properties no meu Classpath e o banco q estou usando é o MySQL, estou fazendo os exemplos da apostila da Caelum(FJ21) do capítulo 16 HIBERNATE e não estou tendo sucesso…
Se alguém puder ajudar…

Desde já agradeço!!!

wsh

6 Respostas

root_

Amigo… seja mais específico.
qual erro ta dando?
como está sua estrutura de pacotes as etapas que vc fez pra configurar o hibernate???

xD

Washington_Wiltenbur

Estou fazendo os exemplos da Apostila da Caelum FJ21…
Estou com os jar.´s do hibernate e hibernate anotations adicionados no meu Classpath.
A minha estrutura dos pacotes é a seguinte:

src:

//Classe Produto

package br.com.wsh.hibernate;

import javax.persistence.Column;

import javax.persistence.GeneratedValue;

import javax.persistence.Id;

import org.hibernate.annotations.Entity;

@Entity
public class Produto {

@Column(name = "descricao", nullable = true, length = 50)
private String descricao;

@Id @GeneratedValue
private Long id;

private String nome;

private double preco;

public String getDescricao() {
	return descricao;
}
public void setDescricao(String descricao) {
	this.descricao = descricao;
}
public Long getId() {
	return id;
}
public void setId(Long id) {
	this.id = id;
}
public String getNome() {
	return nome;
}
public void setNome(String nome) {
	this.nome = nome;
}
public double getPreco() {
	return preco;
}
public void setPreco(double preco) {
	this.preco = preco;
}

}

// Classe GeraTabelas

package br.com.wsh.hibernate;

import org.hibernate.cfg.AnnotationConfiguration;
import org.hibernate.tool.hbm2ddl.SchemaExport;

public class GeraTabelas {

/**
 * @param args
 */
public static void main(String[] args) {

	// Cria uma configuração para a classe Produto
	AnnotationConfiguration cfg = new AnnotationConfiguration();
	cfg.addAnnotatedClass(Produto.class);
	new SchemaExport(cfg).create(true, true);

}

}

// Classe TesteDeConfiguração

package br.com.wsh.hibernate;

import org.hibernate.Session;

import org.hibernate.SessionFactory;

import org.hibernate.cfg.AnnotationConfiguration;

public class TesteDeConfiguracao {

public static void main(String[] args) {

	// Cria uma configuração para a classe Produto
	AnnotationConfiguration cfg = new AnnotationConfiguration();
	cfg.addAnnotatedClass(Produto.class);
	SessionFactory factory = cfg.buildSessionFactory();

	// Cria a sessão
	Session session = factory.openSession();

	// Fecha a sessão
	session.close();

	factory.close();
}

}

// O banco é o MySQL
// o meu hibernate.properties

MySQL

hibernate.dialect org.hibernate.dialect.MySQLDialect
#hibernate.dialect org.hibernate.dialect.MySQLInnoDBDialect
#hibernate.dialect org.hibernate.dialect.MySQLMyISAMDialect
hibernate.connection.driver_class com.mysql.jdbc.Driver
hibernate.connection.url jdbc:mysql://localhost:3306/teste
hibernate.connection.username root
hibernate.connection.password

se puder me ajudar???
Obrigado

jgbt

nem olhei o resto, mas o primeiro erro ta aqui:

import org.hibernate.annotations.Entity;

vc tem que importar javax.persistence.Entity.

[]´s

Washington_Wiltenbur

Muito obrigado jgbt !

deu certo, a tabela foi criada.

Vlw

jgbt

dicas:

  • cuidado quando organnizar os imports usando alguma IDE, provavelmente foi o problema que ocorreu.
  • se o problema era esse, provavelmente estava aparecendo uma exception tipo “unknow entity”. sempre poste a exeção lançada p/ facilitar a vida de quem vai ajuda-lo.

[]´s

Washington_Wiltenbur

Blz obrigado pelas dicas de agora em diante irei postar as Exception…

Muito obrigado mesmo!!!

wsh

Criado 28 de dezembro de 2007
Ultima resposta 28 de dez. de 2007
Respostas 6
Participantes 3