我写的一个用户登陆判断的JAVABEANpackage bean.js;
import java.sql.*;
public class UserRegist
{
String userid;
String userpassword;
public String getuserid()
{
return userid;
}
public void setuserid(String c)
{
userid=c;
}
public String getuserpassword()
{
return userpassword;
}
public void setuerpassword(String d)
{
userpassword=d;
}
//连接数据库
public UserRegist()
{
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException e) {}
}
public Boolean getResult()
{
int a=0;
int b=0;
Boolean result=true;
Connection con=null;
Statement sql=null;
ResultSet rs=null;
try{
con=DriverManager.getConnection("jdbc:odbc:sun","sa","");
sql=con.createStatement();
String cd="SELECT * FROM UserInfo";
rs=sql.executeQuery(cd);
while(rs.next())
{
String str1=rs.getString(1).trim();
String str2=rs.getString(2).trim();
if(str1.equals(userid)){ a=1;
if(str2.equals(userpassword)) b=1;
}
}
if(a==1&&b==1)
{result=true;}
else{
result=false;
}
}
catch(SQLException e1) {}
return result;
}
}前台无法正确分辨 result的值
import java.sql.*;
public class UserRegist
{
String userid;
String userpassword;
public String getuserid()
{
return userid;
}
public void setuserid(String c)
{
userid=c;
}
public String getuserpassword()
{
return userpassword;
}
public void setuerpassword(String d)
{
userpassword=d;
}
//连接数据库
public UserRegist()
{
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException e) {}
}
public Boolean getResult()
{
int a=0;
int b=0;
Boolean result=true;
Connection con=null;
Statement sql=null;
ResultSet rs=null;
try{
con=DriverManager.getConnection("jdbc:odbc:sun","sa","");
sql=con.createStatement();
String cd="SELECT * FROM UserInfo";
rs=sql.executeQuery(cd);
while(rs.next())
{
String str1=rs.getString(1).trim();
String str2=rs.getString(2).trim();
if(str1.equals(userid)){ a=1;
if(str2.equals(userpassword)) b=1;
}
}
if(a==1&&b==1)
{result=true;}
else{
result=false;
}
}
catch(SQLException e1) {}
return result;
}
}前台无法正确分辨 result的值
if(a==1&&b==1)
{result=true;}
else{
result=false;
}
}
String str2=rs.getString(2).trim();
取到的是userId和pass吗,是不是字段对应错了,最好改成用你的字段名称去取字段的值比较好
import java.sql.*;
public class UserRegist
{
String userid;
String userpassword;
public String getuserid()
{
return userid;
}
public void setuserid(String c)
{
userid=c;
}
public String getuserpassword()
{
return userpassword;
}
public void setuerpassword(String d)
{
userpassword=d;
}
//连接数据库
public UserRegist()
{
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException e) {}
}
public Boolean getResult()
{
boolean result=true;
Connection con=null;
Statement sql=null;
ResultSet rs=null;
try{
con=DriverManager.getConnection("jdbc:odbc:sun","sa","");
sql=con.createStatement();
String cd="SELECT * FROM UserInfo where userid= +'"userid+"' and userpassword='"+userpassword+"'";
rs=sql.executeQuery(cd);
if(!rs.next())
{
result=false;
}
}
}
catch(SQLException e1) {}
return result;
}
}
:<%
if(userRegist.getResult()==true)
{ out.println("<A href=choose.jsp>"+"登陆成功,点击进入主界面"+"</A>");
}
else(userRegist.getResult()==false)
{ out.println("<A href=denglu.jsp>"+"用户名或密码错误,点击返回登陆界面"+"</A>");
}%>
没问题吧?怎么我无论输入 什么都是成功登陆 晕了 搞了一天 都没进展 大家继续指教
try{
con=DriverManager.getConnection("jdbc:odbc:sun","sa","");
sql=con.createStatement();
String cd="SELECT * FROM UserInfo";
rs=sql.executeQuery(cd);
while(rs.next())
{
String str1=rs.getString(1).trim();
String str2=rs.getString(2).trim();
if(str1.equals(userid)){ a=1;
if(str2.equals(userpassword)) b=1;
}
}
if(a==1&&b==1)
{result=true;}
else{
result=false;
}
}
catch(SQLException e1) {}
如果你的sql语句或读数据的语句出错的话,直接出true,但你并不知道如什么问题。
所以一定要catch(SQLException e1) {System.out.println(e.getMessage())};要不就象这样,这一大堆代码里有问题,但不知道是什么,所以直接中断了,返回值总是原来设的true;
public UserRegist()
{
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException e) {}
}
public Boolean getResult()
{
Boolean result=true;
Connection con=null;
Statement sql=null;
ResultSet rs=null;
try{
con=DriverManager.getConnection("jdbc:odbc:sun","sa","");
sql=con.createStatement();
String cd="SELECT * FROM UserInfo WHERE userid= '"+userid+"' and userpassword='"+userpassword+"'";
rs=sql.executeQuery(cd);
if(!rs.next())
{
result=false;
}
}
catch(SQLException e) {
System.out.println(e.getMessage());
}
return result;
}
}