如果else循环条件在使用java swing时不起作用?
我正在尝试获取用户名和密码的数据库记录,并使用if-else语句进行验证。最终else语句未显示消息对话框。我被这件事缠住了,给我一个解决方案,并说我哪里做错了 我的完整代码如果else循环条件在使用java swing时不起作用?,java,conditional,Java,Conditional,我正在尝试获取用户名和密码的数据库记录,并使用if-else语句进行验证。最终else语句未显示消息对话框。我被这件事缠住了,给我一个解决方案,并说我哪里做错了 我的完整代码 String s1 = id.getText(); String s2 = new String(pass.getPassword()); try { Class.forName("org.apache.hive.jdbc.HiveDriver"); Connection c
String s1 = id.getText();
String s2 = new String(pass.getPassword());
try
{
Class.forName("org.apache.hive.jdbc.HiveDriver");
Connection con = DriverManager.getConnection("jdbc:hive2://localhost:10000/twitter_db","arunachalam","");
String sql = "select userid, password from user_reg where userid='"+s1+"'";
PreparedStatement ps = con.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
while(rs.next())
{
if((rs.getString("userid").equals(s1)) && (rs.getString("password").equals(s2)))
{
dispose();
showMessageDialog(null,"Login Successfully");
new UserPage().setVisible(true);
}
else if((rs.getString("userid").equals(s1)) && (!rs.getString("password").equals(s2)))
{
showMessageDialog(null,"Incorrect Password");
}
else
{
showMessageDialog(null,"Invalid User");
}
}
}
catch(Exception e)
{
showMessageDialog(null, e);
}
您对用户id和密码检查了两次相同的条件,所以每次它都检查第一个else if语句,但不满足最后一个else if。 请在下面的源代码中使用
else如果((rs.getString(“userid”).equals(s1))&&(!rs.getString(“password”).equals(s2)))
{
showMessageDialog(空,“密码不正确”);
}
如果((rs.getString(“userid”).equals(s1))&(!rs.getString(“password”).equals(s2)))
{
showMessageDialog(空,“密码不正确”);
}
可能是你正在尝试下面的代码,我已经更新
//检查用户id是否不相等
如果(!rs.getString(“userid”).equals(s1))&&(rs.getString(“password”).equals(s2)),则为else
{
showMessageDialog(空,“不正确的用户Id”);
}
如果((rs.getString(“userid”).equals(s1))&(!rs.getString(“password”).equals(s2)))
{
showMessageDialog(空,“密码不正确”);
}
Final-else语句未显示消息对话框-是否可以输入if
或if-else
中的一个,因此不输入Finalelse
您可以发布完整的代码吗?很容易跟踪..出于好奇,什么是ng if else
?s我将稍等片刻。else if
的意义是什么?还请注意,决不能像以前那样使用+创建sql查询