zoukankan      html  css  js  c++  java
  • Apache Commons configuration使用入门

    使用Commons  Configuration可以很好的管理我们的配置文件的读写,

    官网:http://commons.apache.org/configuration

    需要用到commons-lang,commons-collections,commons-logging,log4j jar包

    public class Test {
        
        public static  void main(String[] args) throws ConfigurationException, InterruptedException {
            xmlLoadTest();
            fileLoadTest();
            saveTest();
            runtimeReload();
        }

        //xml文件
        public static void xmlLoadTest() throws ConfigurationException{
            String file = "test1.xml";
            XMLConfiguration config = new XMLConfiguration(Test.class.getResource(file));
            System.out.println(config.getString("conf.url"));
            System.out.println(config.getDouble("conf.money"));
        }
      
        //properties文件
        private static void fileLoadTest() throws ConfigurationException {
            String file = "test2.properties";
            PropertiesConfiguration config = new PropertiesConfiguration(Test.class.getResource(file));
            System.out.println(config.getString("url"));
        }

        //保存到文件
        public static void saveTest() throws ConfigurationException{
            String file = "test2.properties";
            PropertiesConfiguration config = new PropertiesConfiguration(Test.class.getResource(file));
            //设置自动保存 或显示调用 config.save();
            config.setProperty("colors.background", "#000000");
            config.setAutoSave(true);
        }

        //运行期参数修改加载
        public static void runtimeReload() throws ConfigurationException, InterruptedException{
            String file = "test2.properties";
            PropertiesConfiguration config = new PropertiesConfiguration(Test.class.getResource(file));
            config.setReloadingStrategy(new FileChangedReloadingStrategy());
            System.out.println(config.getString("url"));
            Thread.sleep(10000);//在休眠期间,手动修改文件里面的url值后观察日志情况
            System.out.println(config.getString("url"));
        }

    }

    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    JavaScript DOM 编程艺术 公用方法
    JavaScript DOM 编程艺术
    Echart 的formatter及重写line chart
    PHP 导出csv
    Linux 搭建PHP环境
    学习新思路
    fork产生子进程利用pipe管道通信
    进程间通信 管道
    进程间通信(IPC) 简介
    java 多态
  • 原文地址:https://www.cnblogs.com/weiguo21/p/4823997.html
Copyright © 2011-2022 走看看