[英]Spring: inject properties file into map
我有一個屬性文件如下:
transition.s1=s2,s5
transition.s2=s4,s1
...................
問題:如何將這些屬性注入Map<String, String>
? 你能提供一個例子嗎?
在XML配置的情況下
public class StateGraph {
public StateGraph(Map<String, String> a){
...
}
boolean getStateTransition(){
...
}
}
當屬性實現map時,您可以將其作為構造函數提供
<bean class="com.xxx.xxx.StateGraph">
<constructor-arg>
<util:properties location="classpath:props.properties"/>
</constructor-arg>
</bean>
請注意,Spring將執行所有必需的泛型類型轉換
如果您使用的是Java 5或Java 6,您將意識到可以使用強類型集合(使用泛型類型)。 也就是說,可以聲明Collection類型,使其只能包含String元素(例如)。 如果您使用Spring依賴注入一個強類型的Collection到bean中,您可以利用Spring的類型轉換支持,這樣強類型Collection實例的元素將在被添加到之前轉換為適當的類型。收藏。
如果您使用的是編程配置,那么您必須自己在@Configuration
類中執行此操作 - 請參閱將java.util.Properties轉換為HashMap <string,string> 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.