java.lang.NullPointerException properties$LineReader.readLine

properties.load()出现空指针异常

异常图片
在编写DBCP时使用配置文件加载后,赋值给数据源,出现空指针异常。

package com.demo.dbcp;

import java.io.InputStream;
import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.SQLException;
import java.util.Properties;

import javax.sql.DataSource;

import org.apache.commons.dbcp2.BasicDataSource;
import org.apache.commons.dbcp2.BasicDataSourceFactory;

import com.demo.dao.Main;



public class Dbcp2 {
	public static DataSource ds=null;
	static{
		Properties pro=new Properties();
		try {
			//通过类加载找到文件路径
			InputStream in=new Dbcp2().getClass()
					.getClassLoader().getResourceAsStream("com/demo/dbcp/dbcpConfig.properties");
			//以数据流的形式加载到创建好的配置文件中
			pro.load(in);
			//初始化参数
			
			ds=BasicDataSourceFactory.createDataSource(pro);
			
			
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	public static void main(String args[]) throws SQLException{
		Connection conn=ds.getConnection();
		DatabaseMetaData metaData=conn.getMetaData();
		//打印数据库连接信息
		System.out.println(metaData.getURL()
				+"Username="+metaData.getUserName()
				+","+metaData.getDriverName());
		
	}
		
}

这是正确的代码,错误原因为
InputStream in=new Dbcp2().getClass()
					.getClassLoader().
					getResourceAsStream("com/demo/dbcp/dbcpConfig.properties");
路径写错了,
类加载文件路径是从src开始的,
所以如果你写在包里要写出她的绝对路径。

为什么插入代码块就退不出了,呜呜呜~
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值