सीडीआई "संदर्भ और निर्भरता इंजेक्शन" के लिए खड़ा है, जबकि वसंत एक निर्भरता इंजेक्शन कंटेनर के आसपास एक पूर्ण पारिस्थितिक तंत्र है। दोनों की तुलना करने के लिए, आपको तुलना को अलग करना होगा।
निर्भरता इंजेक्शन दोनों कंटेनरों द्वारा संभाला जाता है। मुख्य अंतर यह तथ्य है कि सीडीआई गतिशील (उर्फ: राज्यपूर्ण) तरीके से DI को संभालती है - इसका मतलब है कि निर्भरता निष्पादन समय पर हल हो जाती है। वसंत का दृष्टिकोण स्थिर - इसका मतलब है कि घटक निर्माण समय पर एक साथ वायर्ड होते हैं। जबकि पहली झलक में सीडीआई-रास्ता थोड़ा असामान्य प्रतीत हो सकता है, यह बहुत बेहतर है और अधिक से अधिक उन्नत विकल्प प्रदान करता है (मैं इसे दो उत्पादक सीडीआई ऐप्स की पृष्ठभूमि के साथ लिख रहा हूं)।
आप पारिस्थितिकी तंत्र को देखें, तो स्थिति अलग है: बसंत, जार (> 150) का एक बहुत के साथ आता है, जबकि CDI अपने आप में बहुत छोटा है। एक सामान्य सीडीआई-उपयोग जावा ईई 6 एप्लिकेशन सर्वर के अंदर होगा, लेकिन आप आसानी से इसे सर्वलेट इंजन या जावा एसई में भी काम कर सकते हैं। इसका मतलब है कि सीडीआई का उपयोग हाइबरनेट, जेपीए, ईजेबी या जो भी हो - के बारे में कोई धारणा नहीं है - यह आपके ऊपर है।
यदि आपको और अधिक कार्यक्षमता की आवश्यकता है, तो सीडीआई पोर्टेबल एक्सटेंशन (जो स्वयं ही एपीआई लायक बनाता है) की अवधारणा के साथ आता है। अपाचे सीओडीआई और सीम 3 जैसे स्वतंत्र विस्तार मॉड्यूल मौजूद हैं और सुरक्षा, मेलिंग, रिपोर्टिंग आदि जैसे विषयों को कवर करते हैं।
संक्षेप में: सीडीआई वसंत पारिस्थितिक तंत्र के लिए "प्रतिस्थापन" की तरह कुछ नहीं है, बल्कि यह वसंत की निर्भरता इंजेक्शन तंत्र पर सुधार है। यह जावा ईई 6 का हिस्सा है, इसलिए यदि आप जावा ईई 6 के साथ ग्लासफ़िश पर हैं, तो आपको निश्चित रूप से सीडीआई के लिए जाना चाहिए। मेरी आंखों में आपका प्रश्न है: क्या मैं जावा ईई 6 के साथ वसंत को बदल सकता हूं? मुझे लगता है कि मेरा उत्तर बहुत स्पष्ट ;-)
Weld पर एक नज़र एक अच्छी शुरुआत पाने के लिए है है ...
स्रोत
2011-05-12 06:28:59
यह भी देखें https://dzone.com/articles/cdi-10-vs-spring-31-feature – GKislin