`

动态加载属性文件

    博客分类:
  • Java
阅读更多

动态加载属性文件例子:

 

java应用:

package com.zzt.application;

import java.io.File;

import org.apache.commons.configuration.CombinedConfiguration;
import org.apache.commons.configuration.ConfigurationException;
import org.apache.commons.configuration.DefaultConfigurationBuilder;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

public class ConfigReader {

	private static final String FILE_NAME = "/config.xml";

	public static final Log log = LogFactory.getLog(ConfigReader.class);

	public static CombinedConfiguration config;

	private ConfigReader() {
	}

	static {
		DefaultConfigurationBuilder builder = new DefaultConfigurationBuilder();
		builder.setFile(new File(FILE_NAME));
		try {
			config = builder.getConfiguration(true);
		} catch (ConfigurationException e) {
			log.error("read config file unsuccessfully!", e);
		}
	}

	public static String getProperty(String configName, String key, String defaultValue) {
		return config.getConfiguration(configName).getString(key, defaultValue);
	}

	public static String[] getPropertyAsArray(String configName, String key) {
		return config.getConfiguration(configName).getStringArray(key);
	}

}

 

config.xml:  

<?xml version="1.0" encoding="UTF-8"?>

<configuration>
	<header>
		<result delimiterParsingDisabled="true" forceReloadCheck="true">
			<expressionEngine config-class="org.apache.commons.configuration.tree.xpath.XPathExpressionEngine" />
		</result>
	</header>
	<override>
		<properties fileName="main.properties" throwExceptionOnMissing="true" config-name="main" config-optional="true">
			<reloadingStrategy refreshDelay="30000" config-class="org.apache.commons.configuration.reloading.FileChangedReloadingStrategy" />
		</properties>
	</override>
</configuration>

 

 

调用:

String xx= ConfigReader.getProperty("main", "xxx", "x");

 

需要引入的包:

commons-configuration-1.6.jar

commons-logging.jar

commons-lang.jar

commons-collections.jar

commons-beanutils.jar

commons-jxpath-1.3.jar

分享到:
评论

相关推荐

    动态加载属性文件与SpringQuartz的应用

    在IT行业中,动态加载属性文件和Spring Quartz的整合应用是一个重要的技术话题,特别是在构建大型、分布式和可扩展的系统时。下面将详细讲解这两个概念及其相互间的应用。 首先,我们来了解一下动态加载属性文件。...

    给propertyGrid动态添加属性

    本篇文章将深入探讨如何在运行时给`PropertyGrid`动态添加属性。 首先,理解`PropertyGrid`的工作原理是关键。`PropertyGrid`通过反射机制来查找并显示对象的公共属性。这意味着在设计时,`PropertyGrid`并不需要...

    动态加载外部JS文件

    动态加载外部JS文件是网页开发中的一个重要技术,它允许网页在需要时按需加载JavaScript资源,从而提高页面的加载速度,优化用户体验,并有效地管理复杂的项目结构。以下将详细阐述动态加载的原理、方法以及相关实践...

    Spring动态加载配置文件

    对于动态加载,我们可以利用`Resource`接口和`ClassPathResource`类来加载运行时变更的属性文件。 除了这两种方式,Spring Boot引入了更强大的`ConfigDataLocationResolver`和`ConfigDataLoader`接口,它们允许我们...

    javascript函数动态加载javascript文件

    通过添加`async`或`defer`属性,可以实现非阻塞加载。例如: ```html &lt;script async src="path/to/your/script.js"&gt;&lt;/script&gt; ``` `async`属性使得脚本在可用时立即加载,但不保证执行顺序。`defer`属性则确保...

    C#动态加载XML文件,并更改节点属性值

    在C#编程中,动态加载XML文件并修改节点属性值是一项常见的任务,特别是在处理配置文件、数据存储或与XML相关的应用程序交互时。本教程将深入探讨如何实现这一目标,包括XML文档的加载、查找特定节点、修改属性以及...

    java加载属性文件

    java通过相对路径或绝对路径加载属性文件。

    vue动态加载js.zip

    因此,需要在运行时动态地将新的JavaScript文件添加到DOM中,以实现按需加载。 实现Vue动态加载JavaScript的基本步骤如下: 1. 创建Script元素:在JavaScript中,我们可以使用`document.createElement('script')`...

    android动态加载外部资源文件

    在Android开发中,动态加载外部资源文件是一种常见的需求,它能增强应用的灵活性和可扩展性。本主题主要探讨如何在Android程序运行时加载不同apk中的资源,包括图片、文字和颜色等。以下是对这个话题的详细阐述: ...

    vue动态加载外部依赖js代码实现

    在前端开发中,有时我们需要动态地加载外部JavaScript库或脚本文件。特别是在构建大型Vue应用程序时,可能会遇到需要按需加载某些功能的情况,例如第三方库、API接口等。本文将详细介绍如何通过创建一个Vue组件来...

    java读取属性文件

    以下是一个基本的示例,演示了如何加载属性文件并获取其中的值: ```java import java.io.FileInputStream; import java.io.IOException; import java.util.Properties; public class PropertiesExample { public...

    修改文件 属性.rar

    在IT领域,文件属性是操作系统用来标识和管理文件的关键信息,包括文件的创建日期、修改日期、访问日期、文件大小、文件类型以及权限等。在Windows操作系统中,用户可以通过特定的方式来修改文件的属性以满足不同的...

    动态加载XIB文件DEMO

    在iOS开发中,动态加载XIB文件是一种常见的优化技术,它可以提高应用的性能和灵活性。XIB(Interface Builder Document)是Apple的用户界面设计工具,用于创建和编辑UI元素。这篇DEMO展示了如何在运行时根据需要加载...

    属性文件的读写

    - **加载属性文件**:首先,你需要创建一个`Properties`对象,然后调用`load()`方法从输入流中加载属性。通常,我们使用`ClassLoader`获取属性文件的输入流: ```java Properties props = new Properties(); ...

    WPF动态调用资源文件

    在Windows Presentation Foundation(WPF)框架中,动态调用资源文件是一种常见的技术,它使得开发者能够在运行时根据需求加载和应用不同的资源。标题中的“WPF动态调用资源文件”特指在WPF应用程序中,如何根据用户...

    单页面的js文件动态加载组件

    为了提高用户体验并优化性能,开发者常常采用js文件动态加载策略,而不是一次性加载所有资源。本文将深入探讨如何利用JavaScript实现动态加载组件,并介绍如何确保在加载过程中使程序“悬挂”,直到所需文件完全加载...

    读取属性文件连接数据库

    我们可以使用`java.util.Properties`类来加载和处理属性文件。以下是一个简单的示例: ```java import java.io.FileInputStream; import java.io.IOException; import java.sql.Connection; import java.sql....

    动态加载Css 浏览器判断

    在提供的压缩包文件中,`Browes 判断.asp`和`Browes 浏览器判断.asp`可能是用于服务器端进行浏览器检测的ASP文件,而`CheckBr(动态加载Css).js`可能是用于客户端JavaScript动态加载CSS并进行浏览器判断的脚本。...

Global site tag (gtag.js) - Google Analytics