मैं इंजेक्टर विरासत और createChildInjector() का उपयोग करने के तरीके के बारे में स्पष्टीकरण के लिए नेट पर देख रहा हूं, लेकिन मुझे स्पष्ट और संक्षिप्त स्पष्टीकरण नहीं मिल रहा है।इंजेक्टर पदानुक्रम/बाल इंजेक्टर स्पष्टीकरण?
- मैं जो मैं निश्चित संदर्भ आइटम इंजेक्षन करने के लिए उपयोग एक आधार आवेदन मॉड्यूल है:
यहाँ मेरी उपयोग है। यह मॉड्यूल प्रत्येक इंजेक्टर उदाहरण में शामिल किया जाना चाहिए।
- मेरे पास एक खोज मॉड्यूल है जो डेटाबेस को खोजता है
- मेरे पास एक खोज मॉड्यूल है जो ElasticSearch की खोज करता है। इस श्रेणी में कुछ बाइंडिंग को डेटाबेस खोज मॉड्यूल में प्रदान की जाने वाली बाइंडिंग को ओवरराइड करना चाहिए।
उदाहरण के लिए, डेटाबेस खोज मॉड्यूल शामिल हैं:
bind(PlaceSearch.class).to(HibernatePlaceSearch.class);
bind(PersonSearch.class).to(HibernatePersonSearch.class);
और ElasticSearch मॉड्यूल शामिल हैं:
bind(PersonSearch.class).to(PersonElasticSearch.class);
वहाँ एक इंजेक्टर PlaceSearch से बाध्यकारी शामिल है कि बनाने के लिए एक रास्ता है
युक्त एक अलग मॉड्यूल बनाने के बिना डेटाबेस खोज मॉड्यूल और ElasticSearch मॉड्यूल से पर्सनशर्च बाध्यकारीbind(PlaceSearch.class).to(HibernatePlaceSearch.class);
bind(PersonSearch.class).to(PersonElasticSearch.class);
? क्या यह Modules.override() के लिए एक मामला है? CreateChildInjector के लिए एक मामला? समय से पहले धन्यवाद!
उत्तर के लिए धन्यवाद। क्या आप मुझे एक स्पष्टीकरण दे सकते हैं कि वास्तव में एक बच्चा इंजेक्टर क्या है? या मुझे एक अच्छा संदर्भ के लिए इंगित करें? मुझे यकीन नहीं है कि मैं बच्चे इंजेक्टर अवधारणा को पूरी तरह से समझता हूं। – jcampos8782
बच्चे इंजेक्टर अवधारणा को इस उत्तर में काफी अच्छी तरह से समझाया गया है: http://stackoverflow.com/a/12774246/205866 – racc