我已经迁移到Maven项目(使用Spring),我不需要使用旧的* .xml配置文件。
改编很容易,但我仍然无法弄清楚:如何让我的项目知道我有属性文件并想使用它?
(如果您知道如何在POM中注册属性文件,请添加一些简要说明如何从该文件加载数据。(如果使用中有任何显着差异)
编辑:
在旧项目中,我只有spring-mvc-dmo-servlet.xml
配置文件,我在其中放置了每个配置(例如"扫描我项目中的所有组件,cus我不想明确声明它们#34; ...
如果我想让我的spring项目知道我有特殊文件(在这种情况下countries.properties
包含我想要使用的内容 - 我必须将以下代码放入配置文件中 -
<util:properties id="countryOptions" location="classpath:../countries.properties" />
...只有在那之后,我才可以使用我班级中的字段来连接文件中的内容......
像这样@Value("#{countryOptions}")
private Map<String, String> countryOptions;
(但现在我不再拥有任何spring-mvc-dmo-servlet.xml
,现在我只有POM.xml,而在POM我的旧表达不起作用)
所以我的问题是:
我必须把我的POM说成我的春季项目&#34;嘿,有特殊文件!&#34;
如何连线(#{countryOptions}或$ {countryOptions}或其他内容)
答案 0 :(得分:0)
您需要使用maven插件从文件中加载属性
其中一个是 http://www.mojohaus.org/properties-maven-plugin/usage.html
编辑:
在我们的一个Spring引导项目中,使用以下选项通过命令行传递属性文件的路径:
--spring.config.location=$DIRECTORY/application.properties
然后获取值:
/** The property to get. */
@Value("${property.to.get}")
private String propertyToGet;
您还可以查看@PropertySource注释
@PropertySource("classpath:config.properties")
请参阅https://www.mkyong.com/spring/spring-propertysources-example/