Java学习者论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

手机号码,快捷登录

恭喜Java学习者论坛(https://www.javaxxz.com)已经为数万Java学习者服务超过8年了!积累会员资料超过10000G+
成为本站VIP会员,下载本站10000G+会员资源,购买链接:点击进入购买VIP会员
JAVA高级面试进阶视频教程Java架构师系统进阶VIP课程

分布式高可用全栈开发微服务教程

Go语言视频零基础入门到精通

Java架构师3期(课件+源码)

Java开发全终端实战租房项目视频教程

SpringBoot2.X入门到高级使用教程

大数据培训第六期全套视频教程

深度学习(CNN RNN GAN)算法原理

Java亿级流量电商系统视频教程

互联网架构师视频教程

年薪50万Spark2.0从入门到精通

年薪50万!人工智能学习路线教程

年薪50万!大数据从入门到精通学习路线年薪50万!机器学习入门到精通视频教程
仿小米商城类app和小程序视频教程深度学习数据分析基础到实战最新黑马javaEE2.1就业课程从 0到JVM实战高手教程 MySQL入门到精通教程
查看: 667|回复: 0

java+sql~程序编译出错~新手求助!

[复制链接]

该用户从未签到

发表于 2014-6-26 13:27:58 | 显示全部楼层 |阅读模式
3Java金币
import java.net.*;

import java.sql.*;

import java.awt.*;

import java.awt.event.*;

import java.io.*;

import java.util.*;

import javax.swing.*;

class Update extends JFrame implements ActionListener

{

JFrame f;

Container cp;

JPanel jp1,jp2,jp3,jp4,jp,jpanelWest;

JButton jbt1,jbt2;//按钮,确定、取消

JLabel label;//标签:修改密码

JTextField tf0,tf1,tf2,tf3,tf4,tf5,tf6,tf7,tf8,tf9,tf10;

String sno;

Update(){}

Update(String bookno)

{

sno=bookno;

f=new JFrame();

cp=f.getContentPane(); // 初始化

jp1=new JPanel();

jp2=new JPanel();

jp3=new JPanel();

jp4=new JPanel();

jpanelWest=new JPanel();

jp=new JPanel();

jbt1=new JButton("确定");

jbt2=new JButton("取消");

int size=20;

label=new JLabel("修改图书信息",SwingConstants.CENTER);

label.setFont(new Font("修改图书信息",Font.PLAIN,size));//加粗,字体大小20

label.setForeground(Color.blue);

tf1=new JTextField(20);

tf2=new JTextField(20);

tf3=new JTextField(20);

tf4=new JTextField(20);

tf5=new JTextField(20);

tf6=new JTextField(20);

tf7=new JTextField(20);

tf8=new JTextField(20);

tf9=new JTextField(20);

tf10=new JTextField(20);

//布局,添加控件

jp1.add(jbt1);

jp1.add(jbt2);

jp1.add(new JLabel("欢迎登陆"));

JPanel jpanel=new JPanel();

jpanel.add(label);

JPanel pp4=new JPanel();

JPanel jpane4=new JPanel();

cp.add(jpanel,"North");

JPanel pp2=new JPanel(new GridLayout(6,1));

pp4.setLayout(new GridLayout(6,1));

pp4.add(new JLabel("输入要修改的图书号: ",SwingConstants.RIGHT));

pp2.add(tf0);

pp4.add(new JLabel("原书名: ",SwingConstants.RIGHT));

pp2.add(tf1);

pp4.add(new JLabel("现书名: ",SwingConstants.RIGHT));

pp2.add(tf2);

pp4.add(new JLabel("原单价: ",SwingConstants.RIGHT));

pp2.add(tf3);

pp4.add(new JLabel("现单价: ",SwingConstants.RIGHT));

pp2.add(tf4);

pp4.add(new JLabel("原作者: ",SwingConstants.RIGHT));

pp2.add(tf5);

pp4.add(new JLabel("现作者: ",SwingConstants.RIGHT));

pp2.add(tf6);

pp4.add(new JLabel("原出版社: ",SwingConstants.RIGHT));

pp2.add(tf7);

pp4.add(new JLabel("现出版社: ",SwingConstants.RIGHT));

pp2.add(tf8);

pp4.add(new JLabel("原入库时间: ",SwingConstants.RIGHT));

pp2.add(tf9);

pp4.add(new JLabel("现入库时间: ",SwingConstants.RIGHT));

pp2.add(tf10);

pp2.add(new JLabel());

JPanel jpbutton=new JPanel();

jpbutton.add(jbt1);

jpbutton.add(jbt2);

pp2.add(jpbutton);

cp.add(pp4,"West");

cp.add(pp2,"Center");

cp.add(jpane4,"East");

f.setSize(500,450);

f.setVisible(true);

jbt1.addActionListener(this);//注册监听器

jbt2.addActionListener(this);

}

public void updateM()

{

try{

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

}catch(ClassNotFoundException e){System.out.println("加载驱动程序失败!");}

try{

//直接使用当前类目录下的数据库文件

Connection con=DriverManager.getConnection("jdbc:sqlserver://localhost:1433; DatabaseName=Book","sa","xuqianqian");

Statement sql=con.createStatement();

String utf0=tf0.getText().trim();

String queryMima="select * from book where 图书号='"+utf0+"'";

ResultSet rs=sql.executeQuery(queryMima);

if(rs.next())

{

String newname=tf2.getText().trim();

String newcost=tf4.getText().trim();

String newauthor=tf6.getText().trim();

String newchuban=tf8.getText().trim();

String newruku=tf10.getText().trim();

String s="update book set 图书名='"+newname+"',作者='"+newauthor+"',单价='"+newcost+"',出版社='"+newchuban+"',入库时间='"+newruku+"' where 图书号 ='"+utf0+"'";

sql=con.createStatement();

int update=sql.executeUpdate(s);

if(update==1)

{

JOptionPane.showMessageDialog(f,"图书信息修改成功!");

}

con.close();

f.repaint();

}else{

JOptionPane.showMessageDialog(null,"该用户不存在","警告!",

JOptionPane.YES_NO_OPTION);

}

tf0.setText("");

tf1.setText("");

tf2.setText("");

tf3.setText("");

tf4.setText("");

tf5.setText("");

tf6.setText("");

tf7.setText("");

tf8.setText("");

tf9.setText("");

tf10.setText("");

} catch(SQLException g)

{

System.out.println("E Code"+g.getErrorCode());

System.out.println("E M"+g.getMessage());

}

}

public void actionPerformed(ActionEvent e)

{

String cmd=e.getActionCommand();

if(cmd.equals("确定"))

{

if(tf0.getText().equals("")||tf1.getText().equals("")||tf2.getText().equals("")||tf3.getText().equals("")||tf4.getText().equals("")||tf5.getText().equals("")||tf6.getText().equals("")||tf7.getText().equals("")||tf8.getText().equals("")||tf9.getText().equals("")||tf10.getText().equals(""))

{

JOptionPane.showMessageDialog(null,"请填写图书的所有信息","提示",

JOptionPane.YES_NO_OPTION);

return;

}

}

else if(cmd.equals("取消"))

f.hide();

}

public static void main(String[]args)

{

new Update("");

}

}

报错:

Exception in thread "main" java.lang.NullPointerException

at java.awt.Container.addImpl(Container.java:1045)

at java.awt.Container.add(Container.java:365)

at Update.<init>(Update.java:57)

at Update.main(Update.java:157)

请问哪里有问题~~

回复

使用道具 举报

  • TA的每日心情
    开心
    2021-12-13 21:45
  • 签到天数: 15 天

    [LV.4]偶尔看看III

    发表于 2014-6-26 19:52:31 | 显示全部楼层
    Container 这个类的1045行 报空指针异常 应该有个对象没有实例化 可以找到这一行代码 贴出来。
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|手机版|Java学习者论坛 ( 声明:本站资料整理自互联网,用于Java学习者交流学习使用,对资料版权不负任何法律责任,若有侵权请及时联系客服屏蔽删除 )

    GMT+8, 2024-4-26 08:27 , Processed in 0.401204 second(s), 47 queries .

    Powered by Discuz! X3.4

    © 2001-2017 Comsenz Inc.

    快速回复 返回顶部 返回列表