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新手,那么我建议您阅读教程。他们很好:)