我在动态网络项目中,我想加载一个资源文件。
我这样做了:
String queryTemplate = IOUtils.toString(this.getClass().getResource(
"test.rq"));
test.rq
中存在src/main/resources
,但我在该行上有空指针。
我想也许src / main / resources不是maven中的主要(默认)资源文件夹,所以我把它放在pom中
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
</build>
然后我的asp页面停止工作(我不知道为什么),所以我认为有一种方法可以从src/main/resources
获取资源而无需更改pom
答案 0 :(得分:2)
使用此:
InputStream testIn = getClass().getResourceAsStream("/test.rq");
String queryTemplate = IOUtils.toString(testIn);
IOUtils.toString()
似乎将InputStream
作为输入,因此我使用了getResourceAsStream()
。
我对空指针的猜测是你需要引用类路径的根来访问资源文件,因此我使用/test.rq
,其中斜杠表示root。