2013-07-17 5 views
5

का उपयोग करते हुए मैं 2 संपत्ति फ़ाइलें a.properties और b.properties मैं जोड़ दिया है आवेदन संदर्भ के रूप में करने के लिए:@value एनोटेशन

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

गुणों के साथ सबसे पहले फ़ाइल डाटाबेस कनेक्शन विवरण होता है (यह अच्छी तरह से काम करता है) सेकेंड - इसमें कुछ विशिष्ट बीन द्वारा उपयोग की जाने वाली गुण शामिल हैं। कि सेम मैं @Value एनोटेशन

@Value("#{qw.er}") 
private String someA;  
@Value("#{as.df}") 
private String someB; 

के माध्यम से इन गुणों का उपयोग हालांकि मैं स्टार्टअप के दौरान अपवाद में:

org.springframework.expression.spel.SpelEvaluationException: 
EL1008E:(pos 0): Field or property 'qw' cannot be found on object of type 
'org.springframework.beans.factory.config.BeanExpressionContext' 

क्या मैं गलत कर रहा हूँ?

क्या यह संभव है कि आप एक फ़ाइल में 2 context:property-placeholder का उपयोग करें?

पुनश्च: गुण qw.er और as.df फ़ाइल b.properties में मौजूद

+0

देखें [यह] (http://stackoverflow.com/questions/317687/how-can-i-inject-a-property-value-into-a-pring-bean-which-was-configured-using)। आप '@Value (" # {myProperties ['github.oauth.clientId']}} ' – GokcenG

+0

वास्तव में, समझ नहीं पाए हैं कि' @Value 'में' myProperties 'क्या है ("# {myProperties [' github.oauth .clientId ']} ")' – maks

+0

क्षमा करें मैंने आपके प्रश्न को गलत समझा है। आप '' और फिर '@Value (" # {config ['as.df']} ") का उपयोग कर सकते हैं। मैं ' GokcenG

उत्तर

9

यह here

समझाया गया है अपने गुण परिभाषित करने के बाद आप

सूचना $ साइन का उपयोग करना चाहिए ।

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