这里介绍两种技术:利用spring读取properties 文件和利用java.util.Properties读取
(一)利用spring读取properties 文件
利用org.springframework.beans.factory.support.PropertiesBeanDefinitionReader来读取属性文件
构造如下config.properties文件properties代码
userDao.class=com.spring.dao.UserDao
属性文件中的"userDao"名称即是Bean的别名设定,.class用于指定类来源。
然后利用org.springframework.beans.factory.support.PropertiesBeanDefinitionReader来读取属性文件
BeanDefinitionRegistry reg = new DefaultListableBeanFactory();
PropertiesBeanDefinitionReader reader = new PropertiesBeanDefinitionReader(reg);
reader.loadBeanDefinitions(new ClassPathResource("config.properties"));
BeanFactory factory = (BeanFactory)reg;
UserDao userDao = (UserDao)factory.getBean("userDao");
(二)利用java.util.Properties读取属性文件
1. String str=File.separator;
InputStream path=this.getServletContext().getResourceAsStream(str+"WEB-INF"+str+"classes"+str+"password.properties");
//InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream("password.properties");
/*File filepath=new File(this.getServletContext().getRealPath(str+"WEB-INF"+str+"classes")+str+"password.properties");
InputStream path=new FileInputStream(filepath);*/
Properties pros = new Properties();
try {
pros.load(path);
} catch (IOException ex) {
//System.out.println("file is not exist");
errorMessage="资源文件不存在";
}
System.out.println("username:"+p.getProperty("username")+",password:"+p.getProperty("password"));
2. import org.springframework.core.io.ClassPathResource;
ClassPathResource cr = new ClassPathResource("password.properties");//会重新加载spring框架
Properties pros = new Properties();
try {
pros.load(cr.getInputStream());
} catch (IOException ex) {
//System.out.println("file is not exist");
errorMessage="资源文件不存在";
}
3.使用java.util.Properties类的load()方法
示例: InputStream in = lnew BufferedInputStream(new FileInputStream(name));
Properties p = new Properties();
p.load(in);
4.使用java.util.ResourceBundle类的getBundle()方法
示例: ResourceBundle rb = ResourceBundle.getBundle(name, Locale.getDefault());
5.使用java.util.PropertyResourceBundle类的构造函数
示例: InputStream in = new BufferedInputStream(new FileInputStream(name));
ResourceBundle rb = new PropertyResourceBundle(in);
6.使用class变量的getResourceAsStream()方法
示例: InputStream in = JProperties.class.getResourceAsStream(name);
Properties p = new Properties();
p.load(in);
7.使用class.getClassLoader()所得到的java.lang.ClassLoader的getResourceAsStream()方法
示例: InputStream in = JProperties.class.getClassLoader().getResourceAsStream(name);
Properties p = new Properties();
p.load(in);
8.使用java.lang.ClassLoader类的getSystemResourceAsStream()静态方法
示例: InputStream in = ClassLoader.getSystemResourceAsStream(name);
Properties p = new Properties();
p.load(in);
相关推荐
Java提供了多种方式来加载properties文件,本文将详细介绍Java加载properties文件的两种主要实现方式,并提供相应的示例代码。 使用java.util.Properties类的load(InputStream in)方法加载properties文件 Java中的...
这是最直接的方法,通过创建`Properties`对象并调用其`load()`方法,传入一个`InputStream`实例来加载Properties文件。例如: ```java import java.io.FileInputStream; import java.io.InputStream; import java....
以下是对Java加载`.properties`文件六种方法的详细总结: 1. **使用`java.util.Properties`类的`load(InputStream in)`方法** 这是最直接的方法,通过`FileInputStream`打开文件,然后将输入流传递给`Properties`...
Java标准库中的`java.util.Properties`类是处理.properties文件的主要工具。我们可以使用`Properties.load()`方法从InputStream中加载配置文件。例如: ```java Properties prop = new Properties(); ...
下面将详细介绍几种在Java中读取`.properties`配置文件的方法。 1. 使用`java.util.Properties`类 `Properties`类是Java提供的一种内置机制,用于处理属性列表。它继承了`Hashtable`类,提供了加载和保存属性列表...
Java提供了多种方法来读取Properties文件,本文将总结六种常用的方法。 方法一:使用Java.util.Properties类的load()方法 使用Java.util.Properties类的load()方法可以读取Properties文件,这是最常用的方法。下面...
通过上述介绍可以看出,在Java中加载文件的方式多种多样,开发者可以根据实际需求选择最适合的方法。无论是基于Java本身的类加载机制还是通过Spring等框架提供的便捷方式,都能够有效地实现资源文件的加载与管理。在...
本文将详细介绍六种在Java中解析和读取Properties文件的方法。 1. **使用Properties类** Java提供内置的`java.util.Properties`类来处理Properties文件。首先,我们需要加载文件内容,然后加载到Properties对象中...
1. **加载Properties文件**: 使用`Properties`类的`load()`方法,通常配合`InputStream`从文件系统或类路径加载属性文件。例如: ```java Properties props = new Properties(); FileInputStream fis = new ...
确保IDE(如IntelliJ IDEA或Eclipse)设置文件编码为UTF-8,同时在读取Properties文件时,通过`InputStreamReader`指定正确的字符集,例如`UTF-8`,避免乱码出现。 例如,以下是一个简单的示例,演示如何读取包含...
本篇文章将深入探讨两种加载配置文件的方法——使用Java内置的`Properties`类和`InputStream`,以及第三方库Apache Commons Configuration。我们将讨论每种方法的优缺点,并通过实例来演示如何使用它们。 首先,让...
本文将详细介绍Spring加载properties文件的两种主要方法:XML方式和注解方式。 ### XML方式加载properties文件 #### 1. 基于XML的配置 在传统的Spring配置中,我们可以使用`<context:property-placeholder>`标签...
`java.util.Properties`是Java提供的一种用于处理`.properties`文件的类,它可以加载、保存键值对,并提供获取和设置键值的方法。`load()`方法用于从输入流加载键值对,`getProperty()`用于获取特定键对应的值。 4...
Java 读取、获取配置文件.properties 中的数据有多种方法,包括使用 Properties 类、封装的 Properties 工具类和其他方法。在实际应用中,我们可以根据需要选择合适的方法来读取 Properties 文件。
总结来说,读取Java properties配置文件有多种方法,每种都有其适用场景。静态变量和静态方法可以优化性能,但需要注意线程安全问题。在实际开发中,应根据项目需求选择合适的方法,并考虑异常处理和资源释放,以...
为了简化这一过程,这里介绍的"properties文件国际化插件"提供了一种有效的方法来解决这个问题。 首先,我们来看一下`properties`文件的结构。一个典型的`properties`文件通常以`.properties`为扩展名,例如`...
在Java中,我们可以使用多种方法来读取配置文件,下面将详细介绍几种常见的方法。 1. **使用`java.io`流读取** 最基础的方式是使用Java的I/O流来读取文本配置文件(通常是.properties格式)。例如,`java.io....
Java中Properties类的操作实例详解 Java中Properties类是Java.util包中的一个重要类,主要用于读取Java的配置文件。...Properties类是Java中读取配置文件的重要类,提供了多种方法来读取和设置Properties文件。
使用`PropertiesConfiguration`类可以方便地读取.properties文件。通过指定文件路径,我们可以创建一个配置实例,然后通过键值对的方式获取配置项。 2. **写入Properties文件** 对于修改或新增配置项,可以通过`add...