当前位置: 首页 > 面试题库 >

如何从属性文件填充使用spring配置的地图

戴凯歌
2023-03-14
问题内容

我建立了一个小型应用程序,可以读取Excel文件并为我创建所有必要的SQL语句。客户不时操纵Excel文件。

Excel文件的第一行包含一个标题,我在阅读这些行时需要将其转换为整数。例如,在生成SQL语句之前,标题“英语”需要翻译成“
30”。(只是一些内部定义)。(您可以将其与DNS-
IP地址映射中的人类可读域名进行比较)目前,我手动进行映射,但是我想通过一个很小的Spring配置来摆脱这一步骤。由于标题不是固定的,因此有必要从属性文件中读取标题信息。

我发现了这样的事情:

<bean class="java.util.HashMap" id="exampleMapping">
    <constructor-arg index="0">
        <map>
            <entry key="theKey" value="theValue"/>
            <entry key="otherKey" value="otherValue"/>
        </map>
    </constructor-arg>
</bean>

这似乎工作得很好。但是Spring配置被编译到jar中。因此,我的第一选择(如果可能的话)是将键值对外部化到属性文件中。


问题答案:

您很幸运,因为Properties该类实现了Map!像这样定义属性bean:

<util:properties id="myProps" location="classpath:myProps.properties" />

(不要忘了导入Spring util名称空间)



 类似资料:
  • 问题内容: 是否可以使用Spring @Value将值从属性文件映射到HashMap。 目前,我有这样的事情,映射一个值不是问题。但是我需要在HashMap到期中映射自定义值。这样的事情可能吗? 属性文件:“ my_service.properties” 是否可以像这样的键映射:值集 name1 = 100 name2 = 20 问题答案: 在Spring配置中注册属性文件: 然后创建组件: 当我

  • 我有一个Java类,它从JSON文件/数据库/其他东西加载我的应用程序的属性。 我已将配置为Spring上下文中的bean。 现在我想在spring上下文文件中使用中的一个值来表示不支持SpEL的内容,例如spring集成日志通道适配器,例如。 是否有一种方法可以设置可以使用SpEL填充的“属性”?

  • 问题内容: 我想使用该类填充一个。 我想将条目加载到文件中,然后将其复制到中。 之前,我曾经使用属性文件初始化,但是现在我已经定义了,并且只想在构造函数中对其进行初始化。 较早的方法: 但是现在,我有这个 如何将属性对象分配给此处? 问题答案: 如果我理解正确,则属性中的每个值都是代表整数的字符串。因此,代码如下所示:

  • 问题内容: 这是我的POM中的示例配置文件: 然后,我的资源文件夹中就有一个属性文件,如下所示: 最后,我在POM中打开过滤功能: 这实际上是一个简化的示例,但是您明白了。基本上我跑步的时候 mvn install -P QA Maven将过滤我的app.properties文件,将所有占位符替换为配置文件中保存的值,然后部署填充的属性文件。 所有这些的问题在于,我喜欢利用Eclipse中的服务器

  • 问题内容: 配置 : Spring 2.5,Junit 4,Log4j 从系统属性中指定log4j文件位置 在运行时,使用-D java选项设置系统属性。一切都很好。 问题/我需要什么: 在单元测试时,未设置系统属性,并且文件位置未解析。 App使用Spring,想简单地配置Spring以 设置 系统属性。 更多信息: 要求仅用于配置。无法引入新的Java代码或IDE中的条目。理想情况下,Spri