2011-12-14 21 views
5

Ho file delle proprietà config.properties in cui sono memorizzate alcune proprietà di larghezza di applicazione. E ho importato utilizzando segnaposto proprietà:proprietà di primavera come XML

<context:property-placeholder location="classpath:/config.properties" /> 

ho bisogno di memorizzare immobili a file XML per passare alcuni convalide di schema XML. La mia domanda è come importare il file XML come file di proprietà in primavera ,?

Grazie, Arsen

risposta

6

PropertyPlaceholderConfigurer supporta già file di proprietà XML attraverso il DefaultPropertiesPersister

Il formato di file XML per la proprietà è come sotto.

<?xml version="1.0" encoding="UTF-8"?> 
    <!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd"> 
    <properties> 
     <entry key="key1">Value 1</entry> 
     <entry key="key2">Value 2</entry> 
    </properties> 

è possibile utilizzare

<context:property-placeholder 
    location="classpath:/com/myProject/spring_prop.xml" /> 
     <bean id="bean" class="org.MyBean"> 
     <property name="key1" value="${key1}" /> 
     </bean> 
+0

Grazie davvero funziona! –

3

Oltre all'altro risposta qui, ho anche visto le proprietà XML caricato direttamente come nome file delle proprietà:

Il file primavera contiene:

<util:properties id="myXmlProps" location="classpath:/com/myProject/spring_prop.xml" /> 

Questo può quindi accedere tramite la lingua molle espressione come:

"#{myXmlProps['key1']}" 

E iniettato in stringhe in classi con:

@Value("#{myXmlProps['key1']}") 
private String aValueForKey1; 
Problemi correlati