2011-12-14 14 views
5

Tengo archivo de propiedades config.properties, donde se almacenan algunas propiedades amplia aplicación. Y he importado utilizando marcador de posición de propiedad:propiedades elásticas archivo como XML

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

necesito para almacenar las propiedades de archivo XML para pasar algunas validaciones de esquema XML. Mi pregunta es cómo importar archivos XML como archivo de propiedades en la primavera ,?

Gracias, Arsen

Respuesta

6

PropertyPlaceholderConfigurer ya es compatible con archivos de propiedades XML a través de la DefaultPropertiesPersister

El formato de archivo XML para las propiedades es la siguiente.

<?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> 

puede utilizar

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

Gracias lo que realmente funciona! –

3

Además de la otra respuesta aquí, también he visto propiedades XML cargado directamente como propiedades denominadas archivos:

El archivo Spring contiene:

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

Esto se puede acceder a continuación a través del lenguaje resortes de expresión como:

"#{myXmlProps['key1']}" 

y se inyecta en las cadenas en las clases con:

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