Estou começando a mexer no Hibernate Annotations e fiz um pequeno teste só que ta dando erro na compilação, vejam como ficou:
usei as seguintes lib do hibernate e do mysql:
antlr-2.7.6
asm
asm-attrs
cglib-2.1.3
commons-collections-2.1.1
commons-logging-1.0.4
dom4j-1.6.1
ehcache-1.2.2
ejb3-persistence
hibernate3
hibernate-annotations
hibernate-commons-annotations
jta
log4j-1.2.11
mysql-connector-java-5.0.5-bin
sendo que o hibernate core eh o 3.2.2
e o hibernate annotation eh 3.3.0
arquivo hibernate.cfg.xml:
<?xml version="1.0" encoding="UTF-8"?> com.mysql.jdbc.Driver jdbc:mysql://localhost/test root 15rzeuli83 org.hibernate.dialect.MySQLDialect truearquivo contato.java:/*
- Contato.java
*/
package modelo;
/**
*
-
@author Ricardo
*/
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
@Entity
public class Contato {
private Long id;
private String nome;
private String email;
private String endereco;
public Contato() {
}
@Id @GeneratedValue(strategy=GenerationType.IDENTITY)
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 String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getEndereco() {
return endereco;
}
public void setEndereco(String endereco) {
this.endereco = endereco;
}
}
arquivo hibernateutil.java:
/*
- HibernateUtil.java
*/
package util;
/**
*
-
@author Ricardo
/
import org.hibernate.;
import org.hibernate.cfg.*;
public class HibernateUtil {
private static final SessionFactory sessionFactory;
static {
try {
sessionFactory = new AnnotationConfiguration()
.configure()
.buildSessionFactory();
} catch (Throwable ex) {
throw new ExceptionInInitializerError(ex);
}
}
public Session getSession() throws HibernateException {
return sessionFactory.openSession();
}
}
arquivo hibernateteste.java
/*
- HibernateTeste.java
*/
package teste;
/**
*
-
@author Ricardo
*/
import modelo.Contato;
import org.hibernate.HibernateException;
import org.hibernate.Session;
import util.HibernateUtil;
public class HibernateTeste {
public static void main(String[] args) {
try {
Contato contato = new Contato();
contato.setNome("teste hibernate");
Session session = new HibernateUtil().getSession();
session.beginTransaction();
session.save(contato);
session.getTransaction().commit();
System.out.println("Gravado contato: " + contato.getId());
} catch(HibernateException e) {
e.printStackTrace();
}
}
}
Esta dando o seguinte erro:
log4j:WARN No appenders could be found for logger (org.hibernate.cfg.annotations.Version).
log4j:WARN Please initialize the log4j system properly.
Exception in thread “main” java.lang.ExceptionInInitializerError
at util.HibernateUtil.(HibernateUtil.java:24)
at teste.HibernateTeste.main(HibernateTeste.java:26)
Caused by: org.hibernate.HibernateException: /hibernate.cfg.xml not found
at org.hibernate.util.ConfigHelper.getResourceAsStream(ConfigHelper.java:147)
at org.hibernate.cfg.Configuration.getConfigurationInputStream(Configuration.java:1405)
at org.hibernate.cfg.Configuration.configure(Configuration.java:1427)
at org.hibernate.cfg.Configuration.configure(Configuration.java:1414)
at util.HibernateUtil.(HibernateUtil.java:20)
… 1 more
Java Result: 1