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

web使用中修改config.properties/xml文件,自动部署

2012-09-19 
web应用中修改config.properties/xml文件,自动部署今天在做项目的时候,碰到了一个需求,需要动态的修改conf

web应用中修改config.properties/xml文件,自动部署

今天在做项目的时候,碰到了一个需求,需要动态的修改config.properties,原本是一个简单的问题,结果每次修改完之后,项目都会重新部署,这样的话,session就会自己关掉。其他的一些功能也无从谈起了。开发工具用的是eclipse。

操作properties的类如下:

public class ReadProperties {private Map<String, String> props = new HashMap<String, String>();private static String cfgFilePath = "/config.properties";private String ZYTZ;public String getZYTZ() {return ZYTZ;}public void setZYTZ(String zytz) {ZYTZ = zytz;}private void readConf(){Properties properties = new Properties();try {properties.load(this.getClass().getResourceAsStream(          cfgFilePath));} catch (Exception e) {System.out.println("不能读取属性文件. " + "请确保" + cfgFilePath+ "在CLASSPATH指定的路径中");return;}Enumeration<Object> e = properties.keys();          //枚举所有 key-value对          while (e.hasMoreElements()) {              String keyO = (String) e.nextElement();              String value = properties.getProperty(keyO);            props.put(keyO, value);        }  }public void writeConf(String key,String value){ Properties properties = new Properties();          try {          properties.load(this.getClass().getResourceAsStream(          cfgFilePath));                                       OutputStream fos = new FileOutputStream(this.getClass().getResource(cfgFilePath).getPath());             //修改一个              properties.setProperty(key, value);            properties.store(fos,"this is header");              fos.close();            } catch (IOException e1) {              // TODO Auto-generated catch block              e1.printStackTrace();          }      }public String getStrByParam(String param){if(props.isEmpty())readConf();String paramValue = props.get(param);return paramValue;}}
?请问有什么方法能够动态修改properties之后,不自动部署项目吗?

热点排行