java - Spring: How to make class a bean if one constructor-arg is a ref bean but another is not? -


मेरे पास एक वर्ग है

  सार्वजनिक वर्ग MakeMeBean {@Autowired Private IAmBean var1; निजी IAmNOTBean var2; सार्वजनिक MakeMeBean () {} सार्वजनिक MakeMeBean (IAmNOTBean var) {this.var2 = var; }}   

मैं इस वर्ग को बीन के रूप में बनाना चाहता हूं ताकि मैं wireup.xml जैसा

   बीन Id = "मेक-मी-बीन" वर्ग = "com.blah.blah.MakeMeBean" & gt; & Lt; कन्स्ट्रक्टर- आर्ग सूचकांक = "0" रेफरी = & lt; PUT संदर्भ की बीयर यहां & gt; & Lt; कन्स्ट्रक्टर- आर्ग सूचक = "1" & lt; मैं कुछ नहीं डालना चाहता & gt; & Lt; / सेम ​​& gt;   

प्रश्न
a) मैं एक बीन कैसे बना सकता हूँ जिसमें एक उदाहरण चर एक सेम है और दूसरा नहीं? मैं var2 ( wireup.xml में कोई अन्य बीन) इंजेक्षन नहीं करना चाहता हूं

b।) & lt; PUT संदर्भ की बीयर यहाँ & gt; एक बीन है जार फ़ाइल से आयात किया गया, मैं इस बीन के संदर्भ को wireup.xml

में कैसे कर सकता हूं?

आप बस उस संदर्भ में कुछ सेम नहीं बना सकते हैं जो आपने बनाया था और वसंत के ऊपर आने वाले दूसरे आधे वसंत का (कम से कम यह आसान नहीं), यदि आप वसंत के ऊपर स्थितियों का प्रबंधन करना चाहते हैं, तो वसंत में वस्तुओं के संदर्भ में होना चाहिए। बेशक, आपके पास संदर्भ में वस्तुओं को इन्स्तांत करने की संभावना है, और तत्काल होने के बाद आप कुछ गुण सेट करने के लिए कुछ सेटर्स आमंत्रित कर सकते हैं।

दूसरे बीन के उपयोग के लिए दूसरे का उपयोग करने के लिए, मुझे लगता है कि एक और वसंत संदर्भ, दूसरे वसंत संदर्भ को पहले एक में आयात किया जाना चाहिए। संदर्भ फ़ाइल को आयात करने के लिए आप इसका उपयोग कर सकते हैं:

  & lt; आयात संसाधन = "संसाधनपाथ" / & gt;    

Comments