本文主要研究的是java中的configuration类的用法,涉及maven自动加载,pom.xml配置和简单的java代码,具体如下。

properties文件是java平台默认的配置文件格式,其优点是格式清晰,简单易懂,使用commons-configuration读取properties文件也比较简单,代码如下:

基本用法:

1.加载jar包,我使用maven自动加载,pom.xml配置如下:

commons-configuration

commons-configuration

1.9

commons-lang

commons-lang

2.6

common-lang这个包要用新版的,如果不写这个依赖,commons-configuration会下载一个2.1旧版,导致编译出错

2.java代码:

propertiesconfiguration config = new propertiesconfiguration(“/database.properties”);

string username = config.getstring("name");

除了getstring()方法外,还有getboolean,getdouble,getinteger等不同返回类型的方法可以调用。

进阶用法:

一个项目有会有多个配置文件,这时有个统一的配置文件管理类就很有必要了,我写了一个简单的,大家可以参考下,有不妥的用法也请指出来

1.java类

package com.xxx.xxx.util;

import java.util.hashmap;

import java.util.map;

import org.apache.commons.configuration.configurationexception;

import org.apache.commons.configuration.propertiesconfiguration;

/**

*

* 读取配置文件类

*

*

* 根据配置文件名和属性key返回属性内容,configutil.get(configfile, property);

*

* @author shengzhi.rensz

*

*/

public class configutil {

private static configutil initor = new configutil();

private static map configmap = new hashmap();

private configutil() {

}

/**

* 获取内容

* @param configfile

* @param property

* @return

*/

public static string get(string configfile, string property) {

if(!configmap.containskey(configfile)) {

initor.initconfig(configfile);

}

propertiesconfiguration config = (propertiesconfiguration) configmap.get(configfile);

string value = config.getstring(property);

//todo log

return value;

}

/**

* 载入配置文件,初始化后加入map

* @param configfile

*/

private synchronized void initconfig(string configfile) {

try {

propertiesconfiguration config = new propertiesconfiguration(configfile);

configmap.put(configfile, config);

}

catch (configurationexception e) {

e.printstacktrace();

}

}

}

2.调用方法

configutil.get("/common/velocity.properties", "input.encoding");

public static void readproperties() throws configurationexception {

propertiesconfiguration pcfg = new propertiesconfiguration("config/cfg.properties");

system.out.println(pcfg.getstring("platform.jre"));

}

注意,这里的路径一定要搞清楚,配置文件是放在config文件夹中的;

总结

以上就是本文关于java中的configuration类详解的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

希望与广大网友互动??

点此进行留言吧!

java configuration类_JAVA中的Configuration类详解相关推荐

  1. java transient 关键字_java中的transient关键字详解

    前言 说实话学了一段时间java的朋友对于transient这个关键字依旧很陌生基本没怎么用过,但是transient关键字在java中却起到了不可或缺的地位!如果要说讲到,我觉得最可能出现的地方是I ...

  2. java io系统_java中的io系统详解

    Java 流在处理上分为字符流和字节流.字符流处理的单元为 2 个字节的 Unicode 字符,分别操作字符.字符数组或字符串,而字节流处理单元为 1 个字节,操作字节和字节数组. Java 内用 U ...

  3. java获取文件大小_Java中获取文件大小的详解及实例代码

    Java 获取文件大小 今天写代码时需要实现获取文件大小的功能,目前有两种实现方法,一种是使用File的length()方法:另外一种是使用FileInputStream的available()方法, ...

  4. java arrays.aslist()_Java中Arrays.asList()方法详解及实例

    Arrays.asList() 是将数组作为列表. 问题来源于: public class Test { public static void main(String[] args) { int[] ...

  5. USB CCID类协议中的APDU命令详解

    出处:http://blog.chinaunix.net/uid-29124653-id-4573075.html 原文地址:USB CCID类协议中的APDU命令详解 作者:jeffasdasd 最 ...

  6. java中throws用法_java中throws实例用法详解

    在程序出现异常时,会有一个抛出异常的throw出现,这里我们要跟今天所讲的throws区分开.throws的作用是声明抛出,在名称上也跟throw有所不同.下面我们就throws对策概念.语法.实例带 ...

  7. file java详解_Java中File的实例详解

    Java中File的实例详解 File 代表文件或者目录的类 构造函数 File(File parent,String child)---代表了指定父目录下的指定的子文件或者子目录 File(Stri ...

  8. java中main是什么_Java中的main()方法详解

    在Java中,main()方法是Java应用程序的入口方法,也就是说,程序在运行的时候,第一个执行的方法就是main()方法,这个方法和其他的方法有很大的不同,比如方法的名字必须是main,方法必须是 ...

  9. java中final详解_Java中final用法与详解

    Java中final用法与详解 final作为Java中经常用到的关键字,了解final的使用方法是非常有必要的.这里从final关键字在数据域.方法和类中三个方面分析final关键字的主要用法. f ...

  10. java中匿名内部类详解_java 中匿名内部类的实例详解

    搜索热词 java 中匿名内部类的实例详解 原来的面貌: class TT extends Test{ void show() { System.out.println(s+"~~~哈哈&q ...

最新文章

  1. HDU - 2041 - 超级楼梯(dp)
  2. 代码,绘画,设计常用的颜色名称-16进制HEX编码-RGB编码 对照一览表
  3. [MyBatisPlus]Plus分页插件的配置和使用
  4. codeforces1493 D. GCD of an Array(数论)
  5. ABP入门系列(1)——通过模板创建MAP版本项目
  6. css的一些常见问题处理方法
  7. tp摄像头的默认地址_tp-link怎么设置无线桥接 tp-link设置无线桥接方法【图文】...
  8. MySQL(8)--- 选择数据库
  9. Python探索记(10)——字符串(下)
  10. 笔记︱范数正则化L0、L1、L2-岭回归Lasso回归(稀疏与特征工程)
  11. [na]思科产品选型pdf
  12. 前端架构组件化开发系列二 (基于VUE 扩展组件)
  13. Code::Blocks下载及其汉化教程
  14. BZOJ#4816. [Sdoi2017]数字表格
  15. S5P4418裸机之SDIO程序
  16. 史上最被低估的神级学科,看完忍不住感慨“它”也太重要了!
  17. 西工大PAMI论文:发布大规模人群计数/定位基准平台
  18. msbuild 语法_[独孤九剑]持续集成实践(二)– MSBuild语法入门
  19. Ubuntu16.04下RealSense D435i的安装和使用
  20. Photoshop CC 2020软件安装教程 + 学习技巧

热门文章

  1. 微信小程序使用canvas绘制海报并保存本地相册
  2. PHP生成csv格式的excel表格
  3. IntelliJ IDEA java设置程序运行时内存
  4. 英语六级复习一周600+,好吧,应各位同志要求,发出我的六级备考资料
  5. windows端口被占用怎么解决
  6. tcpdump抓包ftp协议_tcpdump抓包分析详解
  7. 三星应用市场 提交不了
  8. 易语言和c51通信,51单片机与PC上位机串口通信之LED控制
  9. C语言第十七课:初阶指针
  10. c语言中-1%3=,c语言数据类型.ppt