采用commons-configuration包实现属性文件读取的工具类

简介:

代码如下:

 

package com.yanek.base;

import org.apache.commons.configuration.CompositeConfiguration;
import org.apache.commons.configuration.ConfigurationException;
import org.apache.commons.configuration.PropertiesConfiguration;

public class PropManager {

	/**
	 * @param args
	 */
	public static void main(String[] args) {

		String jdbcUrl = PropManager.getInstance().getProperty("jdbc.cms.url");
		String jdbcUsername = PropManager.getInstance().getProperty("jdbc.cms.username");
		String jdbcPassword = PropManager.getInstance().getProperty("jdbc.cms.password");
		
		System.out.println("jdbcUrl:"+jdbcUrl);
		System.out.println("jdbcUsername:"+jdbcUsername);
		System.out.println("jdbcPassword:"+jdbcPassword);
		
		System.out.println(PropManager.getInstance());
		System.out.println(PropManager.getInstance());
		
	}
	private PropManager() {
	}
	
	private static PropManager propManager;
	public synchronized static PropManager getInstance() {
		if (propManager == null) {
			propManager = new PropManager();
		}
		return propManager;
	}
	
	public static CompositeConfiguration config = new CompositeConfiguration();
	static {
		try {
			config.addConfiguration(new PropertiesConfiguration("jdbc.properties"));
		} catch (ConfigurationException e) {
			e.printStackTrace();
		}
	}
	
	public String  getProperty(String key)
	{
		return config.getString(key);
	}
	
	

}

测试输出:

 

jdbcUrl:jdbc:mysql://127.0.0.1:3306/easycms?characterEncoding=UTF8
jdbcUsername:root
jdbcPassword:root
com.yanek.base.PropManager@174cc1f
com.yanek.base.PropManager@174cc1f

 

使用的包:  commons-configuration-1.6.jar

 

几点说明:

 1. 采用了单态设计模式,

2.属性文件在classpath目录下.

3. 采用commons-configuration-1.6.jar来读取属性文件

 

jdbc.properties文件:

jdbc.cms.url=jdbc:mysql://127.0.0.1:3306/easycms?characterEncoding=UTF8
jdbc.cms.username=root
jdbc.cms.password=root

 

 

目录
相关文章
|
11月前
|
机器学习/深度学习 人工智能 自然语言处理
NVIDIA Triton系列03-开发资源说明
NVIDIA Triton 推理服务器是用于高效部署机器学习模型的开源工具。本文介绍了初学者如何通过官方文档和 GitHub 开源仓库获取开发资源,包括快速启动指南、生产文档、示例和反馈渠道。特别强调了核心仓库中的六个重要部分,涵盖服务器部署、核心功能、后端支持、客户端接口、模型分析和模型导航工具。这些资源有助于初学者全面了解和掌握 Triton 项目。
253 0
NVIDIA Triton系列03-开发资源说明
|
机器人 图形学
Unity Shader Graph 制作Rim Light边缘光效果
Unity Shader Graph 制作Rim Light边缘光效果
670 0
Unity Shader Graph 制作Rim Light边缘光效果
|
人工智能 算法 安全
技术:Java-Web基础|生成图片验证码(二)
验证码(CAPTCHA)是“Completely Automated Public Turing test to tell Computers and Humans Apart”(全自动区分计算机和人类的图灵测试)的缩写,是一种区分用户是计算机还是人的公共全自动程序。可以防止:恶意破解密码、刷票、论坛灌水,有效防止某个黑客对某一个特定注册用户用特定程序暴力破解方式进行不断的登陆尝试,实际上用验证码是现在很多网站通行的方式,我们利用比较简易的方式实现了这个功能。这个问题可以由计算机生成并评判,但是必须只有人类才能解答。由于计算机无法解答CAPTCHA的问题,所以回答出问题的用户就可以被认为是人类
技术:Java-Web基础|生成图片验证码(二)
|
域名解析 安全 小程序
阿里云平台申请SSL证书类型、申请流程、价格等常见问题解答
SSL证书是很多用户上云过程中比不可少的安全类云产品,SSL证书常见的应用场景有站点应用、移动应用、代码应用、电子邮件应用等,使用SSL证书可以加密网站和客户端之间的通信,防止数据在传输过程中被篡改,避免信息泄露。阿里云提供了多种品牌和类型的证书。
1743 0
阿里云平台申请SSL证书类型、申请流程、价格等常见问题解答
|
SQL 数据采集 存储
大数据知识点总结
数据仓库:英文Data WareHouse,数据仓库是面向主题,为分析数据而设计的,是一个各种数据(包括历史数据和当前数据)的中心存储系统,主要服务于商业智能(也就是BI)和企业决策管理。
548 0
大数据知识点总结
|
存储 负载均衡 监控
etcd
前面的文章中,介绍了基于Paxos的ZooKeeper,本文将介绍另一种分布式一致性算法Raft的工业级实现————etcd,它们虽然实现方案不同,但是最终的实现效果都很像,而且etcd相较于ZooKeeper来说,更轻,更容易理解和使用,接下来就让我们一起来看一下etcd的实现思想。
|
域名解析 弹性计算 数据可视化
使用阿里云服务器搭建网站全过程图文教程
使用阿里云服务器搭建网站全教程,包括域名注册、云服务器创建、网站Web服务器环境搭建、域名解析到云服务器、云服务器建站源码部署一直到网站上线全过程
977 0
使用阿里云服务器搭建网站全过程图文教程
|
关系型数据库 MySQL 调度
作业调度中心Apache Airflow部署初体验
作业调度中心Apache Airflow部署初体验
1354 0
作业调度中心Apache Airflow部署初体验
|
数据采集 搜索推荐 网络协议
网站出现“因服务不稳定可能无法正常访问”是什么原因?
浅析,“因服务不稳定可能无法正常访问”常见的几个主要因素!
1935 0
网站出现“因服务不稳定可能无法正常访问”是什么原因?

热门文章

最新文章