急!java access 登录问题!在线等!

haoyanbinok 2007-12-19 04:55:25
高手看看问题出哪了:可能是因为
char[] password =jt2.getPassword(); 的getPassword的API更新了(这个已改过了)。
再就是:
ResultSet rs = stmt.executeQuery("select * from user where username='" +
user + "' AND password='" + password + "'");
这句了。是不是password是char[]的,没有把正确的格式的password传给上边的查询语句啊?高手谢谢!!只看password相关的语句即可。不胜感激!
代码如下:
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
import java.lang.*;
import java.sql.*;

public class JF_login1 implements ActionListener {

JFrame jf;

JPanel jp1,jp2;
JLabel jl1,jl2;
JTextField jt1;
private JPasswordField jt2= new JPasswordField();
JButton jb1,jb2;

public void go(){
jf=new JFrame("登录");


jp1=new JPanel(new GridLayout(2,2));
jp2=new JPanel(new FlowLayout());

jf.add(jp1,BorderLayout.CENTER);
jf.add(jp2,BorderLayout.SOUTH);
jl1=new JLabel("用户ID");
jl2=new JLabel("密码");

jt1=new JTextField();
jt2=new JPasswordField();

jp1.add(jl1);
jp1.add(jt1);
jp1.add(jl2);
jp1.add(jt2);

jb1=new JButton("确定");
jb2=new JButton("取消");


jp2.add(jb1);
jb1.addActionListener(this);
jp2.add(jb2);

Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
Dimension frameSize = jf.getSize();



jf.setLocation((screenSize.width) / 2-100,
(screenSize.height) / 2-100);
//this.setVisible(true);
jf.setSize(300,150);
jf.setVisible(true);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main (String[] args) {
new JF_login1().go();

}
public void actionPerformed(ActionEvent e){
String user = jt1.getText().trim();
char[] password =jt2.getPassword();
/******连接数据库*********/
try {
String strurl =
"jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=student.mdb";
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection conn = DriverManager.getConnection(strurl);
Statement stmt = conn.createStatement();
/****判断用户输入的信息****/
if(user.equals("")||password.equals(""))
JOptionPane.showMessageDialog(null, "用户名或密码不能为空", "警告",
JOptionPane.WARNING_MESSAGE);
else {
/*从数据库中查询用户名和密码*/
ResultSet rs = stmt.executeQuery("select * from user where username='" +
user + "' AND password='" + password + "'");
/*如果信息正确则进行以下操作*/
if(rs.next()){
JOptionPane.showMessageDialog(null, "登陆成功");
}
else
JOptionPane.showMessageDialog(null, "登陆失败", "警告",
JOptionPane.WARNING_MESSAGE);
}
}
catch(Exception ee){
ee.printStackTrace();
}
}

}
...全文
66 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
haoyanbinok 2007-12-21
  • 打赏
  • 举报
回复
我会了是这样的:
String password = String.valueOf(jt2.getPassword());
把password改成上面的形式就可以了。
DukerJava 2007-12-20
  • 打赏
  • 举报
回复

char[] password =jt2.getPassword();
//将这句改成下面这句就行了
String password =jt2.getText();
haoyanbinok 2007-12-19
  • 打赏
  • 举报
回复
对了高手 需要数据库的http://www.fs2you.com/zh-cn/files/f29a22ae-ae10-11dc-a1f7-0014221f3995/
可以下,放到同一目录就行了,谢谢!!

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