Olá!
Estou usando o hibernate 3 e preciso fazer uma consulta para saber se o usuário esta ou nao cadastrado antes de efetuar o login.
Criei um metodo p/ consulta usando o interface Query:
public Usuario existeUnico(Usuario u)
{
String hql = "select u from Usuario as u where u.username = :nome and u.password = :senha";
Query query = getSession().createQuery(hql);
query.setParameter("nome", u.getUsername());
query.setParameter("senha", u.getPassword());
return (Usuario) query.uniqueResult();
}
Quando tento executar a consulta, é exibida a seguinte msn de erro:
Achei q poderia c a forma com que estou tentando buscar tais dados!!!
Foi quando fiz um teste…
Criei outro método com a msm finalidade, mas usando a interface Criteria:
public List existeUnico(Usuario usuario)
{
Criteria criteria = getSession().createCriteria(Usuario.class);
criteria.add(Restrictions.eq("username", usuario.getUsername()));
criteria.add(Restrictions.eq("password", usuario.getPassword()));
List list = criteria.list();
return list;
}
Aconteceu a msm coisa!!! O msm erro foi exibido!!!
O bean Usuario está desta forma:
package net.sytes.tsda.zeuswebserver.bean;
import javax.persistence.*;
@Entity
@Table(name = "usuarios", schema="anotacoes")
public class Usuario
{
@Id
@Column(name = "nome")
private String username;
@Column(name = "senha")
private String password;
public final String getUsername()
{
return username;
}
public final void setUsername(String username)
{
this.username = username;
}
public final String getPassword()
{
return password;
}
public final void setPassword(String password)
{
this.password = password;
}
}
E a tabela de usuarios está com a seguinte estrutura:
TABLE USUARIOS (
INDICE INTEGER NOT NULL,
NOME VARCHAR(20),
SENHA VARCHAR(20))
Estou começando com Hibernate agora e não tenho idéia o que pode estar causando tais erros que encontro com esta ferramenta. Também por ser uma plicação web, não sei c esta faltando alguma config. do Hibernate p/ que rode corretamente nesta plataforma…
Se alguém pode me ajudar…