/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package maissocial.repositorio;
import java.util.List;
import maissocial.entidade.Logradouro;
import maissocial.util.HibernateUtil;
import org.hibernate.SQLQuery;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
/**
*
* @author luciano
*/
public class LogradouroRepositorio {
SessionFactory factory = HibernateUtil.getSessionFactory();
public void salvarLogradouro(Logradouro lg){
Session session = factory.openSession();
Transaction trans = session.beginTransaction();
trans.begin();
session.save(lg);
trans.commit();
session.close();
}
public void deletarLogradouro(int cod){
Session session = factory.openSession();
Transaction trans = session.beginTransaction();
trans.begin();
Logradouro lg = pesquisarLogradouroPorCodigo(cod);
session.delete(lg);
trans.commit();
session.close();
}
public void deletarLogradouroPorObj(Logradouro lg){
Session session = factory.openSession();
Transaction trans = session.beginTransaction();
trans.begin();
session.delete(lg);
trans.commit();
session.close();
}
public Logradouro pesquisarLogradouroPorCodigo(int cod){
Session session = factory.openSession();
SQLQuery query = session.createSQLQuery("SELECT {logradouro.*} FROM logradouro {logradouro} WHERE cod_logradouro = "+cod);
query.addEntity("logradouro", Logradouro.class);
Logradouro lg = null;
if(query.list().size() > 0){
lg = (Logradouro) query.list().get(0);
}
session.close();
return lg;
}
public Logradouro pesquisarLogradouroPorNome(String nome){
Session session = factory.openSession();
SQLQuery query = session.createSQLQuery("SELECT {logradouro.*} FROM logradouro {logradouro} WHERE nome like '"+nome+"'");
query.addEntity("logradouro", Logradouro.class);
Logradouro lg = null;
if(query.list().size() > 0){
lg = (Logradouro) query.list().get(0);
}
session.close();
return lg;
}
public List pesquisarLogradouroTodos(){
Session session = factory.openSession();
SQLQuery query = session.createSQLQuery("SELECT {logradouro.*} FROM logradouro {logradouro}");
query.addEntity("logradouro", Logradouro.class);
List lg = query.list();
session.close();
return lg;
}
public void alterarLogradouro(Logradouro lg){
Session session = factory.openSession();
Transaction trans = session.beginTransaction();
trans.begin();
Logradouro lg2 = pesquisarLogradouroPorCodigo(lg.getCodLogradouro());
lg.setCodLogradouro(lg2.getCodLogradouro());
session.update(lg);
trans.commit();
session.close();
}
}