Sistema de login com Hibernate

Olá pessoal, estou tentando autenticar usuários com o seguinte código:

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
        
        
        SIS_MENU menu = new SIS_MENU();
                
        String usuario = tf_login.getText();
        String senha = tf_senha.getText();
        
       try{
            Session logar = HibernateUtil.getSessionFactory().getCurrentSession();
            logar.beginTransaction();
               
            if(logar.createSQLQuery("select usu_senha from sis_usuario where usu_login = " + usuario ).equals(logar.createSQLQuery("select usu_senha from sis_usuario where usu_senha = md5("+ senha +")"))){
                menu.setVisible(true);
            }
            
        }catch(Exception e){
            JOptionPane.showMessageDialog(null, "Não foi possível realizar a conexão!");
        }
    }

Obs: MD5 é uma função de criptografia que estou utilizando.

Mas observei que não há o retorno com o resultado da query, por isso, não estou conseguindo comparar.

Alguém sabe como posso fazer essa comparação?

e se tu pegar o login e senha separados, eles veem?

usuario = consultaSQLdeusuário
senha = consultaSQLdesenha

Sugeriria outra alternativa:

select u.user from sisuser s where u.user = ? and u.senha = ?

Assim você faz apenas uma consulta ao banco e obtém de forma satisfatória sua validação.

Dica: já ouviu falar no padrão DAO (Data Access Object), dê uma pesquisada, assim vc desacopla sua responsabilidade de acesso ao banco do tratamento de telas. Evidente que, ambas as formas funcionam, mas o uso de patterns agregam boas práticas.

No meu blog, já fiz alguns posts trabalhando JPA com padrão, DAO: http://serjava.blogspot.com.br/search/label/JPA

[]s