app在tomcat中运行,默认使用的是WebappClassLoader。
InputStream inputStream =Thread.currentThread().getContextClassLoader().getResourceAsStream(“xls/” +
xlsName);
inputStream只要加载过一次后,就会被WebappClassLoader缓存起来,如果需要加载新的资源文件,需要修改为以下方式:
// 因为webappclassloader会缓存加载的资源,所以每次手动去打开文件 // InputStream inputStream = // GameInstance.gameClassLoader.getResourceAsStream("xls/" + // xlsName); URL xlsURL = GameInstance.gameClassLoader.getResource("xls/" + xlsName); URLConnection resConn = xlsURL.openConnection(); resConn.setUseCaches(false); InputStream inputStream = resConn.getInputStream();
0 条评论。