首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Eclipse开发 >

旋钮提交数据到mysql出错,请各位大侠帮忙!

2013-10-24 
按钮提交数据到mysql出错,请各位大侠帮忙!!!package xiaomoimport java.sql.*import java.awt.BorderLay

按钮提交数据到mysql出错,请各位大侠帮忙!!!
package xiaomo;

import java.sql.*;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Container;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.Box;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;

class BuildButton extends JDialog{
static Connection con;
static PreparedStatement sql;

public BuildButton(MessageFace messageface,String title){

super(messageface,"Please finish writing .",true);


//利用箱式布局管理器设计Name栏mb
//Birthday标签
Box IDBox = Box.createHorizontalBox();
IDBox.add(Box.createHorizontalStrut(30));
JLabel IDLabel = new JLabel("ID:");
IDBox.add(IDLabel);

IDBox.add(Box.createHorizontalStrut(20));
final JTextField IDTextField = new JTextField(30);
IDBox.add(IDTextField);
IDBox.add(Box.createHorizontalStrut(200));

//Name标签
Box NameBox = Box.createHorizontalBox();
NameBox.add(Box.createHorizontalStrut(30));
JLabel NameLabel = new JLabel("NAME:");
NameBox.add(NameLabel);

NameBox.add(Box.createHorizontalStrut(20));
final JTextField NameTextField = new JTextField(30);
NameBox.add(NameTextField);
NameBox.add(Box.createHorizontalStrut(200));

//Number标签
Box NumberBox = Box.createHorizontalBox();
NumberBox.add(Box.createHorizontalStrut(30));
JLabel NumberLabel = new JLabel("MobilePhone:");
NumberBox.add(NumberLabel);

NumberBox.add(Box.createHorizontalStrut(20));
final JTextField NumberTextField = new JTextField(30);
NumberBox.add(NumberTextField);
NumberBox.add(Box.createHorizontalStrut(200));

//QQNumber标签
Box QQNumberBox = Box.createHorizontalBox();
QQNumberBox.add(Box.createHorizontalStrut(30));
JLabel QQNumberLabel = new JLabel("QQNumber:");
QQNumberBox.add(QQNumberLabel);

QQNumberBox.add(Box.createHorizontalStrut(20));
final JTextField QQNumberTextField = new JTextField(30);
QQNumberBox.add(QQNumberTextField);
QQNumberBox.add(Box.createHorizontalStrut(200));

//Company标签
Box CompanyBox = Box.createHorizontalBox();
CompanyBox.add(Box.createHorizontalStrut(30));
JLabel CompanyLabel = new JLabel("Company:");
CompanyBox.add(CompanyLabel);

CompanyBox.add(Box.createHorizontalStrut(20));
final JTextField CompanyTextField = new JTextField(30);
CompanyBox.add(CompanyTextField);
CompanyBox.add(Box.createHorizontalStrut(200));


JButton b1 = new JButton("Finish");
JButton b2 = new JButton("Continue");

/*
* 要想使得JPanel面板划分窗体空间,
* 就必须使用网格布局管理器GridLayout和边界布局管理器BorderLayout
* 而且在添加组件是要注意:
* 先在container里对面板进行整体设置
* 而后在个面板中设置GridLayout
* 最后再添加到container中...
*/


//对container进行设置
Container container = getContentPane();
container.setLayout(new GridLayout(6,2,8,9));
setBounds(900, 50, 415, 220);
container.setBackground(Color.pink);

//对面板(容器的一种)进行设置
JPanel p1 = new JPanel(new GridLayout(1,2,8,9));
//行,列,水平,垂直
p1.setBackground(Color.pink);
JPanel p2 = new JPanel(new GridLayout(1,2,8,9));
p2.setBackground(Color.pink);
JPanel p3 = new JPanel(new GridLayout(1,2,8,9));
p3.setBackground(Color.pink);
JPanel p4 = new JPanel(new GridLayout(1,2,8,9));
p4.setBackground(Color.pink);
JPanel p5 = new JPanel(new GridLayout(1,2,8,9));
p5.setBackground(Color.pink);
JPanel p6 = new JPanel(new GridLayout(1,2));

//将组件添加到面板,再添加到container
p1.add(IDBox,BorderLayout.NORTH);
p1.add(IDTextField);

p2.add(NameBox,BorderLayout.NORTH);
p2.add(NameTextField);

p3.add(NumberBox,BorderLayout.NORTH);
p3.add(NumberTextField);

p4.add(QQNumberBox,BorderLayout.NORTH);
p4.add(QQNumberTextField);

p5.add(CompanyBox,BorderLayout.NORTH);
p5.add(CompanyTextField);

p6.add(b1,BorderLayout.NORTH);
p6.add(b2,BorderLayout.NORTH);

container.add(p1);
container.add(p2);
container.add(p3);
container.add(p4);
container.add(p5);
container.add(p6);

b1.addActionListener(new ActionListener(){
public void actionPerformed1(ActionEvent arg0){




try {

sql = con.prepareStatement("insert into xiaomotable" + "values(?,?,?,?,?)");
sql.setString(1, IDTextField.getText());
sql.setString(2, NameTextField.getText());
sql.setString(3, NumberTextField.getText());
sql.setString(4, QQNumberTextField.getText());
sql.setString(5, CompanyTextField.getText());


} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

});


}

}

亲各位大师帮小弟指点,错误出在红色的代码!!!



我想为按钮添加事件,使之可以实现将所填的数据添加到mysql数据库中,

但是一点击按钮就会出现以下错误反馈:

旋钮提交数据到mysql出错,请各位大侠帮忙!
数据库已连接好了,以另一个类在同一包中存在:

package xiaomo;
import java.sql.Connection;  
import java.sql.DriverManager;  
class connect{  
   public static void main(String args[]){
    String driver = "com.mysql.jdbc.Driver";//驱动程序名  
    String url = "jdbc:mysql://127.0.0.1:3306/xiaomo";  
    String user = "root";  
    String password = "";  
    try {         // 加载驱动程序  
    Class.forName(driver);  
    Connection con = DriverManager.getConnection(url, user, password);// 连续数据库  
    System.out.println("数据库连接成功!");
    }catch(Exception e){  
        System.out.println("数据库连接失败!");  
        e.printStackTrace();          
    }  
    
  }  


请各位大师指点!!!谢谢 mysql java 数据库
[解决办法]
把所有错误贴出来
[解决办法]
错误不全的,
[解决办法]
actionPerformed1多写了了个1啊,ActionListener只有actionPerformed这个方法
[解决办法]
BuildButton.java:149 空指针异常了。。仔细检查下,还有代码用标签发,这样看不清楚

热点排行