AlunoDAO.java – Java-Klasse für Datenbankzugriff auf Studierende
Eingeordnet in Informatik
Geschrieben am in
Deutsch mit einer Größe von 3,5 KB
AlunoDAO.java
import java.util.Map;
import model.Aluno;
import org.hibernate.Criteria;
import org.hibernate.Session;
import org.hibernate.Transaction;
import org.hibernate.criterion.Restrictions;
import util.HibernateUtil;
public class AlunoDAO {
public boolean validaUsuario(String login, String senha) {
Session session = HibernateUtil.getSession();
Transaction tx = session.beginTransaction();
String query = "FROM Aluno WHERE login = ? AND senha = ?";
List<Aluno> list = session.createQuery(query)
.setString(0, login)
.setString(1, senha)
.list();
tx.commit();
Aluno aluno = new Aluno();
if (list.size() >= 1) {
return true;
} else {
return false;
}
}
/**
*
* @return
*/
public List<Aluno> listar() {
Session session = HibernateUtil.getSession();
return session.createCriteria(Aluno.class).list();
}
/**
*
* @param aluno
*/
public void update(Aluno aluno) {
/*
* Qualquer operação necessária deve ser feita dentro da mesma sessão. Uma
* sessão pode ser usada por uma ou mais transações, sendo
* que, ao fazer rollback, a sessão é descartada e fica inutilizável até
* que um novo beginTransaction seja chamado.
*/
Session session = HibernateUtil.getSession();
Transaction tx = session.beginTransaction();
session.update(aluno);
tx.commit();
}
/**
*
* @return
*/
public List<Aluno> listarFiltro() {
Session session = HibernateUtil.getSession();
Transaction tx = session.beginTransaction();
List<Aluno> list = session.createQuery("FROM Aluno").list();
tx.commit();
return list;
}
/**
*
* @param nome
* @param login
* @return
*/
public List<Aluno> listarPesquisa(String nome, String login) {
Session session = HibernateUtil.getSession();
Transaction tx = session.beginTransaction();
Criteria crit = session.createCriteria(Aluno.class);
// Adiciona ou não o nome para o filtro
if (nome != null && !nome.equals("")) {
crit.add(Restrictions.like("nome", "%" + nome + "%"));
}
// Adiciona ou não o login para o filtro
if (login != null && !login.equals("")) {
crit.add(Restrictions.like("login", "%" + login + "%"));
}
List<Aluno> list = (List<Aluno>) crit.list();
tx.commit();
return list;
}
/**
*
* @param id
* @return
*/
public Aluno getAluno(String id) {
Session session = HibernateUtil.getSession();
Transaction tx = session.beginTransaction();
String query = "FROM Aluno WHERE id = ?";
List<Aluno> list = session.createQuery(query)
.setLong(0, Long.parseLong(id))
.list();
tx.commit();
Aluno aluno = new Aluno();
if (list.size() >= 1) {
aluno = (Aluno) list.get(0);
}
return aluno;
}
/**
*
* @param aluno
*/
public void delete(Aluno aluno) {
Session session = HibernateUtil.getSession();
Transaction tx = session.beginTransaction();
session.delete(aluno);
tx.commit();
}
/**
*
* @param aluno
*/
public void salvar(Aluno aluno) {
Session session = HibernateUtil.getSession();
Transaction tx = session.beginTransaction();
session.save(aluno);
tx.commit();
}