Java~服务层未能调用DAO层并抛出NullPointerException
我是否错误地实现了调用DAO层的方法?断点在DAO方法中没有命中,异常抛出只提到NullPointerException。敬请告知。多谢各位 服务层: 公共类图书服务{Java~服务层未能调用DAO层并抛出NullPointerException,java,Java,我是否错误地实现了调用DAO层的方法?断点在DAO方法中没有命中,异常抛出只提到NullPointerException。敬请告知。多谢各位 服务层: 公共类图书服务{ private static BookServiceImpl myInstance; private BookDAO dao; public static BookServiceImpl getInstance() { if (myInstance == null) {
private static BookServiceImpl myInstance;
private BookDAO dao;
public static BookServiceImpl getInstance() {
if (myInstance == null) {
myInstance = new BookServiceImpl();
}
return myInstance;
}
public List<Book> getBookList(BookDTO dto) {
return dao.getBookList(dto);
}
}
看起来您从未将值设置为:
private BookDAO dao;
在BookServiceImpl
中,导致此行:
return dao.getBookList(dto);
将NPE作为dao抛出是空的
您需要在访问它之前实例化它。在BookServiceImpl
private BookDAO dao; // not initialize
然后你打电话来
return dao.getBookList(dto); // here dao is null.
然后你会得到NullPointerException
耶,你是对的……我忘了……一直在想会发生什么……哈哈……无论如何……谢谢兄弟……耶,你是对的……我忘了……一直在想会发生什么……哈哈……无论如何……谢谢兄弟。。。
return dao.getBookList(dto); // here dao is null.