JOptionPane未显示..请检查我的代码:
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
//if (e.getActionCommand().equals("Ok")){
if ( e.getActionCommand().equals(btnOk) ){
if(connect(txtUser.getText(), txtPass.getText() ) ) {
JOptionPane.showMessageDialog(null, "WARNING", "Valid user!", JOptionPane.INFORMATION_MESSAGE);
}
else {
System.out.print("Wrong password!");
}
}
}
我的连接方法,请检查一下。
public boolean connect(String usr, String pwd){
try {
Class.forName("com.mysql.jdbc.Driver");
connection = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/USERS", "root", "root" );
PreparedStatement ps =
connection.prepareStatement( "SELECT lname, fname FROM employees where fname=? and lname =?" );
ps.setString(1,usr);
ps.setString(2,pwd);
resultSet = ps.executeQuery();
if(resultSet.next()) {
return true;
}
} catch (Exception e) {
e.printStackTrace();
}
return false;
} // end of connect method
我不知道我的代码有什么问题。任何帮助,将不胜感激。感谢
答案 0 :(得分:2)
如果它不打印密码错误!则表示它没有通过e.getActionCommand().equals(btnOk)
行。确保btnOk
是一个字符串,它是您要查找的字符串。
如果它打印密码错误,那么为什么会发生这种情况很简单。
btnOk
听起来像是一个按钮,而不是一个字符串(但没有任何额外的代码片段,我们只需要猜测),所以要小心不要测试String actionCommand和按钮之间的相等性。