2010-10-30 13 views
5

Si los cambios de presidente, tendría que cambiar el valor de presidentName tres veces por debajo en el application-context.xml:¿Cómo establecer una variable local en application-context.xml para representar un valor que se repite?

<beans:property name="presidentName" value="Barack Obama" /> 

¿Hay una manera de establecer la variable de vez en application-context.xml para representar la cadena Barack Obama.

<?xml version="1.0" encoding="UTF-8"?> 
<beans:beans xmlns="http://www.springframework.org/schema/security" 
    xmlns:beans="http://www.springframework.org/schema/beans" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://www.springframework.org/schema/beans 
     http://www.springframework.org/schema/beans/spring-beans-3.0.xsd 
     http://www.springframework.org/schema/security 
     http://www.springframework.org/schema/security/spring-security-3.0.xsd"> 



    <beans:bean id="testBeanA" class="com.TestBean"> 
     <beans:property name="presidentName" value="Barack Obama" /> 
    </beans:bean> 

    <beans:bean id="testBeanB" class="com.TestBean"> 
     <beans:property name="presidentName" value="Barack Obama" /> 
    </beans:bean> 

    <beans:bean id="testBeanC" class="com.TestBean"> 
     <beans:property name="presidentName" value="Barack Obama" /> 
    </beans:bean> 



</beans:beans> 

Respuesta

2

Defina un bean especificandolo como abstracto (abstract = "true") en primavera e inyecto la propiedad presidentName alli. A continuación, puede definir los 3 beans concretos especificando el bean abstracto que definió anteriormente como el padre. por ej.

<beans:bean id="testBeanSpec" class="com.TestBean" abstract="true"> 
     <beans:property name="presidentName" value="Barack Obama" /> 
</beans:bean 

<beans:bean id="testBeanA" class="com.TestBean" parent="testBeanSpec"> 
    </beans:bean 
2

Definir president como frijol clasificado cuerdas?

12

Como lo señaló bostezo, puede definir un nuevo bean de primavera clasificado por String.

<bean id="testBeanA" class="com.TestBean"> 
    <property name="presidentName" ref="potus" /> 
</bean> 

<bean name="potus" class="java.lang.String"> 
    <constructor-arg value="Barack Obama" /> 
</bean> 
Cuestiones relacionadas