2011-12-01 154 views
2

我有一個DefaultProcessor.java,它處理不同產品(大約50種產品)的文件。所以產品特定的bean是在spring配置文件中配置的(每個產品一個spring-config文件)。彈簧 - 在彈簧配置文件中指定鍵值對

現在我也有一些2-3產品特定的屬性(鍵值對)。所以我想知道在配置文件中有這些屬性,而不是每個產品都有一個屬性文件。

Q1。是否可以在spring-config文件中指定鍵值對而不創建bean?

Q2。如果不可行,那麼創建一個Environment.java類爲Map<String, String>作爲屬性,然後在每個特定於產品的配置文件中配置該Bean,而不是在.properties文件中具有這些屬性是一種很好的做法。

回答

4

您可以使用util:map

從春天文檔:

<util:map id="emails"> 
    <entry key="pechorin" value="[email protected]"/> 
    <entry key="raskolnikov" value="[email protected]"/> 
    <entry key="stavrogin" value="[email protected]"/> 
    <entry key="porfiry" value="[email protected]"/> 
</util:map> 

您可以用通常彈簧二傳手/構造機制

+0

@YatendraGoel再注入地圖:我不知道你是什麼問,但你可以這樣做:'' – bezmax

+0

@Max我知道我可以做到這一點。我想知道是否可以在不聲明bean的情況下訪問此映射? –

+1

你的意思是從春天的容器外面引用地圖嗎? –