求助高手帮我解决java中连接数据库时配置文件的问题,总是抛出空指针的异常

这是我的DBUtil.java文件用来连接数据库和读取配置文件packagecom.lore.db;importjava.sql.*;importjava.util.*;... 这是我的DBUtil.java文件 用来连接数据库和读取配置文件
package com.lore.db;

import java.sql.*;
import java.util.*;
import java.io.*;

public class DBUtil {
private String driver;
private String url;
private String uid;
private String pwd;

public void config() {
try {
InputStream is = this.getClass().getResourceAsStream(
"dbconfig.properties");
Properties prop = new Properties();

prop.load(is);
this.driver = prop.getProperty(driver);
System.out.print(driver);
this.url = prop.getProperty(url);
System.out.print(url);
this.uid = prop.getProperty(uid);
System.out.print(uid);
this.pwd = prop.getProperty(pwd);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

public Connection getConn() {
Connection conn = null;

try {
this.config();
Class.forName(driver);
conn = DriverManager.getConnection(url, uid, pwd);

} catch (Exception ex) {
ex.printStackTrace();
}
return conn;
}

public static void main(String arg[]) {
DBUtil db = new DBUtil();
System.out.println(db.getConn());

}
}

这个是我的配置文件dbconfig.properties
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/user
uid=root
pwd=olcp
数据库名 用户名 密码都没错 但是一运行就会报空指针的错误 下面是报的错
java.lang.NullPointerException
at java.util.Hashtable.get(Hashtable.java:334)
at java.util.Properties.getProperty(Properties.java:932)
at com.lore.db.DBUtil.config(DBUtil.java:20)
at com.lore.db.DBUtil.getConn(DBUtil.java:37)
at com.lore.db.DBUtil.main(DBUtil.java:49)
null
展开
 我来答
zhangligai1988
2011-01-07 · TA获得超过280个赞
知道小有建树答主
回答量:99
采纳率:0%
帮助的人:70.5万
展开全部
this.driver = prop.getProperty(driver);
是这行抛异常了,看异常也能找到。是你带吗的第20行。
是你的prop是空对象,说明:
InputStream is = this.getClass().getResourceAsStream(
"dbconfig.properties");
Properties prop = new Properties();
没有读取到配置文件,请仔细检查配置文件是否存在。
如果是在src根目录里 加
InputStream is = this.getClass().getResourceAsStream(
"classpath:dbconfig.properties");
leversss
2011-01-07 · TA获得超过608个赞
知道答主
回答量:85
采纳率:0%
帮助的人:76.2万
展开全部
dbconfig.properties这个文件没有读到会出现该异常
dbconfig.properties这个文件放在classpath下。如果是使用eclipseIDE你可以放在src目录下。或者创建一个源码目录,放在下面也可以找到。
你也可以通过其它方式设置classpath来找到这个文件
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
putiwushu479
2011-01-07
知道答主
回答量:20
采纳率:0%
帮助的人:14.7万
展开全部
我们是这样写的:
jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://127.0.0.1:3306/score?autoReconnect=true&useUnicode=true&characterEncoding=utf8
jdbc.username=root
jdbc.password=root
注意url里面我加了字符集
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
strafer_yhj
2011-01-07
知道答主
回答量:2
采纳率:0%
帮助的人:2570
展开全部
dbconfig.properties这个文件和你的类放在同一个包里吗?如果dbconfig.properties是放在src里的你试试InputStream is = this.getClass().getResourceAsStream( "/dbconfig.properties");
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
kanglujiushi
2011-01-07
知道答主
回答量:1
采纳率:0%
帮助的人:0
展开全部
配置文件的路径放错了,或是你的路径指向不对。找不到配置文件就报那个错了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式