2008-09-12 19 views

उत्तर

12

इस तरह यह घोषित:

<bean id="doubleValue" class="java.lang.Double"> 
    <constructor-arg index="0" value="3.7"/> 
</bean> 

और का उपयोग इस तरह:

<bean id="someOtherBean" ...> 
    <property name="value" ref="doubleValue"/> 
</bean> 
+0

मामले में आप यह एक छोटा सा छोटा करने के लिए चाहते हैं, '' निर्माता-arg' तत्व की index' विशेषता वैकल्पिक प्रतीत होता है। – JBert

0

क्यों तुम सिर्फ एक डबल का उपयोग नहीं करते? कोई कारण?

6

यह भी ध्यान देने योग्य बात है कि अपनी जरूरत के आधार पर अपने खुद के सेम को परिभाषित करने के लिए सबसे अच्छा शर्त नहीं हो सकता है लायक है।

<util:constant static-field="org.example.Constants.FOO"/> 

एक वर्ग और डिफ़ॉल्ट बाइंडरों में संग्रहीत एक निरंतर मूल्य तक पहुँचने के लिए एक अच्छा तरीका है भी जैसे रूपांतरण के लिए बहुत अच्छी तरह से काम करते हैं

<bean class="Foo" p:doubleValue="123.00"/> 

मैंने पाया अपने आप को इस तरह से मेरी सेम के कई जगह, एक गुण के साथ मिलकर (पुन: उपयोग प्रयोजनों के लिए) मेरे मान निर्धारित करने फ़ाइल। क्या इस

<bean id="d1" class="java.lang.Double"> 
    <constructor-arg value="3.7"/> 
</bean> 
<bean id="foo" class="Foo"> 
    <property name="doubleVal" ref="d1"/> 
</bean> 

हो जाता है इस में पुनर्संशोधित तरह देखने के लिए प्रयोग किया है:

<bean 
    id="propertyFile" 
    class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer" 
    p:location="classpath:my.properties" 
/> 
<bean id="foo" class="Foo" p:doubleVal="${d1}"/> 
0

स्प्रिंग 2.5+

आप जावा config में इस तरह की फलियों को परिभाषित कर सकते हैं:

@Configuration 
public class BeanConfig { 
    @Bean 
    public Double doubleBean(){ 
     return new Double(3.7); 
    } 
} 

आप इस बीन पसंद का उपयोग कर सकते हैं ई यह आपका कार्यक्रम में:

@Autowired 
Double doubleBean; 

public void printDouble(){ 
    System.out.println(doubleBean); //sample usage 
}