日期:2014-05-20  浏览次数:21620 次

请教Java操作sql数据库的问题
[code=Java][/code]

程序运行后单击button,数据库中内容返回不到JTextArea中,并出现以下错误,请高手指导.
java.lang.NullPointerException
at bus.test.actionPerformed(test.java:54)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
以下是程序代码:
public class Odbc
{
   
  private Connection con = null;
 
  public Connection getConnection()
{
String url = "jdbc:odbc:bond";//数据库URL
String userName = "sa";//登录数据库用户名
String password = "";//用户密码

try
{
//登录JDBC-ODBC驱动程序
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

con = DriverManager.getConnection(url, userName, password);

}
catch(SQLException e)
{
e.printStackTrace();

}
catch(ClassNotFoundException ex)
{
ex.printStackTrace();
}

return con;
  }

}
public class test extends JFrame implements ActionListener
{

private JButton button;
private JScrollPane resultareaScrollPane;
private JSplitPane SplitPane;
private JTextArea resultarea;
private Odbc sql = new Odbc();

public test()
{
button = new JButton("button");
button.addActionListener(this);
JTextArea resultarea = new JTextArea();
resultarea.setLineWrap(true);
JScrollPane resultareaScrollPane = new JScrollPane(resultarea);
JSplitPane SplitPane = new JSplitPane(JSplitPane.VERTICAL_SPLIT,button,resultareaScrollPane);
this.getContentPane().add(SplitPane);
this.setSize(300,200);
this.setLocation(100,100);
this.setVisible(true);
addWindowListener(new WindowAdapter() {
  public void windowClosing(WindowEvent e) {
  System.exit(0);
  }
  });
}


public void actionPerformed(ActionEvent event)
{
if(event.getSource() == button)
{

try
{
Connection con = sql.getConnection();
String command = "select * from student";
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(command);

while(rs.next())
{
String reSname = rs.getString("Sname").trim();
resultarea.append(reSname);