使用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"));
    }
}

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

Apache Commons configuration使用入门的更多相关文章

  1. 使用Apache Commons Configuration读取配置信息

    在项目中使用一些比较新的库总会给你带来很多快乐,在这篇文章中,我将会给你介绍一个在Java中读取配置文件的框架——Apache Commons Configuration framework. 你会了 ...

  2. Apache Commons Configuration读取xml配置

    近期项目自己手写一个字符串连接池.因为环境不同有开发版本.测试版本.上线版本.每一个版本用到的数据库也是不一样的.所以需要能灵活的切换数据库连接.当然这个用maven就解决了.Apache Commo ...

  3. Apache Commons Configuration的应用

    Apache Commons Configuration的应用 Commons Configuration是一个java应用程序的配置管理工具.可以从properties或者xml文件中加载软件的配置 ...

  4. Apache Commons IO入门教程(转)

    Apache Commons IO是Apache基金会创建并维护的Java函数库.它提供了许多类使得开发者的常见任务变得简单,同时减少重复(boiler-plate)代码,这些代码可能遍布于每个独立的 ...

  5. [转]Apache Commons IO入门教程

    Apache Commons IO是Apache基金会创建并维护的Java函数库.它提供了许多类使得开发者的常见任务变得简单,同时减少重复(boiler-plate)代码,这些代码可能遍布于每个独立的 ...

  6. commons configuration管理项目的配置文件

    Commons Confifutation commons configuration可以很方便的访问配置文件和xml文件中的的内容.Commons Configuration 是为了提供对属性文件. ...

  7. Apache Commons 常用工具类整理

    其实一直都在使用常用工具类,只是从没去整理过,今天空了把一些常用的整理一下吧 怎么使用的一看就明白,另外还有注释,最后的使用pom引入的jar包 public class ApacheCommonsT ...

  8. Commons Configuration之二基本特性和AbstractConfiguration

    Configuration接口定义一大堆方法.一切从头开始实现这些方法非常困难.因为AbstractConfiguration类存在.该类在Commons Configuration中充当大多数Con ...

  9. apache commons io入门

    原文参考  http://www.javacodegeeks.com/2014/10/apache-commons-io-tutorial.html    Apache Commons IO 包绝对是 ...

随机推荐

  1. 两台计算机有相同的IP地址会发生什么情况?两台计算机有相同的MAC地址会发生什么情况?

    1 相同IP   a) 同一网段内   会发生IP地址冲突.两台主机在特定情况下是可以同时使用同一个IP地址的.但是如果这两台主机在同一个网络内,大多数情况下,二者或者其中之一的连通性将会被破坏.比方 ...

  2. centos 用户指定目录访问

    在linux系统中,比如有这样一个场景,abc/a.abc/b.abc/c三个目录,用户user1,user2分别隶属于A组和B组. 控制:用户user1只能访问abc/a和abc/b目录,而用户us ...

  3. C#整数的三种强制类型转换int、Convert.ToInt32()、int.Parse()的区别

    .int适合简单数据类型之间的转换,C#的默认整型是int32(不支持bool型): .int.Parse(string sParameter)是个构造函数,参数类型只支持string类型: .Con ...

  4. java的acm输入输出格式+大数语法

    1.类名称必须采用public class Main方式命名 2.多组输入,读取到文件尾 Scanner scan=new Scanner(System.in); while(scan.hasNext ...

  5. SPSS-方差分析

    方差分析(单因素方差分析.多因素方差分析.协方差分析) 基本概念:进行两组以上均数的比较,检验两个或两个以上样本均数差别的显著性(T检验主要是检验两个样本均数差别的显著性)              ...

  6. git flow分支管理

    阅读目录 两种核心分支 三种临时分支 Git Flow流程示例代码 Git Flow工具 分支命名规范 总结 git flow是Vincent Driessen提出了一个分支管理的策略,非常值得借鉴. ...

  7. veil-evasion免杀处理

    veil-evasion 开启 y 配置安装 安装好之后,再次运行veil-evasion 有50个payload模块 update 升级 list 查看有哪些payload 选一个payload 它 ...

  8. Java 日期时间 Date类型,long类型,String类型表现形式的转换

    Java 日期时间 Date类型,long类型,String类型表现形式的转换 1.java.util.Date类型转换成long类型 java.util.Date dt = new Date(); ...

  9. 搭建ssm环境

    在eclipse下搭建ssm框架. 1.新建maven项目. 2.添加jar包依赖 3.修改web.xml配置文件 <?xml version="1.0" encoding= ...

  10. PHPActiveRecord 学习三

    #事务处理 注意事务 数据库要用InnoDB引擎 $c1 = User::connection(); try { //开启事务 $c1->transaction(); //sql语句 $sql ...