Validacão de usuario (RESOLVIDO)

2 respostas
java
R

Boa tarde, poderiam me ajudar a identificar o meu erro ?
Estou tentando fazer uma validação de login porem nao estou conseguindo identificar.

Essa é minha conexão

public class ConectaBanco {

    public Statement stm;
    public Connection con;
    public ResultSet rs;
    

    private String driver = "org.postgresql.Driver";
    private String url = "jdbc:postgresql://localhost:5432/ds_teste";
    private String user = "postgres";
    private String password = "postgres";

    public void Conexao() {
        try {
            Class.forName(driver).newInstance();
            con = DriverManager.getConnection(url, user, password);

            stm = con.createStatement();
            
        } catch (Exception e) {
        }
        
    }

essa é minha classe modelo

public class modeloUsuario {
    
    private long id;
    private String login;
    private String senha;

/*get.... set..*/

Essa é a classe de controle

ConectaBanco con = new ConectaBanco();

    public boolean logar(modeloUsuario model) {
        boolean autenticado = false;
        String sql;
        try {
            sql = "select * from usuario where login = ? and senha = ? ";

            PreparedStatement ps = con.con.prepareStatement(sql);
            ps.setString(1, model.getLogin());
            ps.setString(2, model.getSenha());

            con.rs = ps.executeQuery();

            if (con.rs.next()) {
                JOptionPane.showMessageDialog(null, "Entrando...");
                String login = con.rs.getString("login");
                String senha = con.rs.getString("senha");
                autenticado = true;
            } else {
                JOptionPane.showMessageDialog(null, "Erro ao efetuar login.");
                ps.close();
                autenticado = false;
            }
        } catch (SQLException ex) {
            JOptionPane.showMessageDialog(null, ex);
        }
        return autenticado;
    }

E o meu botao no frame

String login;
    String senha;

    login = txtLogin.getText();
    senha = txtSenha.getText();

    modelUser.setLogin(login);
    modelUser.setSenha(senha);

    controleUser.logar(modelUser);

porem o erro que retorna quando eu informo os dados no frame é esse:

att;

2 Respostas

Mike

Na linha 26 da classe controleUsuario tem algo nulo

R

Conseguir resolver, eu somplismente me esqueci de iniciar a conexao, por isso ele retornava nulo no meu.

PreparedStatement ps = con.con.prepareStatement(sql);

Entao, antes do meu try chamei o meu CON.CONEXAO() da minha classe de con…

Criado 14 de maio de 2018
Ultima resposta 14 de mai. de 2018
Respostas 2
Participantes 2