读取.properties配置文件工具类
时间:2022-04-27
本文章向大家介绍读取.properties配置文件工具类,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
package com.test.utils;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.util.Properties;
import org.apache.log4j.Logger;
import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.Resource;
import org.springframework.core.io.support.PropertiesLoaderUtils;
/**
*
* @Description:用于从配置文件中读取信息
* @author gulf
* @date 2017年6月19日
*/
public class PropertiesUtil {
private static Logger logger = Logger.getLogger(PropertiesUtil.class.getName());
/**
* 根据key获得value
* @param key
* @return value
* @throws IOException
*/
public static String getValue(String resourceString,String key) throws IOException {
String value="";
Resource resource = new ClassPathResource(resourceString);
try {
Properties props = PropertiesLoaderUtils.loadProperties(resource);
value=props.getProperty(key);
} catch (IOException e) {
logger.error("读取配置文件失败", e);
throw new IOException("读取配置文件失败");
}
return value;
}
/**
* 更新配置文件
* @param key
* @param value
* @throws IOException
*/
public static void setValue(String key,String value) throws IOException{
try{
Resource resource = new ClassPathResource("/config.properties");
Properties props = PropertiesLoaderUtils.loadProperties(resource);
OutputStream fos = new FileOutputStream(resource.getFile());
props.setProperty(key, value);
props.store(fos, "update"+key);
}catch(Exception e){
logger.error("写入配置文件失败", e);
throw new IOException("写入配置文件失败");
}
}
}
- ASP.NET Process Model之二:ASP.NET Http Runtime Pipeline - Part II
- 震惊了!这样的js面试题让所有人-男默女泪
- 前端知识学了却不会用,都是没走心
- var a="xx";a=a+"ss";a的值变了,但"xx"字符串并没有变
- 先行者计划--1109微课总结 | 《通过二个demo初识webPack》
- 先行者计划--1107微课 《什么是Vuex?》| 文字简版
- 脱离前端菜鸟层次的二个关键点
- 【课堂笔记】先行者 3.0版本的vueJs课程的第三次课
- ASP.NET:创建Linked ValidationSummary, 深入理解ASP.NET的Validation
- 【课堂笔记】先行者 3.0版本的vueJs课程的第二次课
- 用Python做证券指数的三种策略分析
- 明确告诉你,眼界不够,JS再好也成不了好前端
- 手把手教你整合最优雅的SSM框架
- WCF后续之旅(9):通过WCF的双向通信实现Session管理[上篇]
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- android语音即时通讯之录音、播放功能实现代码
- win10 装centos7 虚拟机
- 怎样给centos系统扩展磁盘分区的实现方法
- android系统分享的自定义功能的示例代码
- Linux centOS安装JDK和Tomcat的教程
- Android ContentProvider实现获取手机联系人功能
- Centos 安装 PHP7.4 和 Nginx的操作方法
- vsftpd用户禁止ssh登陆的实现方法
- Android实现EditText图文混合插入上传功能
- Android实现红包雨动画效果
- 手把手教你启用Win10的Linux子系统(图文超详细)
- Android onCreateOptionsMenu的使用方法总结
- android截图事件监听的原理与实现
- 我常用的一些linux命令小结
- linux下安装mongodb教程