Metodo logar! Hibernate

8 respostas
G

Galera to começando com isso agora queria uma ajuda
gravar no banco ta dando certinho
fazer buscas ta dando certinho
agora queria saber como fazer uma verificação
queria ver se o usuario digitado e senha estao corretos

alguem pode me ajudar?

tentei de duas formas mas uma assim,

public boolean logar(String usuario,String senha){
                        
        String consultaSQL = "SELECT * FROM funcionario WHERE usuario = ? AND senha = ?;";

mas pelas minhas pesquisas acho que deveria ser algo assim

org.hibernate.Query query = this.session.createQuery("from funcionario where usuario :usuario AND senha :senha");
        query.setString("usuario", usuario ,"senha", senha);

Uma luz por favor rsrs

8 Respostas

partenon

Qual o problema que vc esta encontrando? Ele nao retorna nada? Ele solta uma excecao?

sandro.ci02

Algo assim

org.hibernate.Query query = this.session.createQuery("SELECT f FROM Funcionario f WHERE f.usuario :usuario AND f.senha :senha");
        query.setString("usuario", usuario ,"senha", senha);
G

valeu sandro vou tentar aqui

G

Não deu fica dando erro aqui

query.setString("usuario", usuario ,"senha", senha);
sandro.ci02
query.setParameter
U

godmorfzz, boa tarde.

Como você falou que esta começando, que tal ja dar uma olhadinha em Criterias ?

Criteria é uma implementação do Hibernate que te permite fazer querys, sem montar o SQL, por exemplo, no seu caso voce poderia fazer algo do tipo :

if (this.getSession().createCriteria(Funcionario.class).add(Restrictions.eq("usuario",usuario)).add(Restrictions.eq("senha",senha)).uniqueResult()) != null)

Elegante, não é ?
Caso se interessar abaixo o link da documentação :

http://docs.jboss.org/hibernate/core/3.3/reference/en/html/querycriteria.html

Abraços!

Mauro Alexandre
[email removido]

G

brigadao
vou olhar

ja tinha lido na apostila da caelum fj-21

obrigado

LPJava

coloque isso no seu DAO.

public boolean verificaLogin(String login){
		boolean resultado = false;
		Query query = getSession().createQuery("from Usuarios " +
				"where login =:login");
			query.setString("login", login);
			Usuarios usuario  = (Usuarios) query.uniqueResult();
			
				if(usuario !=null){
					resultado = true;
				}
		return resultado; 
	}
Criado 9 de julho de 2010
Ultima resposta 10 de jul. de 2010
Respostas 8
Participantes 5