zoukankan      html  css  js  c++  java
  • 代码修改配置文件的参数值

    /**
    * IPMTPP Config.java
    * 2013-5-29
    */
    package cn.ipanel.msg.util.common;

    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.net.URL;
    import java.util.Enumeration;
    import java.util.Properties;

    import com.ipanel.webapp.framework.util.Log;

    public class Log4jConfig {

    final static String CONFIG_FILE = "log4j.properties";
    private static final String TAG = "Log4jConfig";
    static Properties props = new Properties();
    static URL url=null;
    static {

    url = Log4jConfig.class.getClassLoader().getResource(CONFIG_FILE);


    }

    public synchronized static String getConfig(String name, String defaultValue) {
    try {
    props.load(new FileInputStream(new File(url.getFile())));
    } catch (Exception e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    return props.getProperty(name, defaultValue);
    }

    public synchronized static String getConfig(String name) {
    return getConfig(name, null);
    }

    public static String getRootLogger() {
    return getConfig("log4j.rootLogger");
    }

    public static void setRootLogger(String type) throws Exception {
    StringBuffer buffer = new StringBuffer();

    props.load(new FileInputStream(new File(url.getFile())));
    Enumeration en = props.propertyNames(); // 得到配置文件的名字
    while (en.hasMoreElements()) {
    String strKey = (String) en.nextElement();
    String strValue = props.getProperty(strKey);
    Log.i(TAG, strKey + "=" + strValue);
    if ("log4j.rootLogger".equals(strKey)) {

    buffer.append("log4j.rootLogger").append("=").append((type))
    .append(" ");
    } else {
    buffer.append(strKey).append("=").append(strValue).append(" ");
    ;
    }

    }

    FileOutputStream fout = null;
    try {

    fout = new FileOutputStream(new File(url.getFile()));
    fout.write(buffer.toString().getBytes());
    } catch (Exception e) {
    throw e;
    } finally {
    if (fout != null)
    try {
    fout.close();
    fout = null;
    } catch (IOException e) {
    throw e;
    }
    }
    }


    }

  • 相关阅读:
    使用WCF实现SOA面向服务编程—— 架构设计
    ASP.NET MVC 4 RC的JS/CSS打包压缩功能
    自定义WCF的配置文件
    C#综合揭秘——分部类和分部方法
    结合领域驱动设计的SOA分布式软件架构
    【转】数字证书类型
    kubeadm部署单master Kuberntes集群
    持续交付
    编译在docker alpine中可用的go程序
    百度云盘,文件重命名
  • 原文地址:https://www.cnblogs.com/Syney/p/7886372.html
Copyright © 2011-2022 走看看