Tomcat无法读取手动修改资源文件

0

在Tomcat下面手动修改资源文件,发现使用getResourceAsStream重新读取配置并没有被修改。
然后看了一下源码发现,Tomcat对资源文件进行了缓存:

// (0) Check for a cached copy of this resource
stream = findLoadedResource(name);
if (stream != null) {
    if (log.isDebugEnabled())
        log.debug("  --> Returning stream from cache");
    return (stream);
}

所以导致使用SuccessCodeConfig.class.getResourceAsStream("/successCode.properties");读取配置时不能读取到修改的内容。

所以应该修改为:

new FileInputStream(SuccessCodeConfig.class.getResource("/successCode.properties").getFile());