2012-05-16 14 views
12

मैं वसंत xml विन्यास के भीतर अपने अनुप्रयोग स्थिरांक का उपयोग करना चाहता हूँ।वसंत xml विन्यास में अनुप्रयोग स्थिरांक का उपयोग करने का सबसे अच्छा तरीका क्या है?

मुझे क्या करना जानते हैं कि कुछ इस तरह के साथ वसंत स्पेल के साथ:

<bean class="example.SomeBean"> 
    <property name="anyProperty" value="#{ T(example.AppConfiguration).EXAMPLE_CONSTANT}" /> 
    <!-- Other config --> 
</bean> 

तो, वहाँ यह करने के लिए एक बेहतर तरीका है?

+0

शायद मैं कुछ छूट गया हो, लेकिन क्यों कक्षा में निरंतर और संपत्ति फ़ाइल में नहीं है करने के लिए? – Betlista

उत्तर

28

आप इस्तेमाल कर सकते हैं <util:constant> (C.2.2 The util schema देखें):

<bean class="example.SomeBean"> 
    <property name="anyProperty"> 
     <util:constant static-field="example.AppConfiguration.EXAMPLE_CONSTANT" /> 
    </property> 
</bean> 

यह रूप में है कि क्या है कि किसी भी बेहतर है करने के लिए बहस का मुद्दा है, हालांकि। आपका स्पेल संस्करण अधिक संक्षिप्त है।

एक अन्य विकल्प (4.12 Java-based container configuration देखें) जो अधिक प्राकृतिक है, जावा विन्यास शैली का उपयोग करने के लिए है:

@Bean 
public SomeBean myBean() { 
    SomeBean bean = new SomeBean(); 
    bean.setProperty(EXAMPLE_CONSTANT); // using a static import 
    return bean; 
} 
+1

लेकिन अपने संस्करण अधिक मानव के अनुकूल – richarbernal

+0

@richarbernal है: उचित बिंदु – skaffman

संबंधित मुद्दे

 संबंधित मुद्दे