1. java
  2. android
  3. c#
  4. .net
  5. javascript
  6. php
  7. jquery
  8. html
  9. sql

Sistema de Login JPA

Olá amigos, estou estudando java. neste primeiro momento estou tentando fazer um sistema de login criptografado com MD5, só que não estou conseguindo, acho que por ser novo e não ter experiência. Estou utilizando uma maneira que achei interessante, não sei se realmente é, rsrsr. Acho que o problema está na tela de login. Abaixo segue projeto:

Dao

public Usuario autentic(Usuario usuario) { String salt = verific(usuario.getLogin()); EntityManager em = ConnectionFactory.getEntityManager(); String hql = "from Usuario u where u.login=:login and u.senha=:senha"; Query q = em.createQuery(hql).setParameter("login", usuario.getLogin()).setParameter("senha", CriptografiaMD5.encriptografar(usuario.getSenha() + salt)); return (Usuario) q.getSingleResult(); }

public String verific(String login) throws HibernateException{ EntityManager em = ConnectionFactory.getEntityManager(); String hql = "from Usuario u where u.login=:login"; Query q = em.createQuery(hql).setParameter("login", login); Usuario usuarioverificado = (Usuario) q.getSingleResult(); String salt = usuarioverificado.getSalt(); return salt; }

Tela Login

private Usuario autenticarUsuario() { TelaPrincipal principal = new TelaPrincipal(); Usuario objUser = new Usuario(); UsuarioDAO dao = new UsuarioDAO();

String login = jtUsuario.getText().trim(); String senha = new String(jPassSenha.getPassword()); try { objUser.setLogin(login); objUser.setSenha(senha); if (objUser.equals(login)) { JOptionPane.showMessageDialog(null, "usuario errado!", "Erro", JOptionPane.INFORMATION_MESSAGE); if (dao.autentic(objUser) != null) { principal.setVisible(true); setVisible(false); } else { JOptionPane.showMessageDialog(null, "Usuário não cadastrado!", "Erro", JOptionPane.INFORMATION_MESSAGE); } } } catch (HeadlessException e) { System.err.println("erro" + e); } return null; }

  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do GUJ!

0 resposta

Não é a resposta que estava procurando? Procure outras perguntas com as tags jpa ou faça a sua própria pergunta.