| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1530 人关注过本帖
标题:JAVA 登陆界面出异常,大家看看,
只看楼主 加入收藏
sbfeeq
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2007-9-12
收藏
 问题点数:0 回复次数:6 
JAVA 登陆界面出异常,大家看看,
主函数是
package systemmanger;


import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Main extends JFrame
{
    JFrame f;
    private JLabel name=new JLabel("用 户 名:");
    private JLabel psw=new JLabel("密      码:");
    private JTextField tf1=new JTextField(10);
    private JTextField tf2=new JTextField(10);
    private JButton b1=new JButton("确定");
    private JButton b2=new JButton("取消");
    public  Main() {
       setLayout(new FlowLayout());
       add(name);
       add(tf1);
       add(psw);
       add(tf2);
       add(b1);
       b1.addActionListener(new actionthing());
       add(b2);
       b2.addActionListener(new actionthing());
        setBounds(400,300,200,150);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setVisible(true);
    }
   private class actionthing implements ActionListener //throws Exception
    {
        public void actionPerformed (ActionEvent e)
        {
            UserInfor ui=null;
            if(e.getSource() == b1)
            {
                String nameStr=tf1.getText();
                String pwdStr=tf2.getText();
                if(nameStr.equals("")||pwdStr.equals(""))
                {
                    JOptionPane.showConfirmDialog(Main.this,"帐号或密码不能为空","错误",JOptionPane.OK_CANCEL_OPTION,JOptionPane.ERROR_MESSAGE);
                }else
                {
                    try
                    {
                        ui=new UserInfor();
                    }catch(Exception g)   { System.out.println("数据库连结失败"); }
                    try
                    {
                        boolean temp=ui.isRight(nameStr,pwdStr);
                        ui.closeConnection();
                        if(temp)
                        {
                            System.out.println("密码有效");
                        }
                    }//catch(Exception g){ System.out.println("密码错误哦..");}
                    catch(Exception g){ g.printStackTrace();}
                }
            }
            else if(e.getSource() ==b2)
            {
                tf1.setText("");
                tf2.setText("");
            }
        }
    }
    public static void main(String[] args)
    {
        // TODO code application logic here
        new Main();
    }
   
}


连接数据库调用的类

package systemmanger;
import java.sql.*;
import java.util.*;
import org.omg.

public class UserInfor
{
    private Connection con;
    private String url="jdbc:microsoft:sqlserver://192.168.0.118:1433;DatabaseName=abc";
    private String user="sa";
    private String password="";
   
    /** Creates a new instance of UserInfor */
    public void UserInfor() throws ClassNotFoundException,SQLException,InstantiationException,IllegalAccessException
    {
        Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
        con = DriverManager.getConnection(url,user,password);
        Statement sql=con.createStatement();
        ResultSet rs= sql.executeQuery("select * from user2 ");
    }
    public boolean  isRight(String name,String psd) throws Exception
    {
        
        String Select="select * from user2 where name = '"+name+"'&& password = '"+psd+"'";
        Statement stm = con.createStatement();
        ResultSet rst = stm.executeQuery(Select);
        while(rst.next())
        {
            return true;
        }
        System.out.println("数据库测试成功。");
        return false;
    }
    public void closeConnection()
    {
        try{
            con.close();
        }catch(Exception e)
        {
            e.printStackTrace();
        }
    }

}

里面的user2 是数据库里面的表名  name 和 password 是表中的两个选取项。

函数里面的两个参数,是从登陆窗口传送过来的输入数据。

可是,当我每次输入数据后,一点确定按钮,编译器就会报。
java.lang.NullPointerException
这个异常,请问下, 这是什么原因啊

知道的说下.
谢谢了..
搜索更多相关主题的帖子: JAVA 界面 登陆 
2007-12-17 21:48
sbfeeq
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2007-9-12
收藏
得分:0 
唉,怎么就是没有人帮下我啊
对了,这几天,通过我的测试,基本上我知道是数据库的问题

SQL SERVER2000 的数据链接。我基本上别人说的方法都试过了,除了打SP3的补丁。

对了,SP3的丁是怎么安装的,知道的说下哦。。

3Q 3Q
2007-12-19 16:38
无缘今生
Rank: 2
等 级:新手上路
威 望:3
帖 子:523
专家分:7
注 册:2007-6-25
收藏
得分:0 
你所用的数据表里面有没有数据哦

时不再来!!!
2007-12-20 13:12
lgdcky
Rank: 2
等 级:论坛游民
威 望:5
帖 子:576
专家分:18
注 册:2006-8-5
收藏
得分:0 
那是空指针异常,可能是哪个变量没有声明!在程序里设置一个断点然后用DEBUG模式运行一下!看一下程序运行到哪里出异常的!

[[italic] 本帖最后由 lgdcky 于 2007-12-20 13:42 编辑 [/italic]]

2007-12-20 13:31
大葱
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2007-12-21
收藏
得分:0 
我编译都成问题;
前提:
path = D:\Program Files\Java\jdk1.5.0\bin
classpath = ,;

编译 框 中:
G:\学习\SSD\SSD3\课外>javac UserInfor.java

G:\学习\SSD\SSD3\课外>javac Main.java
Main.java:34: connot find symbol
symbol  :class UserInfor
...


下面就是哪里出错,都是不能找到class UserInfor。
2007-12-21 11:22
大葱
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2007-12-21
收藏
得分:0 
哈,我吧 package systemmanger; 语句注释掉就好了
是不是哪里还要设置package路径什么的啊,怎么设 ?

我是用 DOS 编译 运行的。
2007-12-21 11:28
sbfeeq
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2007-9-12
收藏
得分:0 
3楼说,我所用的数据表里面没有数据,是什么意思啊??
2007-12-21 22:44
快速回复:JAVA 登陆界面出异常,大家看看,
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018664 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved