java - Spring bean instantiation by passing constructor args? -
इस सवाल का पहले से ही एक उत्तर है: < / P>
- 1 उत्तर
- 1 उत्तर
मेरे पास वसंत सेम नीचे है।
सार्वजनिक वर्ग कर्मचारी 2 {निजी इंट आईडी; निजी स्ट्रिंग का नाम; निजी डबल वेतन; सार्वजनिक कर्मचारी 2 (इंट आईडी, स्ट्रिंग का नाम, डबल वेतन) {this.id = id; This.name = name; इस.salary = वेतन;
अब मैं स्प्रिंग कॉन्फ़िगरेशन फ़ाइल में कॉन्फ़िग के नीचे है।
& lt; bean id = "emp2 "वर्ग =" com.basic.Employee2 "& gt; & Lt; constructor-arg नाम = "id" मान = "" / & gt; & Lt; constructor-arg नाम = "नाम" मान = "" / & gt; & Lt; कन्स्ट्रक्टर- आर्ग नाम = "वेतन" मान = "" / & gt; & Lt; / सेम & gt;
अब मैं गतिशील कोड से ऊपर के रूप में मानों को नहीं मान सकता।
अब मैं स्प्रिंग बीन प्रोग्रामाइम नीचे कोड का उपयोग कर रहा हूं। बीन स्कोप सिंगलटन है।
कर्मचारी 2 एएमपी = (कर्मचारी 2) applicationContext.getBean ("emp2");
Div class = "post-text" itemprop = "text">
आप विधि का उपयोग कर सकते हैं, जो
स्पष्ट कन्स्ट्रक्टर तर्क / फ़ैक्टरी विधि तर्क निर्दिष्ट करने देता है, निर्दिष्ट डिफ़ॉल्ट तर्क को ओवरराइड करता है (यदि कोई है) बीन की परिभाषा में।
उदाहरण के लिए:
पूर्णांक param1 = 2; स्ट्रिंग param2 = "test"; डबल परम 3 = 3.4; कर्मचारी 2 एएमपी = (कर्मचारी 2) applicationContext.getBean ("emp2", परम 1, परम 2, परम 3);
वैसे भी, जब यह संभवतः काम करेगा, आपको Spring EL का उपयोग करने पर विचार करना चाहिए, जैसा कि प्रश्न के तहत एक टिप्पणी में उल्लिखित है।
- 1 उत्तर
Comments
Post a Comment