已有101人关注
你好
发表在Java图书答疑 2011-06-16
是否精华
版块置顶:
继上面的问题。继续问。还有我用回复的方法给你们继续问题,你们没有回复,我只能重新的建一个新的贴子。
我跟据无语的提示。用了打印输出的方法。确实获得了用户名密码为1.
密码为SQLServerResultSet:1
我输入password,时。也是按的1:
不知道。为什么总是报错。
有什么原因造的。会是定义的类型有差别吗?
在SQLSERVER 当中 password. 我用是CHAR(10);
在ECLIPSE 当中我用的是。STRING。
JButton b=new JButton();
b.setText("登 录");
b.setBounds(23,77,89,28);
getContentPane().add(b);
b.addActionListener(new ActionListener(){
public void actionPerformed(final ActionEvent arg0){
String user=text1.getText();
String password1=new String(p1.getPassword());
if(user.equals("") || password1.equals("")){
JOptionPane.showMessageDialog(null,"用户名和密码不能为空。");
}
else{
boolean ok=DAO.okUser(user,password1);
if(ok){
new MainFrame().setVisible(true);
loginframe.this.dispose();

}
}
}


});

public static boolean okUser(String user,String password1){
try{
Connection conn=getConn(); // 获得数据库连接
// 创建PreparedStatement对象,并传递SQL语句
PreparedStatement ps=conn.prepareStatement("select password from tb_user where username=?");
ps.setString(1, user); // 为参数赋值
ResultSet rs=ps.executeQuery(); 
System.out.println("密码为"+rs);
if (rs.next() && rs.getRow()>0){ // 查询到用户信息
String password=rs.getString(1);

if (password.equals(password1)){ 
return true; // 密码正确返回true
}else{

JOptionPane.showMessageDialog(null, "密码不正确。");
return false; // 密码错误返回false
}
}else{
JOptionPane.showMessageDialog(null, "用户名不存在。");
return false; // 用户不存在返回false
}
}catch(Exception ex){
JOptionPane.showMessageDialog(null, "数据库异常!\n"+ex.getMessage());
return false; // 数据库异常返回false
}

分享到:
精彩评论 1
link1986
学分:0 LV1
TA的每日心情
开心,今天又有时间打卡学习了
2021-10-11 09:59:58
2011-06-16
沙发
你好 看了你的问题 你的数据库是2008的 你连接数据库的驱动类是否做了修改 还有就是你所用的jar包是否是2008的

如果上面的操作正确 你可以看看你是否从数据库中查询到值

if (rs.next() && rs.getRow()>0){ // 查询到用户信息
String password=rs.getString(1); // 获得密码

System.out.println("看看你获取的密码是什么:"+password);    // 看看你获取的秘密是什么

if (password.equals(pwd)){ 
return true; // 密码正确返回true
}else{
JOptionPane.showMessageDialog(null, "密码不正确。");
return false; // 密码错误返回false
}
}
首页上一页 1 下一页尾页 1 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照