क्या जावा ईई सिर्फ एक विनिर्देश है? मेरा मतलब है: क्या EJB Java EE है?
जावा ईई वास्तव में एक सार विनिर्देश है। कोई भी विनिर्देश के कार्यशील कार्यान्वयन को विकसित करने और प्रदान करने के लिए खुला है। ठोस कार्यान्वयन तथाकथित आवेदन सर्वर हैं, जैसे WildFly , TomEE , ग्लासफिश , लिबर्टी , WebLogic , आदि वहाँ भी इस तरह के रूप सर्वलेट कंटेनर जो केवल विशाल जावा ईई एपीआई के JSP / Servlet भाग को लागू कर रहे हैं बिलाव , घाट , आदि।
हम, जावा ईई डेवलपर्स को विनिर्देशन का उपयोग करते हुए कोड लिखना चाहिए (यानी कार्यान्वयन के बजाय विशिष्ट कक्षाओं को लागू करने के बजाय हमारे कोड में केवल javax.*
कक्षाएं आयात करें org.jboss.wildfly.*
, com.sun.glassfish.*
और फिर हम किसी भी कार्यान्वयन पर अपना कोड चलाने में सक्षम होंगे (इस प्रकार, किसी पर भी) अनुप्रयोग सर्वर)। यदि आप JDBC से परिचित हैं, तो यह मूल रूप से एक ही अवधारणा है कि JDBC ड्राइवर कैसे काम करते हैं। Ao भी देखें सरल शब्दों में, एक कारखाना क्या है?
जावा ईई एसडीके डाउनलोड Oracle.com से मूल रूप से दस्तावेज और उदाहरण और वैकल्पिक रूप से भी NetBeans आईडीई के एक समूह के साथ ग्लासफिश सर्वर में शामिल है। यदि आप एक अलग सर्वर और / या IDE चाहते हैं तो आपको इसकी आवश्यकता नहीं है।
ईजेबी जावा ईई विनिर्देश का हिस्सा है। देखो, यह जावा ईई एपीआई में है । पूर्ण विकसित जावा ईई एप्लिकेशन सर्वर इसे बॉक्स का समर्थन करते हैं, लेकिन सरल जेएसपी / सर्वलेट कंटेनर नहीं करते हैं।
यह सभी देखें:
क्या EJB / स्प्रिंग जावा EE के अलग-अलग कार्यान्वयन हैं?
नहीं, जैसा कि कहा गया है, EJB Java EE का हिस्सा है। स्प्रिंग एक स्टैंडअलोन ढांचा है जो जावा ईई के कई हिस्सों को बदलता है और बेहतर बनाता है। स्प्रिंग को चलाने के लिए जावा ईई की आवश्यकता नहीं है। टॉम्केट जैसा नंगे हड्डियों वाला सर्वलेट कंटेनर पहले से ही पर्याप्त है। सीधे शब्दों में कहें, स्प्रिंग जावा ईई का एक प्रतियोगी है। जैसे "स्प्रिंग" (स्टैंडअलोन) EJB / JTA, स्प्रिंग MVC, JSF / JAX-RS, स्प्रिंग DI / IoC / AOP प्रतिस्पर्धा CDI, स्प्रिंग सुरक्षा प्रतिस्पर्धा JAAS / JASPIC, आदि का मुकाबला करता है।
पुराने J2EE / EJB2 समय के दौरान, EJB2 एपीआई को लागू करने और बनाए रखने के लिए भयानक था। स्प्रिंग तब EJB2 के लिए एक बेहतर विकल्प था। लेकिन EJB3 (जावा EE 5) के बाद से, EJB API स्प्रिंग से सीखे गए पाठों के आधार पर बहुत सुधरी थी। CDI (Java EE 6) के बाद से, स्प्रिंग को फिर से एक और फ्रेमवर्क पर देखने का कोई कारण नहीं है, ताकि डेवलपर्स को दूसरों की सेवा परत के रूप में विकसित करने में अधिक आसान बनाया जा सके।
केवल जब आप नंगे हड्डियों के सर्वलेट कंटेनर का उपयोग कर रहे हैं जैसे कि टॉमकैट और जावा ईई सर्वर पर नहीं जा सकता है, तो स्प्रिंग अधिक आकर्षक है क्योंकि टॉमकैट पर स्प्रिंग स्थापित करना आसान है। यह संभव नहीं है कि सर्वर पर संशोधन के बिना टॉमकैट पर एक ईजेबी कंटेनर स्थापित किया जाए, आप मूल रूप से टॉमईई को फिर से स्थापित करेंगे।
यह सभी देखें: