我有一个Map< String,String>我想告诉Spring在创建bean和解析属性占位符时使用它.最简单的方法是什么?这是一个例子:
@Componentpublic class MyClass { private String myValue; @autowired public MyClass(@Value("${key.in.map}") String myValue) { this.myValue = myValue; } public String getMyValue() { return myValue; }}public static voID main(String[] args) { Map
最佳答案Spring提供了一个MapPropertySource
,您可以在ApplicationContext的环境中注册(您需要一个大多数ApplicationContext实现提供的ConfigurableEnvironment).解析器(按顺序)使用这些已注册的PropertySource值来查找占位符名称的值.
这是一个完整的例子:
@Configuration@ComponentScanpublic class Example { @Bean public static PropertySourcesPlaceholderConfigurer configurer() { PropertySourcesPlaceholderConfigurer configurer = new PropertySourcesPlaceholderConfigurer(); // can also add it here //configurer.setPropertySources(propertySources); return configurer; } public static voID main(String[] args) { Map
总结 以上是内存溢出为你收集整理的如何告诉Spring使用Java映射来解析属性占位符?全部内容,希望文章能够帮你解决如何告诉Spring使用Java映射来解析属性占位符?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)