从数据库中获取值时线程主java.lang.NullPointerException中的异常

波兰人

我只是想在eclipse上运行一个有问题的Java程序,但是却收到NullPointerException。我的代码发布在下面。请告诉我我做错了什么。

Rect.java

package org.spring.model;

public class Rect {

    private int id;
    private String name;

    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }

    public Rect(int rectId, String rectName)
    {
        setId(rectId);
        setName(rectName);
    }


}

JdbcDaoImplement.java

    package org.spring.dao;

    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;

    import org.spring.model.Rect;

public class JdbcDaoImplement {

    public Rect getRect(int rectId)
    {
        Connection conn=null;

        try
        {
            Class.forName("oracle.jdbc.OracleDriver");
            String jdbcUrl = "jdbc:oracle:thin:@localhost:1521:ORCL";
            conn = DriverManager.getConnection(jdbcUrl, "system", "abcd");
            PreparedStatement ps=conn.prepareStatement("SELECT * FROM RECTANGLE WHERE id=?");
            ps.setInt(1, rectId);

            Rect rect=null;
            ResultSet rs=ps.executeQuery();
            if(rs.next()==true)
            {
                rect=new Rect(rectId,rs.getString("name"));
            }
            rs.close();
            ps.close();
            return rect;
        }
        catch(Exception e)
        {
            throw new RuntimeException();
        }
        finally
        {
            try {
                conn.close();
            } catch (SQLException e) {
                //e.printStackTrace();

            }
        }
    }

}

最后是JdbcDemo.java

package org.spring;

import org.spring.dao.JdbcDaoImplement;
import org.spring.model.Rect;

public class JdbcDemo {

    public static void main(String[] args) {
        Rect rect=new JdbcDaoImplement().getRect(1);
        System.out.println(rect.getName());
    }

}

堆栈跟踪为:

Exception in thread "main" java.lang.NullPointerException
    at org.spring.JdbcDemo.main(JdbcDemo.java:10)
肯特郡

您的main方法中很可能rect为null,然后您调用rect.getName(),然后Bang!NPE。

因为在您的getRect(int rectId)方法中,您处理了该方法中的异常,然后返回rect,如果出现问题或rs.next()错误,则将返回一个空rect对象。

您可能会考虑做的是,要么重新设计该getRect()方法,使其从不返回null,例如,如果未找到任何记录或发生异常,则抛出异常;或在您的main方法中,检查rect,确保其不为null。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在线程“主”中获取异常java.lang.NullPointerException

来自分类Dev

线程java.lang.NullPointerException中的异常

来自分类Dev

“线程“主”中的异常java.Lang.NullPointerException”错误

来自分类Dev

错误:线程“主”中的异常java.lang.NullPointerException

来自分类Dev

线程“主”中的异常java.lang.NullPointerException在打印Pojo值时

来自分类Dev

线程“主”中的异常java.lang.NullPointerException-HBase索引数据

来自分类Dev

线程“主”中的异常java.lang.ExceptionInInitializerError原因:java.lang.NullPointerException

来自分类Dev

线程“ Thread-5”中的异常java.lang.NullPointerException

来自分类Dev

请帮助我“线程主java.lang.nullpointerexception中的Java异常”

来自分类Dev

线程“主”中的异常java.io.StringReader上的java.lang.NullPointerException。<init>(未知源)

来自分类Dev

Java,线程“主”中的异常java.lang.NullPointerException由于未初始化对象而导致

来自分类Dev

运行Web Scrap程序时出现“线程“主”中的异常java.lang.NullPointerException”错误

来自分类Dev

“线程“主”中的异常java.lang.NullPointerException”-CSV至Arff

来自分类Dev

Spring with Hibernate-线程“主”中的异常java.lang.NullPointerException

来自分类Dev

Univocity解析器-代码未运行:线程“主”中的异常java.lang.NullPointerException

来自分类Dev

运行Web Scrap程序时出现“线程“主”中的异常java.lang.NullPointerException”错误

来自分类Dev

线程“主”中的异常java.lang.NullPointerException虚拟堆栈类

来自分类Dev

