先看报错
java.lang.NullPointerException
at java.util.Properties$LineReader.readLine(Properties.java:434)
at java.util.Properties.load0(Properties.java:353)
at java.util.Properties.load(Properties.java:341)
at com.wxy.utils.JDBCUtils.<clinit>(JDBCUtils.java:22)
at com.wxy.utils.Test.main(Test.java:7)
Exception in thread "main" java.lang.NullPointerException
at com.wxy.utils.JDBCUtils.getConnection(JDBCUtils.java:37)
at com.wxy.utils.Test.main(Test.java:7)
出错代码段
20 Properties pro = new Properties();
21 InputStream is = JDBCUtils.class.getClassLoader().getResourceAsStream("druid.properties");
22 pro.load(is);
很显然这里是没有成功加载配置文件,应该是加载配置的文件流出了问题,加载路径不对
解决办法
出问题的是这条语句 class.getClassLoader().getResourceAsStream(“path”)
path是默认从classpath根目录下获取,classpath的根目录就是src
但SpringBoot项目会使用maven,此时默认配置文件位置在resources目录下
所以将Druid的properties配置文件放到resources后问题完美解决不再报错
如果项目目录中没有resources,可以在src/main下新建
也可以在pom.xml中更改maven项目默认配置文件位置