java - 如何在java程序中将属性文件的所有属性作为初始化变量?

标签 java properties getproperties

我在我的 java 程序中使用属性文件。

目前,每当我需要属性文件中的某些属性时,我都会使用 propertyFile.getProperty(propertyKeyName); 并将其放入某个变量中:String propertyName1 = propertyFile.getProperty (propertyKeyName);

有没有什么方法可以在不显式定义变量(propertyName1)并使用getProperty()初始化它的情况下,获取a的所有Key=Value属性文件作为字符串变量,已在我的程序中初始化为“String Key=Value”?

谢谢, 钱德拉

最佳答案

没有。变量在编译时声明 - 它们的名称(至少是实例/静态变量)和类型被烘焙到类文件中。当名称仅在执行时才知道时,这怎么可能行得通?

如果编写的表达式引用了由于属性文件的内容而在执行时“不存在”的变量,您会期望发生什么?

现在您可以做的是编写一个类来通过反射初始化类的实例 - 您可以编写您的类:

public class Person
{
    private String firstName;
    private String lastName;
    private String jobTitle;
    // Whatever... accessors etc
}

然后使用反射创建一个 Person 实例,并使用从属性文件填充的值。如果缺少某些属性(如果您希望如此),该机制可能会在加载时失败。

关于java - 如何在java程序中将属性文件的所有属性作为初始化变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10733068/

相关文章:

java - 添加 Google Ads 后应用程序意外关闭

javascript - 澄清 javascript 无法删除继承的属性。

c# - 使用反射(Type.GetProperties)获取 DependencyProperties?

java - 连接 PersistenceManagerFactory 和 Persistence.xml 时出错

java - 获取泛型类型的泛型类型

java - 排列数字,但输出变量名称

jsf - c :set for bean properties

javascript - Ember 中的 CSS 类是否需要多个计算属性?

java - 如何访问java属性文件