转换为MYSQL时Java中的线程“ main”中的异常java.lang.NullPointerException

来自分类Dev

在线程“主”中获取异常java.lang.StackOverflowError

来自分类Dev

为什么我在Java中有此异常:线程“主”中的异常java.lang.NullPointerException

来自分类Dev

“ AWT-EventQueue-0”中的异常java.lang.NullPointerException

来自分类Dev

“ AWT-EventQueue-0”中的异常java.lang.NullPointerException

来自分类Dev

使用Jaxb unmarshal / marshal时,线程“ main”中的异常java.lang.NullPointerException

来自分类Dev

使用JNotify时在线程“主” java.lang.UnsatisfiedLinkError中获取异常

来自分类Dev

Java Applet中的线程“ AWT-EventQueue-1”中的异常java.lang.NullPointerException

来自分类Dev

PDFbox异常-线程“主”中的异常java.lang.VerifyError

来自分类Dev

GUI中的线程“ AWT-EventQueue-0”中的异常java.lang.NullPointerException?

来自分类Dev

JavaFx-线程“ JavaFX应用程序线程”中的无尽异常java.lang.NullPointerException

来自分类Dev

线程“ JavaFX应用程序线程”中的异常java.lang.NullPointerException

Related 相关文章

  1. 1

    在线程“主”中获取异常java.lang.NullPointerException

  2. 2

    线程java.lang.NullPointerException中的异常

  3. 3

    “线程“主”中的异常java.Lang.NullPointerException”错误

  4. 4

    错误:线程“主”中的异常java.lang.NullPointerException

  5. 5

    线程“主”中的异常java.lang.NullPointerException在打印Pojo值时

  6. 6

    线程“主”中的异常java.lang.NullPointerException-HBase索引数据

  7. 7

    线程“主”中的异常java.lang.ExceptionInInitializerError原因:java.lang.NullPointerException

  8. 8

    线程“ Thread-5”中的异常java.lang.NullPointerException

  9. 9

    请帮助我“线程主java.lang.nullpointerexception中的Java异常”

  10. 10

    线程“主”中的异常java.io.StringReader上的java.lang.NullPointerException。<init>(未知源)

  11. 11

    Java,线程“主”中的异常java.lang.NullPointerException由于未初始化对象而导致

  12. 12

    运行Web Scrap程序时出现“线程“主”中的异常java.lang.NullPointerException”错误

  13. 13

    “线程“主”中的异常java.lang.NullPointerException”-CSV至Arff

  14. 14

    Spring with Hibernate-线程“主”中的异常java.lang.NullPointerException

  15. 15

    Univocity解析器-代码未运行:线程“主”中的异常java.lang.NullPointerException

  16. 16

    运行Web Scrap程序时出现“线程“主”中的异常java.lang.NullPointerException”错误

  17. 17

    线程“主”中的异常java.lang.NullPointerException虚拟堆栈类

  18. 18

    转换为MYSQL时Java中的线程“ main”中的异常java.lang.NullPointerException

  19. 19

    在线程“主”中获取异常java.lang.StackOverflowError

  20. 20

    为什么我在Java中有此异常:线程“主”中的异常java.lang.NullPointerException

  21. 21

    “ AWT-EventQueue-0”中的异常java.lang.NullPointerException

  22. 22

    “ AWT-EventQueue-0”中的异常java.lang.NullPointerException

  23. 23

    使用Jaxb unmarshal / marshal时,线程“ main”中的异常java.lang.NullPointerException

  24. 24

    使用JNotify时在线程“主” java.lang.UnsatisfiedLinkError中获取异常

  25. 25

    Java Applet中的线程“ AWT-EventQueue-1”中的异常java.lang.NullPointerException

  26. 26

    PDFbox异常-线程“主”中的异常java.lang.VerifyError

  27. 27

    GUI中的线程“ AWT-EventQueue-0”中的异常java.lang.NullPointerException?

  28. 28

    JavaFx-线程“ JavaFX应用程序线程”中的无尽异常java.lang.NullPointerException

  29. 29

    线程“ JavaFX应用程序线程”中的异常java.lang.NullPointerException

热门标签

归档