getClass().getClassLoader().getResourceAsStream() 正在缓存资源

2022-09-03 06:49:26

我有一个资源(速度模板),我希望能够在开发过程中交换。然而

getClass().getClassLoader().getResourceAsStream() 

似乎缓存了模板。除了使用文件装入器而不是类装入器之外,还有没有办法禁用此功能?


答案 1

要避免缓存,您可以使用:

getClass().getClassLoader().getResource().openStream()

这等于使用速度而不是我想。我会使用文件加载器。URLResourceLoaderClasspathResourceLoader


答案 2

看看类似的东西是否有帮助(省略异常处理):

URL res = getClass().getClassLoader().getResource(resName);
if (res != null) {
    URLConnection resConn = res.openConnection();
    resConn.setUseCaches(false);
    InputStream in = resConn.getInputStream();
}

推荐