boa noite,
estou com um problema,
estava fazendo uns testes de hibernate+annotations e ultilizando o material da Caelum com apoio, banco MySql.
não dá erro em nada, mas depois de inserir o objeto eu verifico no banco e a tabela criada com o hibernate está vazia…
mudei de banco também mas o problema persiste
fiz uma classe para lógica de negócios muito simples:
package persistenciacomhibernate;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
@Entity
public class Produtos {
@Id@GeneratedValue
private int id;
private String nome;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
}
fiz uma classe para gerar a tabela:
package persistenciacomhibernate;
import org.hibernate.cfg.AnnotationConfiguration;
import org.hibernate.tool.hbm2ddl.SchemaExport;
public class GeraTabelas {
public static void main(String[] args) {
AnnotationConfiguration annotationConfiguration = new AnnotationConfiguration();
annotationConfiguration.addAnnotatedClass(Produtos.class);
new SchemaExport(annotationConfiguration).create(true, true);
}
}
que apresenta o código SQL normalmente
fiz a hibernate factory:
package persistenciacomhibernate;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.AnnotationConfiguration;
public class HibernateFactory {
private static SessionFactory factory;
static {
AnnotationConfiguration cfg = new AnnotationConfiguration();
cfg.addAnnotatedClass(Produtos.class);
factory = cfg.buildSessionFactory();
}
public Session getSession() {
return factory.openSession();
}
}
e fiz uma classe que salva os objetos
package persistenciacomhibernate;
import org.hibernate.Session;
public class AdicionaProdutos {
public static void main(String[] args) {
Session session = new HibernateFactory().getSession();
Produtos produtos = new Produtos();
produtos.setNome("nome do produto");
session.save(produtos);
System.out.println(produtos.getNome());
System.out.println("ID do produto: " + produtos.getId());
session.close();
}
}
quando insiro ele aparece o nome e id
e cada objeto que insiro ele aparece o id seguinte como esperado mas não grava no banco
não tenho idéia do que seja
se alguém puder me ajudar
agradeço