अपने सहकर्मियों केवल EJB2 देखा और पहले हो सकता है, जो वास्तव में अपवित्र जानवरों है कि बहुत कम लोगों को का उपयोग कर मज़ा आया थे।
ईजेबी 2 में, चीजों की सबसे सरलता के लिए बहुत ही आक्रामक ढांचे के लिए इंटरफेस को लागू किया जाना चाहिए, पागल जीवन चक्र विधियों के लिए जिसके लिए डेवलपर को कार्यान्वयन प्रदान करने की आवश्यकता थी, लेकिन जिसका (व्यवसाय) लक्ष्यों से कोई लेना देना नहीं था डेवलपर का। इस तरह के कुछ कलाकृतियों को प्रदान किया जाना था।
इसके अतिरिक्त प्रत्येक बीन को बहुत ही वर्बोज़ में प्रविष्टियों के साथ सिंक में रखा जाना चाहिए और तैनाती वर्णनकर्ता (एक एक्सएमएल फ़ाइल) पढ़ने में मुश्किल होनी चाहिए। जैसे कि यह एक डेवलपर के लिए पर्याप्त अपमानजनक नहीं था, विशेष उपकरण का उपयोग बीन को बढ़ाने और प्रॉक्सी कक्षाओं, कंकाल और स्टब्स उत्पन्न करने के लिए किया जाना था। विरासत की तरह सामान्य ओओ चीजें समर्थित नहीं थीं। इंजेक्शन का एक प्रकार था, लेकिन एक अजीब व्यक्ति जो चीजों को एक प्रकार के मानचित्र (वास्तव में निर्देशिका) में डालकर अस्तित्व में था, प्रत्येक बीन से जुड़ा हुआ था।
मूल ईजेबी 1 मॉडल ने सभी संचार को रिमोट और सभी वस्तुओं को वितरित करने के लिए मजबूर किया (ईजेबी मूल रूप से केवल एक रिमोटिंग तकनीक के रूप में देखा गया था)।इसलिए ईजेबी के लाभ प्राप्त करने के लिए आपको अपने आर्किटेक्चर को वितरित करने के लिए मजबूर होना पड़ा, भले ही यह पूरी तरह से अनावश्यक था।
शायद सभी का सबसे बड़ा अपमान एंटिटी बीन (जेपीए इकाइयों के साथ भ्रमित नहीं होना) की अवधारणा थी। इस प्रकार के बीन के साथ दोष इतने महान थे कि उस समय ईजेबी के सबसे बड़े समर्थक भी इसे किसी को भी अनुशंसा नहीं कर सकते थे।
फिर एक बहुत ही व्यावहारिक समस्या के रूप में, ईजेबी कार्यान्वयन के बीच संगतता कम से कम कहने के लिए बहुत अच्छी नहीं थी। विशेष रूप से इकाई बीन्स को विक्रेता विशिष्ट विन्यास की भारी मात्रा की आवश्यकता होती है।
इसे बंद करने के लिए, ईजेबी कार्यान्वयन के लिए हेवीवेट (स्थापित आकार और आवश्यक मेमोरी के मामले में) अनुप्रयोग सर्वर, जो बंद स्रोत थे और महंगे थे (इस प्रकार कंपनियों को अपग्रेड या स्विचिंग से रोकना क्योंकि निवेश को पहले भुगतान करना था वापस)। मुझे उस समय प्रौद्योगिकी के बारे में ब्लॉग करने वाले कई लोगों को याद नहीं किया जा सकता है, और जहां तक मुझे याद है कि तकनीक ज्यादातर बड़े निगमों के प्रबंधकों को बिक्री टीमों द्वारा लगाई गई थी।
यह आश्चर्य की बात नहीं है कि तकनीक को औसत डेवलपर द्वारा वास्तव में प्यार नहीं किया गया था।
सूर्य बस समय में जागरूक हो गया कि तकनीक पूरी तरह से गलत दिशा में जा रही थी और 180 डिग्री मोड़ लगा और भारी पुन: इंजीनियरिंग प्रयास शुरू किया।
परिणामस्वरूप, ईजेबी 3 (2006) एक बहुत ही हल्का और हल्का दृष्टिकोण है। कार्यान्वित करने के लिए कोई आवश्यक ढांचागत इंटरफेस नहीं हैं, वहां कोई आवश्यक एक्सएमएल नहीं है, केवल एक ही बीन को कोड किया जाना चाहिए (केवल साधारण पीओजेओ), हर जगह सैने डिफ़ॉल्ट हैं (कॉन्फ़िगरेशन पर सम्मेलन), कोई विशेष उपकरण आवश्यक नहीं है (सामान्य जावैक करते हैं), और स्थानीय बीन्स का उपयोग स्थानीय रूप से आम तौर पर आम मामला है।
एंटीटी बीन्स इतने दोषपूर्ण थे कि उन्हें पूरी तरह से गिरा दिया गया और अन्य लोगों के बीच टॉपलिंक और हाइबरनेट द्वारा समर्थित अधिक से अधिक स्वीयर दृष्टिकोण से प्रतिस्थापित किया गया।
इस तकनीक को मुक्त, हल्के और खुले स्रोत कार्यान्वयन की विस्तृत उपलब्धता के साथ संयोजित करें, जिसमें प्रौद्योगिकी के वकालत करने वाले कई प्रसिद्ध ब्लॉगर्स (जैसे एडम बिएन, रेझा रहमान, गेविन किंग) और लोकप्रियता में वृद्धि को समझा जाना आसान है ।
हाल ही में प्रकाशित "स्प्रिंग टू जावा ईई" माइग्रेशन मार्गदर्शिकाएं हैं, और उन लोगों को विभिन्न समाचार साइटों पर वोटों की बहुत ही अनुकूल संख्या मिली है, जिनमें कई लोग ईजेबी के लिए अपना समर्थन अभिव्यक्त करते हैं क्योंकि अब बहुत अच्छी तकनीक है । यह एक दशक पहले अचूक था (जब ईजेबी 3 अभी जारी किया गया था और अभी तक बहुत ज्ञात नहीं था)।
ईजेबी का सबसे आम विकल्प स्प्रिंग कोर (स्प्रिंग बीन्स) है। फिलहाल मुझे लगता है कि स्प्रिंग के पास ईजेबी और दूसरे तरीके से कोई निश्चित बड़ा लाभ नहीं है। दो प्रौद्योगिकियां बहुत समान हैं। वसंत कुछ और सुविधा उपयोगिता प्रदान करता है, जबकि ईजेबी अवधारणात्मक रूप से अधिक हल्का वजन (कोई एक्सएमएल) नहीं है। दोनों फायदे कुछ हद तक व्यक्तिपरक हैं। वे आम तौर पर एक-दूसरे की कार्यक्षमता से प्रेरित होते हैं और जो थोड़ा आगे होता है, इस पर निर्भर करता है कि किस तकनीक ने आखिरकार एक बड़ा नया संस्करण जारी किया है।
इसी तरह के प्रश्न पहले यहां पूछे गए हैं। इन प्रश्नों को देखें - [क्या-उपयोग-हैं-ejbs] (http://stackoverflow.com/questions/5579890/what-use-are-ejbs), [इन-क्या-स्थितियां-हैं-ejbs-used] (http://stackoverflow.com/questions/4773927/in-what-situations-are-ejbs-used-are-they-required-in-websites-web-applicatio), और [वसंत-बनाम-एजेबी] (http: //stackoverflow.com/questions/1779169/spring-vs-ejb-can-spring-replace-ejb) – CoolBeans