高手看看问题出哪了:可能是因为 
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();
    }
}}

解决方案 »

  1.   

    对了高手 需要数据库的http://www.fs2you.com/zh-cn/files/f29a22ae-ae10-11dc-a1f7-0014221f3995/
    可以下,放到同一目录就行了,谢谢!!
      

  2.   


    char[]   password   =jt2.getPassword(); 
     //将这句改成下面这句就行了
    String  password   =jt2.getText();
      

  3.   

    我会了是这样的:
    String password = String.valueOf(jt2.getPassword()); 
    把password改成上面的形式就可以了。