首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

Web开刺配置文件无缓存加载

2012-09-08 
Web开发配置文件无缓存加载/** * 读取文件,若文件修改后则重新加载,否则使用缓存 * @param classpath * @r

Web开发配置文件无缓存加载

/** * 读取文件,若文件修改后则重新加载,否则使用缓存 * @param classpath * @return * @throws IOException */public static String getTextByPathNoCached(String classpath) throws IOException {String filePath=getInstance().getClass().getResource(classpath).getFile();File currFile=new File(filePath);InputStream in=null;boolean modifiedB=isModified(classpath,currFile.lastModified());if(modifiedB){//重新加载  in =new FileInputStream(filePath);}else {  in = getInstance().getClass().getResourceAsStream(classpath);if (in == null) {throw new FileNotFoundException(classpath + "(系统找不到指定的文件。)");}}byte[] chs = new byte[in.available()];in.read(chs);in.close();return new String(chs, "utf-8");}/** * 判断文件是否修改 * @param keypath * @return */public static boolean isModified(String keypath,long curr){boolean isModified=false;String lastModified=System.getProperty(keypath);if(null==lastModified){System.setProperty(keypath, Long.valueOf(curr).toString());}else {long lastModifiedL=Long.valueOf(System.getProperty(keypath));isModified=curr!=lastModifiedL;}//更新最后一次修改时间/**if(isModified){System.setProperty(keypath, Long.valueOf(curr).toString());}**/log.info("File res:"+keypath+"\t is modified "+isModified);return isModified;}

?

热点排行