如何在我的JSwing代码中修复“ NullPointerException”?

时间:2019-11-02 21:04:31

标签: java swing exception nullpointerexception

我正在处理一个 JSwing 项目,其中用户输入与MySQL数据库匹配的用户名和密码。我的代码中出现了'NullPointerException'。另外请告诉我我的代码是否有问题:)。我已经使用 JBcrypt 在MySQL的MD5加密中存储了密码。 我的JButton代码:

private void kButton3ActionPerformed(java.awt.event.ActionEvent evt) 
{                                         
            String sql = "SELECT * FROM account WHERE Username=? AND Password=?";
            char[] pass = jPasswordField1.getPassword();
            String passString = new String(pass);
            String hashed = BCrypt.hashpw(passString, BCrypt.gensalt());
            if(!isNullOrEmpty(jTextField1.getText()) && !isNullOrEmpty(passString))
            {
                try
                {
                    pst = conn.prepareStatement(sql);
                    pst.setString(1, jTextField1.getText());
                    pst.setString(3, hashed);
                    rs = pst.executeQuery();
                    rs.next();
                    if((jTextField1.getText() == null ? rs.getString(1) == null : jTextField1.getText().equals(rs.getString(1))) && BCrypt.checkpw(passString, hashed))
                    {
                        rs.close();
                        pst.close();
                        setVisible(false);
                        Login ob = new Login();
                        ob.setVisible(true);    
                    }
                    else
                    {
                        JOptionPane.showMessageDialog(null, "Incorrect username or password");        
                    }
                }
                catch(SQLException e)
                {
                    JOptionPane.showMessageDialog(null, e);
                }
            }
            else
            {
                JOptionPane.showMessageDialog(null, "Some fields are empty");   
            }
}

NullPointException在此代码的某处显示。另外,如果我的md5加密有问题,请告知。

0 个答案:

没有答案