关于J2EE设计的页面登陆JSP

作业是写一个数据库管理系统,现在卡在登陆页面的验证上面。在网页上输出的用户名和密码都和数据库里的一样
但验证就是不通过
while(rs.next())
{
out.println(username);
out.println(password);
out.println(rs.getString(1));
out.println(rs.getString(2));
out.println(rs.getString(1).trim().compareTo(username)==1);
if((rs.getString(1).trim().compareTo(username)==0)&&(rs.getString(2).trim().compareTo("password")==0))
{
validated=true;
}
}

if(validated)
out.print("成功");
else
out.print("失败");
%>

帮忙看看哪里出错了

4个回答

(rs.getString(2).trim().compareTo("password")==0)
和“password”写死的字符串比,肯定不等啊

rs之前的代码怎么写的,rs有没有遍历出数据库里所有的记录?数据库连接有没有出错,数据库字段中1是不是用户名,2是不是密码
out.println(rs.getString(1).trim().compareTo(username)==1);这个结果是什么?
compareTo写成equals看看rs.getString(1).trim().equals(username)
另外,数据库查询不需要那么“呆”
用 select 用户名,密码 from 表 where 用户名='username' and 密码='password' 其中字段名,username password 表名用你实际的替换
查询下有没有记录就可以了。

如果是数据库的话,你可以考虑用sql语言,来提取账号密码
Statement里面带有很多方法,比如executeUpdate可以实现插入,更新和删除等
你确定使用的是账号密码那个数据库吗

调试一下,看看进入的验证输出结果

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问