public static boolean login(String name1, String password1){
if(name1==null||password1==null){//输入为空,直接返回false
return false;
}
Connection conn =null;
Statement statement =null;
ResultSet resultSet =null;
try {
conn = JDBCUtils.getconn();//工具类,
statement = conn.createStatement();
String sql = "select * from student where name = '"+name1+"' and password = '"+password1+"'";
resultSet = statement.executeQuery(sql);
System.out.println(resultSet.next());
return resultSet.next();
} catch (SQLException throwables) {
throwables.printStackTrace();
}finally {
JDBCUtils.close(conn,statement,resultSet);
}
return false;
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入用户名:");
String name = sc.next();
System.out.println("请输入密码:");
String password = sc.next();
if(login(name,password)){
System.out.println("登录成功");
}else {
System.out.println("用户名或密码错误");
}
}
在login方法中定义,如果输入null则直接返回false,下一步判断输入的信息与数据库中数据是否相同,返回相应的结果。
但是经过测试发现,即便在方法内部已经显示为true,main方法却仍然输出了错误信息,百撕不得骑姐啦。
望大神指教一二。