问题描述
properties文件(实时变化) 能否 通过java代码 实时加载 网上搜了一些解析properties文件的方法,第一次可以正确解析出来但是当properties文件变化时,再去解析发现结果还是第一次的结果,并没有变化代码如下 // 生成输入流 InputStream ins=this.class.getResourceAsStream("../config/config.properties"); // 生成properties对象 Properties p = new Properties(); try { p.load(ins); } catch (Exception e) { e.printStackTrace(); }
解决方案
// 用这种试下。in = new BufferedInputStream(new FileInputStream(file));
解决方案二:
思路很简单。每次读的时候判断properties文件的时间戳进行对比,如果properties文件的时间戳已变,则重新加载一遍properties文件到内存...
解决方案三:
问题出在this.class.getResourceAsStre("../config/config.properties"); 用getResourceAsStre读取文件之后,会把文件存在内存中缓存中,后来每一次读取都是读取内存中的内容了,如果时时加载的话不要用带缓存流就可以解决你这个问题了
时间: 2024-11-02 08:38:19