2012-05-16 19 views
12

Uygulama sabitlerimi bahar xml yapılandırmasında kullanmak istiyorum.Bahar sabit diskinde uygulama sabitlerini kullanmanın en iyi yolu nedir?

Yapacak biliyorum bahar Oyunu ile böyle bir şey ile:

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

Yani, bunu yapmak için daha iyi bir yolu var mı?

+0

Belki bir şey kaçırmış ama neden sınıfta sürekli değil, mülkiyet dosyasında var mı? – Betlista

cevap

28

Şunları kullanabilirsiniz <util:constant> (C.2.2 The util schema bakınız): gerçi

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

Sanki Böyle iyi olsun için tartışılır. SpEL versiyonunuz daha özlü.

Diğer bir seçenek (4.12 Java-based container configuration bakınız) daha doğal olan Java yapılandırma tarzını kullanmaktır:

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

Ama senin sürümün daha insan dostu – richarbernal

+0

@richarbernal: Adil nokta – skaffman

İlgili konular