Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JSP、SQL检索返回null的数据_Java_Sql_Jdbc - Fatal编程技术网

Java JSP、SQL检索返回null的数据

Java JSP、SQL检索返回null的数据,java,sql,jdbc,Java,Sql,Jdbc,为什么视图返回空值?提前谢谢 这是我的观点 String abb = "ab"; String cdd = "cd"; UserPass user = UserDb.selectUser(abb,cdd); out.println(user); 这是我的UserPass类 public class UserPass { String username; String password; public UserPass(){ this.username =

为什么视图返回空值?提前谢谢

这是我的观点

String abb = "ab";
String cdd = "cd";
UserPass user = UserDb.selectUser(abb,cdd);
out.println(user);
这是我的UserPass类

public class UserPass {
    String username;
    String password;

    public UserPass(){
       this.username ="";
       this.password ="";     
    }

    public void setUserName(String username) {
       this.username = username;
    }

    public String getUserName(){ 
       return username;
    }
}
最后是数据包UserDb

String query = "select user_name from UserPass where user_name = ? AND user_password = ? " ;

try{
    ps = connection.prepareStatement(query);
    ps.setString(1, username);
    ps.setString(2, password);

    rs = ps.executeQuery();

    if (rs.getString("user_name") != null) {
        UserPass up = new UserPass();
        up.setUserName(rs.getString("user_name"));
        return up;

    } else {
        return null;
    }
}
我的数据库很简单,条目有用户名和密码。视图返回空值

您需要首先使用它来检查当前行是否有效:

rs = ps.executeQuery();
if (rs.next()) {
    UserPass up = new UserPass();
    up.setUserName(rs.getString("user_name"));
    return up;
} else {
    return null;
}

你能把代码贴在你的“视图”上吗?谢谢!,你能帮我理解一下,如果我想使用带有条件的if语句来验证resultset内容吗?
if(rs.getString(“user\u name”)!=null)
块实际上是完全多余的。正是这个块需要被一个
if(rs.next())
.D'oh,是的,当然,
user\u name
是唯一被带回来的字段:)非常感谢,我希望我能简单地将技术上传到我的大脑中,如果你不介意的话,你能推荐我一个从你的经验中学到这一点的资源吗?我从一本书跳到另一本书,但我还是被这样的东西卡住了that@TrackmeifYouCan:如果您是JDBC新手,那么我建议您阅读教程。他们很好:)