问题描述
再使用德鲁伊连接池时,正常的java项目可以读取src下的配置文件,但是web项目用同样的代码读出来却为null
下面普通java代码
public class JDBCutils {
//使用德鲁伊数据库连接池技术
private static DataSource source ;
static{
try {
Properties pros = new Properties();
InputStream is = ClassLoader.getSystemClassLoader().getResourceAsStream("druid.properties");
System.out.println(is);
pros.load(is);
source = DruidDataSourceFactory.createDataSource(pros);
} catch (Exception e) {
e.printStackTrace();
}
}
public static Connection getConnection() throws SQLException {
Connection conn = source.getConnection();
return conn;
}
}
可以读取配置文件不为bull
下面是同样的代码在web项目中
读取的结果就直接为null,两段代码是直接cv的没有任何区别且配置文件都在src目录下
解决方案
将
ClassLoader.getSystemClassLoader().getResourceAsStream();
改为
JDBCutils.class.getClassLoader().getResourceAsStream();
其中JDBCutils是我web项目中获取数据库连接的工具类。
修改后即可正常获取连接。