【问题标题】:convert properties file to hashmap in spring在 spring 中将属性文件转换为 hashmap
【发布时间】:2014-03-23 07:50:08
【问题描述】:

我需要加载属性文件的所有内容,如下所示:

some.properties

key.1=this item needs to be loaded onto a hashmap
key.2=this item also needs to be loaded onto a hashmap
key.3=this item also needs to be loaded onto a hashmap
key.4=this item also needs to be loaded onto a hashmap

我想知道一种可以将属性文件中的所有内容加载到哈希图的方法。每个键的实际内容都很长,所以我不能将我的属性文件设为 abc=aa,bb,cc 然后使用 @Value 注释将其加载到我的 java 类中。

另外,我的属性文件中有大约 40 个键。所以,我尝试使用这种方法,因为我不想为我的 java 类中的每个值单独添加 @Value 注释。

因为,在我的 hashmap 上,我会进行某些检查以加载哪些键,然后将这些参数一一设置到我的变量中,并将其传递给进一步处理。

我尝试了很多方法加载属性文件并通过 spring 将其转换为哈希图,我现在所知道的是我可以使用可以加载所有属性文件的属性占位符配置器。但是,我如何访问我的 java 类中的属性文件中的内容,将其转换为哈希图。

我们将不胜感激。

谢谢!

【问题讨论】:

    标签: spring spring-mvc hashmap properties-file


    【解决方案1】:

    或者我不明白你的问题或者很简单:

    Properties props = new Properties().load(new FileInputStream([PROPERTIES_PATH]));
    Map<String, String> map = new HashMap<String, String>(props);
    

    让我们从这里开始吧!如果提供更具体的信息,也许我可以为您提供更多帮助

    【讨论】:

    • 我使用的是 Spring 3.2,我有多个属性文件。每个包含大约 15 个键。我需要动态选择一个特定的属性文件并将其加载到我的 java 类中——此时我想将我的属性文件加载到一个 hashmap 中(我想我可以使用你的建议)实际上,我继续问这个ia 因为我认为在春天有一种方法可以直接使用 PropertyPlaceholderConfigurer bean 将它们加载到哈希映射中,但是我不知道如何实现这一点。因此..我真的希望这次我能说清楚:$
    • 除了上面提到的方法之外,还有其他方法可以实现它。请让我知道,再次感谢! :)
    猜你喜欢
    • 2014-09-04
    • 1970-01-01
    • 1970-01-01
    • 2019-06-13
    • 1970-01-01
    • 2018-09-02
    • 2017-12-25
    • 2011-04-16
    • 1970-01-01
    相关资源
    最近更新 更多