Boa tarde galera, Rodei bastante na net e não consegui achar
a resposta pra resolver esse probleminha !
Vou colocar os fontes …
Main.java
package exec;
import Entidade.Aluno;
import conf.HibernateUtil;
import org.hibernate.Session;
public class Main {
public static void main(String[] args) {
Aluno a = new Aluno (1, "Bruno", 22);
Session session = HibernateUtil.getSession();
session.beginTransaction();
session.save(a);
session.getTransaction().commit();
System.out.println(a.toString());
}
}
Aluno.java
package Entidade;
import java.io.Serializable;
import javax.persistence.*;
@Entity
@Table (name="Aluno")
public class Aluno implements Serializable {
@Id
private int Id;
@Column (nullable=false, length=200)
private String nome;
@Column (nullable=false, length=10)
private int Idade;
public Aluno() {}
public Aluno(int Id, String nome, int Idade) {
this.Id = Id;
this.nome = nome;
this.Idade = Idade;
}
/**
* @return the Id
*/
//@Id @GeneratedValue(strategy=GenerationType.SEQUENCE, generator="SEQ_STORE")
public int getId() {
return Id;
}
/**
* @param Id the Id to set
*/
public void setId(int Id) {
this.Id = Id;
}
/**
* @return the nome
*/
public String getNome() {
return nome;
}
/**
* @param nome the nome to set
*/
public void setNome(String nome) {
this.nome = nome;
}
/**
* @return the Idade
*/
public int getIdade() {
return Idade;
}
/**
* @param Idade the Idade to set
*/
public void setIdade(int Idade) {
this.Idade = Idade;
}
@Override
public String toString() {
return "Meu nome é " + getNome() + " tenho " + getIdade() + " anos.";
}
}
HibernateUtil.java
package conf;
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 static Session getSession()
throws HibernateException {
return sessionFactory.openSession();
}
}
hibernate.cfg.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="hibernate.dialect">org.hibernate.dialect.DerbyDialect</property>
<property name="hibernate.connection.driver_class">org.apache.derby.jdbc.ClientDriver</property>
<property name="hibernate.connection.url">jdbc:derby://localhost:1527/sample</property>
<property name="hibernate.connection.username">app</property>
<property name="hibernate.connection.password">app</property>
<property name="show_sql">true</property>
<property name="hbm2ddl.auto">create</property>
</session-factory>
</hibernate-configuration>
Erro
run:
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" org.hibernate.MappingException: Unknown entity: Entidade.Aluno
at org.hibernate.impl.SessionFactoryImpl.getEntityPersister(SessionFactoryImpl.java:628)
at org.hibernate.impl.SessionImpl.getEntityPersister(SessionImpl.java:1366)
at org.hibernate.event.def.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:121)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:210)
at org.hibernate.event.def.DefaultSaveEventListener.saveWithGeneratedOrRequestedId(DefaultSaveEventListener.java:56)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:195)
at org.hibernate.event.def.DefaultSaveEventListener.performSaveOrUpdate(DefaultSaveEventListener.java:50)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:93)
at org.hibernate.impl.SessionImpl.fireSave(SessionImpl.java:563)
at org.hibernate.impl.SessionImpl.save(SessionImpl.java:551)
at org.hibernate.impl.SessionImpl.save(SessionImpl.java:547)
at exec.Main.main(Main.java:14)
Java Result: 1
O erro do log4j eu sei que não interfere no funcionamento porem se algum conseguir me explicar eu agradeço !
Obrigado desde já !