代码有点问题

package 图书借阅管理系统;

  1. import java.awt.*;
  2. import java.awt.event.*;
  3. import javax.swing.*;
  4. import java.sql.*;
  5. public class BookDelete extends JFrame implements ActionListener {
  6. private static final long serialVersionUID = 1L;
  7. DataBaseManager db = new DataBaseManager();
  8. ResultSet rs;
  9. Container c;
  10. JLabel TipLabel = new JLabel("请输入要删除的书名:", JLabel.CENTER);
  11. JTextField bookDeleteTextField = new JTextField(40);
  12. JButton yesBtn, exitBtn;
  13. JPanel panel1 = new JPanel();
  14. public BookDelete() {
  15. super("删除书籍信息");
  16. c = getContentPane();
  17. c.setLayout(new BorderLayout());
  18. c.add(TipLabel, BorderLayout.NORTH);
  19. c.add(bookDeleteTextField, BorderLayout.CENTER);
  20. yesBtn = new JButton("确定");
  21. exitBtn = new JButton("退出");
  22. yesBtn.addActionListener(this);
  23. exitBtn.addActionListener(this);
  24. panel1.add(yesBtn);
  25. panel1.add(exitBtn);
  26. c.add(panel1, BorderLayout.SOUTH);
  27. }
  28. public void actionPerformed(ActionEvent e) {
  29. if (e.getSource() == exitBtn) {
  30. this.dispose();
  31. } else if (e.getSource() == yesBtn) {
  32. try {
  33. String strSQL = "select borrowed_count from books where bookName ='"
  34. + bookDeleteTextField.getText().trim() + "'";
  35. rs = db.getResult(strSQL);
  36. if (!rs.first()) {
  37. JOptionPane.showMessageDialog(null, "书库里没有你要删除的书!");
  38. } else {
  39. String strSql = "delete from books where bookName ='" + bookDeleteTextField.getText().trim()
  40. + "'and borrowed_count=0";
  41. rs.first();
  42. int count = rs.getInt(1);
  43. if (!(count == 0)) {
  44. JOptionPane.showMessageDialog(null, "此书还有学生没有还!\n现在还不能从书库中删除。。。");
  45. this.dispose();
  46. }
  47. JOptionPane.showMessageDialog(null, "删除成功!");
  48. db.closeConnection();
  49. this.dispose();
  50. }
  51. } catch (SQLException sqle) {
  52. System.out.println(sqle.toString());
  53. } catch (Exception ex) {
  54. System.out.println(ex.toString());
  55. }
  56. }
  57. }
  58. }

最后运行的时候 会报空指针错误

上传的附件
你的回答被采纳后将获得: 15点积分 (将会扣除手续费1点积分。)

keyboard_arrow_left上一篇 : 想学游戏开发,应该直接学习游戏引擎还是从游戏引擎原理学起呢? 实习生去那些公司更容易通过呢? : 下一篇keyboard_arrow_right

3个回答

Schoolleave
2020-06-01 22:01:42

你要问问题,起码也给下出错信息和出错行数吧?要不这么多代码,你让大佬们怎么看啊~ 大佬们的时间可是很宝贵的!
根据你提供的”报空指针错误“错误描述,我只能推测某行代码可能是指针没有申请内存,指向了空地址,导致的报错!

xiaoya
2020-06-02 09:50:43

可以检查下代码,是不是指针没有new,就被直接调用了

xiaoya
2020-06-02 11:06:17

这样吧,你下个断点,单步调试,一步一步往下走,看看是在哪一行代码开始报错的,这样就定位到出错代码行数了,然后在结合上下文代码分析。要不然这样子直接用肉眼扫描代码,这个不是正确的调bug思路

精彩评论

  • 啥都学不进去,如何不迷茫
    楼主也曾迷茫过,当然想的多了,做得少了,就会成为你迷茫的主要原因。 所以在你仔细思考人生的时候,我们就该有所行动了,不要让懒惰成为你堕落的理由。 只有通过不断努力行动,你才不会被超越。
    2020-10-15 10:41:05 thumb_up( 4 )
  • 啥都学不进去,如何不迷茫
    其实就是想的多,做的少了。总是想学一门很有用、一劳永逸的东西,这是不可能的。还是静下心来好好钻研一门,然后你就发现,从中得到的东西会对别的也很有用。记得看过一篇文章,说如果你能深入的钻研C语言,达到比较高的段位,那么,再学其他的编程语言,就是简单的熟悉一下语法的问题了。
    2020-10-19 00:10:00 thumb_up( 2 )
  • 该如何学安卓逆向入门呢?
    看书,看课程。
    2020-09-17 15:24:10 thumb_up( 1 )
  • 数据结构应该怎么学
    看视频,教授会给你生动形象的例子,我考试前就是在慕课自学的
    2019-11-13 17:13:50 thumb_up( 2 )
eject