/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package maissocial.repositorio;
import java.util.List;
import maissocial.entidade.Cidade;
import maissocial.util.HibernateUtil;
import org.hibernate.SQLQuery;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
/**
*
* @author luciano
*/
public class CidadeRepositorio {
SessionFactory factory = HibernateUtil.getSessionFactory();
public void salvarCidade(Cidade cd){
Session session = factory.openSession();
Transaction trans = session.beginTransaction();
trans.begin();
session.save(cd);
trans.commit();
session.close();
}
public void deletarCidade(int cod){
Session session = factory.openSession();
Transaction trans = session.beginTransaction();
trans.begin();
Cidade cd = pesquisarCidadePorCodigo(cod);
session.delete(cd);
trans.commit();
session.close();
}
public void deletarCidadePorObj(Cidade cd){
Session session = factory.openSession();
Transaction trans = session.beginTransaction();
trans.begin();
session.delete(cd);
trans.commit();
session.close();
}
public Cidade pesquisarCidadePorCodigo(int cod){
Session session = factory.openSession();
SQLQuery query = session.createSQLQuery("SELECT {cidade.*} FROM cidade {cidade} WHERE cod_cidade = "+cod);
query.addEntity("cidade", Cidade.class);
Cidade cd = null;
if(query.list().size() > 0){
cd = (Cidade) query.list().get(0);
}
session.close();
return cd;
}
public Cidade pesquisarCidadePorNome(String nome){
Session session = factory.openSession();
SQLQuery query = session.createSQLQuery("SELECT {cidade.*} FROM cidade {cidade} WHERE nome like '"+nome+"'");
query.addEntity("cidade", Cidade.class);
Cidade cd = null;
if(query.list().size() > 0){
cd = (Cidade) query.list().get(0);
}
session.close();
return cd;
}
public List pesquisarCidadeTodos(){
Session session = factory.openSession();
SQLQuery query = session.createSQLQuery("SELECT {cidade.*} FROM cidade {cidade}");
query.addEntity("cidade", Cidade.class);
List cd = query.list();
session.close();
return cd;
}
public void alterarCidade(Cidade cd){
Session session = factory.openSession();
Transaction trans = session.beginTransaction();
trans.begin();
Cidade cd2 = pesquisarCidadePorCodigo(cd.getCodCidade());
cd.setCodCidade(cd2.getCodCidade());
session.update(cd);
trans.commit();
session.close();
}
}