Java getResourceAsStream() 方法会缓存文件的问题

xxx.getClass().getClassLoader().getResourceAsStream("d:/test-config.properties")

这方法确实会缓存文件, 在WebApp里面,在不重启tomcat的情况下,修改本地文件,程序跑的时候不会加载最新的本地文件。

如果需要动态修改比如配置文件而不重启server,需要替换方法:

xxx.getClass().getClassLoader().getResource("d:/test-config.properties").openStream()

不过对于访问频繁的情况下,不建议用后者,io开销影响性能

原文地址:https://www.cnblogs.com/tomcatandjerry/p/4607055.html