Java项目如何读取配置文件

利用Java读取配置文件一般分两种方法,分别是静态读取和动态读取。

  • 静态读取:在初始化的时候就把配置项一次全部读入,并保存在静态成员变量中
  • 动态读取:每次加载的时候读取一遍

先介绍一个静态的读取方法,读取文件src文件下的Config.propertise配置文件,直接看代码:

package common.util;

import java.util.ResourceBundle;

/**
 * 用于读取配置参数
 */
public class Config {
	private static final ResourceBundle resourceBundle = ResourceBundle.getBundle("Config");

	public static String get(String key) {
		return resourceBundle.getString(key);
	}

	/**
	 * 获取互联网网关IP
	 * 
	 * @return
	 */
	public static String getIp() {
		return Config.get("Ip");
	}

	/**
	 * 获取互联网网关端口号
	 * 
	 * @return
	 */
	public static int getPort() {
		return Integer.parseInt(Config.get("Port"));
	}

	/**
	 * 获取互联网编号
	 * 
	 * @return
	 */
	public static String getId() {
		return Config.get("Id");
	}

	/**
	 * 获取sharedSecret
	 * 
	 * @return
	 */
	public static String getSpSharedSecret() {
		return Config.get("sharedSecret");
	}

	/**
	 * 获取链接的次数
	 * 
	 * @return
	 */
	public static int getConnectCount() {
		return Integer.parseInt(Config.get("connectCount"));
	}

	/**
	 * 获取链接的超时时间
	 * 
	 * @return
	 */
	public static int getTimeOut() {
		return Integer.parseInt(Config.get("timeOut"));
	}
}

接下来介绍一些动态的读取配置文件的方法,同样的,读取文件src文件下的Config.propertise配置文件,直接看代码吧:

package common.util;

import java.util.HashMap;
import java.util.Map;
import java.util.Properties;

import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.Resource;
import org.springframework.core.io.support.PropertiesLoaderUtils;

public class ExcutePro {

	// 读取.properties 结尾的配置文件用,getP, getParam
	public static Map<String, String> getP(String path) throws Exception {
		Resource resource = new ClassPathResource(path);
		Properties props = PropertiesLoaderUtils.loadProperties(resource);
		Map<String, String> param = new HashMap<String, String>((Map) props);
		return param;
	}

}

使用方法:

public static void main(String[] args) {
		Map<String, String> app = null;
		try {
			app = ExcutePro.getP("Config.properties");
		} catch (Exception e2) {
			e2.printStackTrace();
		}
		String msgSic_port = app.get("Ip");
		String msgSic_port = app.get("Port");
		String msgSic_ip = app.get("sharedSecret");
		String msgSic_port = app.get("connectCount");
		String msgSic_port = app.get("timeOut");
		System.out.println(Ip);
		System.out.println(Port);
		System.out.println(sharedSecret);
		System.out.println(connectCount);
		System.out.println(timeOut);
	}

项目推荐



DC3是基于Spring Cloud的开源可分布式物联网(IOT)平台,用于快速开发、部署物联设备接入项目,是一整套物联系统解决方案。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 67
    评论
评论 67
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值