注册 登录
编程论坛 J2EE论坛

关于通过javaBean验证用户登陆的程序 的问题

ruihua 发布于 2006-09-15 16:12, 2354 次点击

想通过将用户名和密码封装在javaBean里,然后通过javaBean实现验证用户登陆,程序代码如下:
login.jsp

<%@page contentType="text/html;charset=gb2312" language="java" %>

<html>
<head><title>use JavaBean</title>
</head>
<body>
<div align="center">用户登陆
<form name="login" action="checkLogin.jsp" method="get">
<table border="0">
<tr>
<td>
用户名:
</td>
<td>
<input type="text" name="userName" >
</td>
</tr>
<tr>
<td>
密码:
</td>
<td>
<input type="password" name="userPassword" >
</td>
</tr>
<tr>
<td>
<input type="submit" name="submit" value="提交">
</td>
<td>
<input type="reset" name="reset" value="清除">
</td>
</tr>
</table>
</form>
</div>
</body>
</html>


checkLogin.jsp:

<%@page contentType="text/html;charset=gb2312" language="java" %>
<jsp:useBean id="t" class="login.CheckLogin" scope="session" />
<%
String username=(String)request.getParameter("userName");
String password=(String)request.getParameter("userPassword");
if(t.check(username,password)==true)
{
out.println("Login Success!");
}
else
{
out.println("UserName or Password Error!");
}
%>

CheckLogin.java:

package login;
public class CheckLogin
{
String userName="abc";
String password="def";

public boolean check(String username,String password)
{
if((username==this.userName)&&(password==this.password))
return true;
else
return false;
}
}

只有本站会员才能查看附件,请 登录

5 回复
#2
ruihua2006-09-15 16:17

可奇怪的问题是:在文件框中输入正确的用户名及密码后,程序显示结果始终是:"UserName or Password Error!".就我的分析问题出在红色部分的那两个字符串变量上,将红色部分换成"abc","def"程序应正确了。也就是通过这两个变量传进内容到javaBean里面出问题了。还是有其它问题?其实这是一个非常简单的程序,可搞不明白它为什么出错?
请朋友们指导一下!

#3
无理取闹2006-09-15 16:52
用equals
#4
ruihua2006-09-15 17:21
谢谢。改后就可以了。可为何在java中不会出现这样的问题?
#5
无理取闹2006-09-15 17:22
比较对象当然要用equals不能用==


#6
amani4212008-11-13 10:46
1