IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> 项目配置文件properties、yml配置文件获取Key参数的值工具类 -> 正文阅读

[Java知识库]项目配置文件properties、yml配置文件获取Key参数的值工具类

项目配置文件properties、yml配置文件获取Key参数的值工具类


前言

一、什么是properties配置文件?

介绍:在我们的项目当中,通常需要一些常量参数,然后在程序中使用常量参数,但是如何获取呢,下面介绍实现方式。

二、创建工具类

1.创建 IfbPropertiesUtil.java工具类

代码如下:读取zhx.properties配置文件

package com.ruimin.ifb.util;

import java.io.InputStream;
import java.util.Properties;

import org.apache.commons.lang.StringUtils;
import org.slf4j.Logger;

import com.ruimin.ifs.core.log.SnowLog;

/**
 * 读取zhx.properties配置文件
 *
 */
public class IfbPropertiesUtil {
	private static final Logger logger = SnowLog.getLogger(IfbPropertiesUtil.class);
	private static final String configPath = "/zhx.properties";
	private static Properties prop = null;

	private static void init() throws Exception {
		InputStream in = null;
		try {
			in = IfbPropertiesUtil.class.getResourceAsStream(configPath);
			if (in != null) {
				prop = new Properties();
				prop.load(in);
				in.close();
				in = null;
			}
			if (prop == null) {
				throw new Exception("read [" + configPath + "] failed!");
			}
		} finally {
			if (in != null) {
				in.close();
			}
		}
	}

	public static String getString(String key) {
		try {
			if (prop == null) {
				init();
			}
			return prop.getProperty(key);
		} catch (Exception e) {
			logger.error(e.getMessage(), e);
		}
		return null;
	}
	
	public static Integer getInt(String key) {
		try {
			if (prop == null) {
				init();
			}
			return Integer.valueOf(prop.getProperty(key));
		} catch (Exception e) {
			logger.error(e.getMessage(), e);
		}
		return null;
	}

	public static boolean getBoolean(String key) {
		String val = getString(key);
		return "true".equalsIgnoreCase(val) || "1".equalsIgnoreCase(val) || "Y".equalsIgnoreCase(val);
	}

	public static boolean getBoolean(String key, boolean defValue) {
		String val = getString(key);
		if (val == null) {
			return defValue;
		} else {
			return getBoolean(key);
		}
	}

	public static String getString(String key, String defValue) {
		try {
			if (prop == null) {
				init();
			}
			if (prop.containsKey(key)) {
				return prop.getProperty(key);
			}
		} catch (Exception e) {
			logger.error(e.getMessage(), e);
		}
		return defValue;
	}
	
	public static Properties getProperty() {
		try {
			if (prop == null) {
				init();
			}
		} catch (Exception e) {
			logger.error(e.getMessage(), e);
		}
		return prop;
	}
}

2.测试实现效果

1、配置文件参数 SystemFlg
在这里插入图片描述

package test;

import com.ruimin.ifb.util.IfbPropertiesUtil;

/**
 * @author Mr.Zhx
 * @version 1.0
 * @description: 测试类
 * @create: 2022-03-21 17:07
 */
public class ZhxCeshi {
    public static void main(String[] args) {
        String systemFlg = IfbPropertiesUtil.getString("SystemFlg");
        System.out.println("properties配置文件 SystemFlg 的参数为:"+systemFlg);
    }
}

2、结果截图
在这里插入图片描述

总结

提示:可以复制代码,创建工具类 ,在项目当中引用即可实现功能,不要单独处理,使用工具类避免代码侵入性太高,复用性不高:

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2022-03-22 20:22:50  更:2022-03-22 20:24:22 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 7:56:07-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码