老师这个错误是什么呀

老师这个错误是什么呀

Exception in thread "main" java.lang.NullPointerException





package com.imooc.jdbc.sample;

import com.alibaba.druid.pool.DruidDataSource;
import com.alibaba.druid.pool.DruidDataSourceFactory;
import com.imooc.jdbc.common.DbUtils;

import javax.sql.DataSource;
import java.io.FileInputStream;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.Date;
import java.util.Properties;

/*
* Druid连接池配置与使用
*
* */
public class DruidSample {
public static void main(String[] args) {
//        1.加载属性文件
       Properties properties = new Properties();//利用这个对象来保存我们的配置信息
       String propertyFile = DruidSample.class.getResource("druid-config.properties").getPath();
       try {
propertyFile = new URLDecoder().decode(propertyFile, "UTF-8");
       } catch (UnsupportedEncodingException e) {
e.printStackTrace();
       }
//编译的时候会将空格转换为%20
       Connection conn = null;
       PreparedStatement pstmt = null;
       ResultSet rs = null;
       try {

properties.load(new FileInputStream(propertyFile));
//        2.获取DataSource数据源对象
           DataSource dataSource = DruidDataSourceFactory.createDataSource(properties);
//        3.创建数据库的连接
           conn = dataSource.getConnection();
           pstmt = conn.prepareStatement("select * from goods limit 0,10");
           rs = pstmt.executeQuery();
           while (rs.next()) {
int id = rs.getInt("id");
               String ename = rs.getString("ename");
               float price = rs.getFloat("price");
               String desp = rs.getString("desp");
               Date sj = rs.getDate("hiredate");
               System.out.println(id + "-" + ename + "-" + price + "-" + desp + "-" + sj);
           }
} catch (Exception e) {
e.printStackTrace();
       }finally {
DbUtils.closeConnection(conn, pstmt, rs);
       }
}

}


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
好帮手慕阿满 2021-04-06 19:02:50

同学你好,加载文件时,缺少前边的“/”,如:

http://img1.sycdn.imooc.com//climg/606c3fc6098ba64510470127.jpg

建议同学加上再试试。

祝学习愉快~

好帮手慕阿满 2021-04-06 18:28:58

同学你好,报错提示是空指针异常,通常是使用为null的对象调用方法时出现。问一下同学报错出现在哪一行,建议同学具体指出来。

祝学习愉快~

  • 提问者 慕工程8205364 #1

    ​Exception in thread "main" java.lang.NullPointerException

    at com.imooc.jdbc.sample.DruidSample.main(DruidSample.java:25)


    Process finished with exit code 1


    String propertyFile = DruidSample.class.getResource("druid-config.properties").getPath();

    这一行,老师

    2021-04-06 18:43:18
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师