Galera eu to lendo a apostila da caelum e cheguei ate a parte de criar um dao generico eu fiz tudinho certo antes de criar um dao generico tava tudo funcinando perfeitamente porem depois que eu fiz os refactors que a apostila fala eu nao consigo adicionar no banco de dados mando o codigo… ele nao da erro nenhum apenas nao adiciona!!
Abraçoss!!
dao generico
package dao;
import java.util.List;
import org.hibernate.Session;
public class Dao<T> {
private final Session session;
private final Class classe;
public Dao(Session session, Class classe){
this.session = session;
this.classe = classe;
}
public void adiciona(T u){
this.session.save(u);
}
public void remove(T u){
this.session.delete(u);
}
public void atualiza(T u){
this.session.merge(u);
}
public T consulta(Long id){
return (T) this.session.load(this.classe, id);
}
public List<T> ListaTodos(){
return this.session.createCriteria(this.classe).list();
}
}
DaoFactory
package dao;
import hibernate.Usuario;
import org.hibernate.Session;
import org.hibernate.Transaction;
import util.HibernateUtil;
public class DaoFactory {
private final Session session;
private Transaction transaction;
public DaoFactory(){
this.session = HibernateUtil.getSession();
}
public Dao<Usuario> getUsuarioDao(){
return new Dao<Usuario>(this.session, Usuario.class);
}
public void beginTransaction() {
this.transaction = this.session.beginTransaction();
}
public void commit() {
this.transaction.commit();
this.transaction = null;
}
public boolean hasTransaction() {
return this.transaction != null;
}
public void rollback() {
this.transaction.rollback();
this.transaction = null;
}
public void close() {
this.session.close();
}
}
o main pra adicionar um usuario
package main;
import hibernate.Usuario;
import java.util.List;
import dao.DaoFactory;
import dao.Dao;
public class TesteDeUsuario {
public static void main(String[] args){
Usuario u = new Usuario();
u.setLogin("admin");
u.setSenha("admin");
Dao<Usuario> dao = new DaoFactory().getUsuarioDao();
dao.adiciona(u);
List<Usuario> lista = dao.ListaTodos();
for (Usuario usuario : lista) {
System.out.println(usuario.getLogin());
}
}
}
bom… que puder me ajudar ai obrigado!!
Abraço a todos!!!