`

properties配置文件读写操作工具类

阅读更多

java对properties配置文件的读写操作工具类:

代码如下:

 

package com.syxp.moa.message.weiguiwailian.common;

import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.Properties;

import org.apache.log4j.Logger;

/**
 * properties文件读写操作工具类
 * @author 常宝龙
 *
 */
public class ReadWriteTools {

	//属性文件路径
	private static String propertiesPath ;
	private static Logger logger = Logger.getLogger(ReadWriteTools.class);
	static {
		//获取当前路径
		propertiesPath=System.getProperty("user.dir")+"/conf/weiguilianjie.properties";
	}
	
	/**
	 * 根据主键key读取主键的值value
	 * @param key:键
	 * @param filePath:属性文件路径
	 */
	
	public static String readValue(String propertiesPath,String key){
		Properties properties = new Properties();
		try{
			InputStream is = new BufferedInputStream(new FileInputStream(propertiesPath));
			properties.load(is);
			String value = properties.getProperty(key);
			is.close();
			return value;
		}catch(Exception e){
			logger.error("读取配置文件键值发生错误!",e);
			return null;
		}
	}
	
	/**
	 * 根据主键key读取主键的值value
	 * @param key:键
	 */
	
	public static String readValue(String key){
		Properties properties = new Properties();
		try{
			InputStream is = new BufferedInputStream(new FileInputStream(propertiesPath));
			properties.load(is);
			String value = properties.getProperty(key);
			is.close();
			return value;
		}catch(Exception e){
			logger.error("读取配置文件键值发生错误!",e);
			return null;
		}
	}
	
	/**
	 * 更新(或插入)一对properties信息(主键及其键值)
	 * 如果该主键已经存在,更新该主键的值;
	 * 如果该主键不存在,则插件一对键值。
	 * @param keyName:键名
	 * @param keyValue:键值
	 */
	
	public static void writeProperties(String keyName,String keyValue){
		try{
			// 调用 HashTable 的方法 put,使用 getProperty 方法提供并行性。
            // 强制要求为属性的键和值使用字符串。返回值是 HashTable 调用 put 的结果。
			//读配置文件路径
			Properties properties = new Properties();
			properties.load(new FileInputStream(propertiesPath));
			OutputStream os = new FileOutputStream(propertiesPath);
			properties.setProperty(keyName, keyValue);
			 // 以适合使用 load 方法加载到 Properties 表中的格式,
            // 将此 Properties 表中的属性列表(键和元素对)写入输出流
			properties.store(os, "Update '" + keyName + "' value");
			os.close();
		}catch(FileNotFoundException e){
			logger.error("配置文件路径没有找到!",e);
		}catch(IOException e){
			logger.error("属性文件更新错误",e);
		}finally{
		
		}
	}
	
	//测试代码
	
	public static void main(String[] args) {
		System.out.println("readValue==" + readValue("id"));
		writeProperties("id", "5");
		System.out.println("readValue==" + readValue("id"));
		System.out.println("更新配置文件成功!");
	}
}

 

此例子中,properties配置文件需要放在classpath下的conf目录中,并且其中包含id 这个key

分享到:
评论

相关推荐

    Python实现读取Properties配置文件的方法

    实际使用这个类时,首先确定配置文件的路径,然后创建`Properties`类的实例,最后调用`getProperties`方法获取配置字典: ```python import sys fileName = sys.path[0] + '\\' + 'system.properties' p = ...

    读取properties文件工具类

    这个"读取properties文件工具类"是为了简化程序中对`.properties`文件的读取操作而设计的。通过这样的工具类,开发者可以方便地加载和获取配置文件中的属性值,避免重复编写相同的代码。下面我们将详细探讨`...

    java配置文件修改读取工具类,包括yml和properties类型文件

    总结来说,`YmlUtil.java`和`PropertiesUtil.java`是Java开发中的实用工具类,它们简化了YAML和Properties配置文件的读取和修改过程,提高了代码的可维护性和灵活性。理解和使用这些工具类,对于提升Java项目管理...

    自己封装的一些文件(夹)操作和txt文件读写的工具类 哈哈(ExtUtil0.2)

    项目中的`conf.properties`、`backupdb.properties`和`reg.properties`可能是配置文件,通常用于存储应用的配置信息,如数据库连接参数、系统设置等。`print.properties`可能包含了打印相关的配置。`org`和`META-INF...

    java读取properties配置文件

    通过以上内容,你应该能够理解并实现Java中读取`properties`配置文件的基本操作。在实际项目中,还可以结合Spring框架或者其他配置管理工具,如Apache Commons Configuration,进一步简化配置文件的管理和使用。

    Properties文件读写;Property文件读写;Property

    5. **批量操作**:为了提高效率,工具类可能还支持一次性读取多个Properties文件或批量设置多个属性的功能。 6. **国际化(i18n)**:考虑到多语言支持,`PropertyUtil.java`可能有处理不同语言环境的Properties文件...

    属性文件读写操作类

    总结,属性文件读写操作类的核心在于`java.util.Properties`类的使用,以及如何优雅地进行文件I/O操作。理解这些知识点对于开发Java应用程序,特别是需要持久化配置信息的应用来说至关重要。通过自定义类和工具方法...

    xml文件的配置读取工具类

    4. **SysConfigUtil.java**:与`SystemConfig.java`类似,这个类可能是一个系统配置的通用工具类,提供了对XML配置文件的便利操作。它可能包含一些辅助方法,如读取特定配置项、验证配置值等,以简化开发者的代码。 ...

    使用Properties类来读取配置文件

    在Java编程中,管理应用程序的配置信息是一项常见的任务。这些配置信息通常存储在文本...在实际开发中,为了提高代码的可维护性和可扩展性,通常会封装成工具类或者服务,提供更高级别的接口来处理配置文件的读写操作。

    Java 读写Properties配置文件详解

    Properties类与Properties配置文件 Properties类主要用于读取和写入.properties格式的配置文件。这种文件格式简单、易于理解和编辑,常被用来存储应用的配置参数,如数据库连接信息、系统环境变量等。 ### 2. ...

    Java源码读写Properties文件.rar

    总结来说,Java中的Properties类是管理配置文件的关键工具,它提供了一套完整的API来读取、写入和操作键值对。掌握这部分知识对于任何Java开发者来说都是至关重要的,因为配置文件在软件开发中扮演着不可或缺的角色...

    java读写xxx.properties文件实用小例

    在Java编程中,读写`.properties`文件是一个常见的任务,这些文件通常用于存储配置信息、设置或环境变量。本文将深入探讨如何在Java中高效地处理`.properties`文件,包括读取、写入以及更新其内容。我们将参考提供的...

    CONF_FILE_RW.rar_conf配置文件_dst_conf_file_读写配置 conf_读写配置文件

    "CONF_FILE_RW.rar"这个压缩包显然包含了与配置文件读写相关的资源,特别是针对"dst_conf_file"的配置参数操作。让我们深入探讨配置文件的重要性、如何读取和写入配置文件,以及在实际应用中的相关知识。 首先,...

    java 动态修改配置文件

    本文将深入探讨如何在Java中实现动态修改配置文件,同时解决中文字符编码问题,使得配置文件的读写更加高效和便捷。 首先,我们需要理解Java中的Properties类,它是处理配置文件的标准工具。`java.util.Properties`...

    java 文件读写

    在这个场景中,我们关注的是“java文件读写”,特别是读取`properties`配置文件和处理目录及文件的操作。下面我们将详细探讨这两个主题。 首先,`properties`配置文件是Java应用中常用的一种存储配置信息的方式。...

    java操作properties方法

    在Java编程中,操作配置文件,尤其是`.properties`文件,是一项常见的任务。`.properties`文件主要用于存储应用程序的配置信息,通常包含键值对,其中键是唯一的标识符,值是与该键相关联的数据。Java提供了`java....

    properties读写更新

    在Java编程语言中,`Properties`类是处理配置文件的核心工具,主要用于读取和写入键值对数据。这些配置文件通常以`.properties`为扩展名,用于存储应用程序的配置参数或者系统设置。本篇文章将深入探讨`Properties`...

    简易闹钟程序_读写配置文件

    在IT领域,开发一个“简易闹钟程序_读写配置文件”涉及到许多核心知识点,主要集中在配置文件的读写操作上。配置文件是程序中用于存储用户设置、参数或者应用程序状态的重要工具,使得用户可以自定义软件的行为或...

    java对properties文件的操作

    综上所述,Java中的`Properties`类为处理配置文件提供了强大而方便的工具,无论是简单的键值对存储还是复杂的项目配置,都能轻松应对。在实际开发中,合理使用Properties文件能提高代码的可维护性和灵活性。

    Properties类小结

    在实际应用中,Properties类通常结合FileInputStream和FileOutputStream一起使用,以读写配置文件。以下是一个简单的示例: ```java Properties props = new Properties(); FileInputStream fis = new ...

Global site tag (gtag.js) - Google Analytics