स्ट्रट्स और स्ट्रट्स के बीच का अंतर2

स्ट्रट्स और स्ट्रट्स के बीच का अंतर2
स्ट्रट्स और स्ट्रट्स के बीच का अंतर2

वीडियो: स्ट्रट्स और स्ट्रट्स के बीच का अंतर2

वीडियो: स्ट्रट्स और स्ट्रट्स के बीच का अंतर2
वीडियो: The Difference Between An Expensive Knife vs Cheap Knockoff: Spyderco vs Ganzo 2024, नवंबर
Anonim

स्ट्रट्स बनाम स्ट्रट्स2

स्ट्रट्स (जिसे अपाचे स्ट्रट्स या स्ट्रट्स 1 भी कहा जाता है) जावा में लिखा गया एक क्रॉस-प्लेटफ़ॉर्म ओपन सोर्स फ्रेमवर्क है, जिसका उद्देश्य जावा ईई वेब एप्लिकेशन विकसित करना है। यह प्रारंभिक जावा ईई वेब अनुप्रयोग ढांचे में से एक था। लेकिन कुछ साल बाद, Struts2 (या Struts संस्करण 2) आ गया, और यह एक पूरी तरह से अलग और अत्यधिक उन्नत वेब अनुप्रयोग ढांचा था। इसने कुछ मुद्दों को संबोधित किया था जिन्हें प्रारंभिक संस्करण में कमियों के रूप में माना जाता था। अब, दुनिया में Java EE अनुप्रयोगों को विकसित करने के लिए Struts2 का बहुत अधिक उपयोग किया जा रहा है।

स्ट्रट्स क्या है?

स्ट्रट्स (स्ट्रट्स 1) फ्रेमवर्क जावा ईई वेब एप्लिकेशन को विकसित करने के लिए प्रारंभिक वेब एप्लिकेशन फ्रेमवर्क में से एक था।स्ट्रट्स फ्रेमवर्क MVC (मॉडल-व्यू-कंट्रोलर) आर्किटेक्चर के उपयोग को प्रोत्साहित करता है। यह जावा सर्वलेट एपीआई का विस्तार है। क्रेग मैकक्लानहन स्ट्रट्स के मूल निर्माता हैं। प्रारंभ में इसे जकारथा स्ट्रट्स के नाम से जाना जाता था और इसे अपाचे सॉफ्टवेयर फाउंडेशन के जकार्ता प्रोजेक्ट के तहत बनाए रखा गया था। इसे अपाचे लाइसेंस 2.0 के तहत जारी किया गया है। स्ट्रट्स फ्रेमवर्क को अनुरोध-आधारित ढांचा कहा जाता है, और यह तीन मुख्य घटकों से बना होता है: एक अनुरोध हैंडलर, एक प्रतिक्रिया हैंडलर और एक टैग लाइब्रेरी। मानक यूआरआई (यूनिफ़ॉर्म रिसोर्स आइडेंटिफ़ायर) को एक अनुरोध हैंडलर में मैप किया जाता है। रिस्पांस हैंडलर नियंत्रण स्थानांतरित करने के लिए जिम्मेदार है। प्रपत्रों के साथ इंटरैक्टिव एप्लिकेशन बनाने के लिए, टैग लाइब्रेरी द्वारा दी जाने वाली सुविधाओं का उपयोग किया जा सकता है। Struts REST अनुप्रयोगों और SOAP, AJAX, आदि जैसी विभिन्न तकनीकों का समर्थन करते हैं।

स्ट्रट्स2 क्या है?

उस समय जावा ईई डेवलपर्स द्वारा स्ट्रट्स फ्रेमवर्क को कुछ सीमाएं (मुख्य रूप से प्रेजेंटेशन लेयर, रिक्वेस्ट हैंडलिंग लेयर और मॉडल के बीच अलगाव की कमी) को शामिल करने के लिए माना जाता था, और परिणामस्वरूप कुछ साल बाद स्ट्रट्स 2 आ गया।दरअसल, स्ट्रट्स2 स्ट्रट्स से बिल्कुल अलग था। वास्तव में, उन्होंने समान कोड आधार भी साझा नहीं किया क्योंकि Struts2 केवल WebWork 2.2 ढांचे का नाम बदलने का परिणाम था (अर्थात WebWork और Struts समुदाय जिन्होंने कुछ समय के लिए अलग-अलग काम किया, अंततः Struts2 के साथ आने के लिए हाथ मिला लिया)। इसकी वर्तमान स्थिर रिलीज़ संस्करण 2.2.3 है, जिसे मई, 2011 में रिलीज़ किया गया था।

स्ट्रट्स और स्ट्रट्स2 में क्या अंतर है?

स्ट्रट्स फ्रेमवर्क की कई समस्याओं में से एक इंटरफेस के बजाय अमूर्त कक्षाओं के लिए प्रोग्रामिंग की आवश्यकता थी। इसे Struts2 फ्रेमवर्क द्वारा हल किया गया था। उदाहरण के लिए, स्ट्रट्स फ्रेमवर्क के लिए आवश्यक है कि एक्शन क्लास को एब्सट्रैक्ट बेस क्लास से बढ़ाया जाए, लेकिन स्ट्रट्स 2 एक्शन एक एक्शन इंटरफेस को लागू कर सकता है। दो संस्करणों के बीच थ्रेडिंग मॉडल में अंतर के कारण, स्ट्रट्स फ्रेमवर्क में एक्शन ऑब्जेक्ट्स के बारे में थ्रेड-सुरक्षा मुद्दे सामने आए, जो स्ट्रट्स 2 फ्रेमवर्क में नहीं होते हैं। इसका कारण यह है कि स्ट्रट्स 2 एक्शन ऑब्जेक्ट्स को प्रत्येक अनुरोध के लिए तत्काल किया जाता है, जबकि स्ट्रट्स फ्रेमवर्क में एक एक्शन में उस क्रिया के सभी अनुरोधों को संभालने के लिए केवल एक उदाहरण होता है।स्ट्रट्स ढांचे में क्रियाओं के विपरीत, स्ट्रट्स2 क्रियाएँ सर्वलेट एपीआई पर निर्भर नहीं हैं।

स्ट्रट्स2 फ्रेमवर्क की टेस्टेबिलिटी स्ट्रट्स फ्रेमवर्क की तुलना में तुलनात्मक रूप से अधिक है। आप केवल तीन चरणों का पालन करके Struts2 क्रियाओं का परीक्षण कर सकते हैं: तात्कालिकता, गुण सेट करना और विधियों का आह्वान। Struts2 ढांचे में कटाई इनपुट आसान है क्योंकि एक्शन गुणों को इनपुट गुणों के रूप में उपयोग किया जाता है, बिना दूसरी इनपुट ऑब्जेक्ट रखे। JSTL एकीकरण (जो स्ट्रट्स में मौजूद है) के समर्थन के अलावा, Struts2 फ्रेमवर्क अधिक शक्तिशाली और अभिव्यंजक OGNL (ऑब्जेक्ट ग्राफ नोटेशन लैंग्वेज) का उपयोग कर सकता है। प्रकार रूपांतरण के लिए, स्ट्रट और स्ट्रट2 क्रमशः कॉमन्स-बीनुटिल्स और ओजीएनएल का उपयोग करते हैं। इन सुधारों के कारण, Struts2 ढांचे को अत्यधिक परिपक्व ढांचा माना जाता है और यह जावा ईई प्रोग्रामर के बीच बहुत लोकप्रिय है। दूसरी ओर, स्ट्रट्स फ्रेमवर्क को अब अप्रचलित माना जाता है।

सिफारिश की: