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

Chr*_*ohr 1 java spring map

我已经构建了一个小应用程序,它可以读取Excel文件并为我创建所有必需的SQL语句.客户不时操纵Excel文件.

Excel文件的第一行包含我在阅读行时需要转换为整数的标题.例如,在生成SQL语句之前,标题"english"需要翻译成"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>
Run Code Online (Sandbox Code Playgroud)

这看起来效果很好.但Spring配置被编译成jar.所以我的第一选择(如果可能的话)是将键值对外部化为属性文件.

ach*_*ach 9

你很幸运,因为Properties班级实现了Map!只需像这样定义属性bean:

<util:properties id="myProps" location="classpath:myProps.properties" />
Run Code Online (Sandbox Code Playgroud)

(别忘了导入Spring util命名空间)