Galera eu tenho um projeto e utilizo o hibernate para consultas no banco, porem mesmo assim meu banco fica caindo por estar fazendo muitas conexoes simultaneas.
abaixo esta o codigo da minha classe DAO generica
import java.util.List;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.AnnotationConfiguration;
public abstract class DAOGenerics<K, G> {
public void inserir(K obj) {
SessionFactory sf = new AnnotationConfiguration().configure("hibernate.cfg.xml").buildSessionFactory();
Session s = sf.openSession();
s.getTransaction().begin();
s.saveOrUpdate(obj);
s.getTransaction().commit();
s.close();
}
public void apagar(K obj, Session s) {
s.getTransaction().begin();
s.delete(obj);
s.getTransaction().commit();
}
public void apagar(K obj) {
SessionFactory sf = new AnnotationConfiguration().configure("hibernate.cfg.xml").buildSessionFactory();
Session s = sf.openSession();
try {
apagar(obj, s);
} finally {
s.close();
}
}
public abstract K buscar(G obj);
public abstract K buscar(G obj, Session s);
public abstract List<K> buscarTodos();
public abstract List<K> buscarTodos(Session s);
}
eu pensei em talvez criar os objetos SessionFactory e Session de forma estatica, mas nao sei se essa eh a solucao. Alguem pode me dar uma dica, dizer se essa classe esta certa ou se tem algum erro.
VLW