我写了一个登录界面,在数据库类是这样写的:
public boolean denglu(String name,String pwd)
{
String sql="select username from users where userpwd=?";
boolean b=false;
try {
ps = con.prepareStatement(sql);
ps.setString(1, pwd);
rs = ps.executeQuery(); while (rs.next()) {
String na = rs.getString(1);
String p=rs.getString(2);
if (name.trim().equals(na)&&pwd.trim().equals(p)) {
b = true;
break;
} }
} catch (SQLException ex) {
System.out.println("登录错误");
}return b;
}
界面类是这样写的,:
public void dlBut_actionPerformed(ActionEvent e) {
String name= this.yhmTex.getText();
char[] pa=this.mimaPass.getPassword();
String pwd=String.valueOf(pa);
Date d=new Date();
d.con();
boolean b=d.denglu(name,pwd);
d.close();
if(b)
{
JOptionPane.showMessageDialog(this,"登录成功!");
ZhuFrame xf=new ZhuFrame();
xf.setVisible(true); }else
{
JOptionPane.showMessageDialog(this,"用户名或密码错误!","错误",JOptionPane.ERROR_MESSAGE);
} }
忙我看看是哪里错了,我运行时总出现用户名或密码错误。
public boolean denglu(String name,String pwd)
{
String sql="select username from users where userpwd=?";
boolean b=false;
try {
ps = con.prepareStatement(sql);
ps.setString(1, pwd);
rs = ps.executeQuery(); while (rs.next()) {
String na = rs.getString(1);
String p=rs.getString(2);
if (name.trim().equals(na)&&pwd.trim().equals(p)) {
b = true;
break;
} }
} catch (SQLException ex) {
System.out.println("登录错误");
}return b;
}
界面类是这样写的,:
public void dlBut_actionPerformed(ActionEvent e) {
String name= this.yhmTex.getText();
char[] pa=this.mimaPass.getPassword();
String pwd=String.valueOf(pa);
Date d=new Date();
d.con();
boolean b=d.denglu(name,pwd);
d.close();
if(b)
{
JOptionPane.showMessageDialog(this,"登录成功!");
ZhuFrame xf=new ZhuFrame();
xf.setVisible(true); }else
{
JOptionPane.showMessageDialog(this,"用户名或密码错误!","错误",JOptionPane.ERROR_MESSAGE);
} }
忙我看看是哪里错了,我运行时总出现用户名或密码错误。
try {
ps = con.prepareStatement(sql);
ps.setString(1, name);
ps.setString(2, pwd);
rs = ps.executeQuery();
......
2. ps = con.prepareStatement(sql);
ps.setString(1, username);
ps.setString(2, userpwd);
rs = ps.executeQuery();
3. if (name.trim().equals(na)&&pwd.trim().equals(p)) {
return true;
break;
}