जावा सर्वलेट क्या है?


276

मैंने जावा सर्वलेट को समझने के लिए कई लेख पढ़े लेकिन मैं सफल नहीं हुआ।

क्या आप कृपया जावा सर्वलेट्स का संक्षिप्त परिचय (आसान भाषा में) दे सकते हैं। जैसे सर्वलेट क्या है? क्या कर रहे हैं? और वह सब।

मैं सर्वर-साइड प्रोग्रामिंग भाषाओं (PHP, ASP) और सर्वलेट्स के बीच अंतर नहीं समझ सकता।


38
servletsब्लैक बॉक्स के पॉप अप होने तक अपने प्रश्न के नीचे टैग को घुमाएं । जानकारी लिंक पर क्लिक करें ।
बालुसक

1
सर्वलेट्स आप इस पर देख सकते हैं। मुझे लगता है कि यह विवरण और प्रामाणिक है।
शोहन

जवाबों:


336

एक सर्वलेट केवल एक वर्ग है जो एक विशेष प्रकार के नेटवर्क अनुरोध का जवाब देता है - सबसे अधिक HTTP अनुरोध। मूल रूप से सर्वलेट्स का उपयोग आमतौर पर वेब एप्लिकेशन को कार्यान्वित करने के लिए किया जाता है - लेकिन ऐसे विभिन्न फ्रेमवर्क भी होते हैं, जो "यहां HTTP का अनुरोध", "HTTP प्रतिसाद लिखें" इस स्तर की तुलना में उच्च स्तरीय एब्स्ट्रैक्शन देने के लिए सर्वलेट्स (जैसे स्ट्रट्स) पर काम करते हैं। प्रदान करें।

सर्वलेट एक सर्वेंट कंटेनर में चलता है, जो नेटवर्किंग साइड को हैंडल करता है (जैसे HTTP रिक्वेस्ट को पार्स करना, कनेक्शन हैंडल करना आदि)। सबसे प्रसिद्ध खुले स्रोत सर्वलेट कंटेनरों में से एक टॉमकैट है


16
सर्वलेट्स java कोड के स्निपेट होते हैं जिन्हें वेब सर्वर खुद वेब सर्वर के अंदर कहते हैं । यदि आप PHP या ASP की तरह कुछ देखना चाहते हैं, तो आपको JSP की आवश्यकता है (जो एक विशेष प्रकार के सर्वलेट हैं)
Thorbjørn Ravn Andersen

3
उत्तर के लिए थैंक्स, लेकिन फिर भी मैं सर्वलेट्स का वास्तविक उपयोग नहीं कर सकता, यह बेहतर होगा यदि आप उदाहरण के तौर पर समझ सकें जैसे कि हम सर्वलेट्स का उपयोग कर सकते हैं। मुझे यह समझ में नहीं आया कि सर्वलेट का उपयोग क्या सर्वलेट कर सकता है जो अन्य सर्वर साइड प्रोग्रामिंग भाषाएं नहीं कर सकती हैं।
हार्डिक

4
@ हार्दिक: ऐसा नहीं है कि वे ऐसा कुछ भी कर सकते हैं जो दूसरे तरीके से नहीं किया जा सकता। सर्वलेट्स सर्वर-साइड जावा कार्य के लिए एक सामान्य तकनीक है। सर्वलेट्स एक भाषा नहीं हैं - और न ही ASPX है। दोनों ऐसे प्लेटफ़ॉर्म हैं जिनका आप दूसरी भाषा के साथ संयोजन में उपयोग करते हैं - आमतौर पर सर्वलेट्स के मामले में जावा।
जॉन स्कीट

7
@ हार्दिक: जैसा कि मैंने अपनी पोस्ट में लिखा है, सर्वलेट्स वे क्लासेस होते हैं जो सर्वलेट कंटेनर के अंदर काम करते हैं। सर्वलेट कंटेनर एक ही समय में कई सर्वलेट की मेजबानी कर सकता है।
जॉन स्कीट

5
@ हार्दिक: हां, बिल्कुल। सर्वलेट HTML को फ़ॉर्म प्रदर्शित करने के लिए प्रदान कर सकता है और सबमिट करने पर भी कार्य कर सकता है। वेब सेवाओं को लागू करने के लिए सर्वलेट्स का भी उपयोग किया जा सकता है। वे HTTP से अलग अन्य प्रोटोकॉल के लिए इस्तेमाल किया जा सकता है, लेकिन HTTP सर्वलेट्स द्वारा नियंत्रित सबसे आम परिवहन है।
जॉन स्कीट

101

इसके मूल में एक सर्वलेट एक जावा वर्ग है; जो HTTP अनुरोधों को संभाल सकता है। आमतौर पर एक HTTP रिक्वेस्ट को पढ़ने की आंतरिक नॉटी-ग्रिट्टी और तार पर प्रतिक्रिया को टॉमकैट जैसे कंटेनरों द्वारा ध्यान रखा जाता है। ऐसा इसलिए किया जाता है ताकि एक सर्वर साइड डेवलपर के रूप में आप इस बात पर ध्यान केंद्रित कर सकें कि HTTP अनुरोध और प्रतिक्रियाओं के साथ क्या करना है और कोड से निपटने के बारे में परेशान न करें जो नेटवर्किंग आदि से संबंधित है। कंटेनर चीजों का ख्याल रखेगा जैसे पूरी चीज़ को लपेटने में HTTP रिस्पांस ऑब्जेक्ट और इसे क्लाइंट को भेजें (एक ब्राउज़र कहें)।

अब अगला तार्किक प्रश्न यह पूछना है कि कौन तय करता है कि एक कंटेनर को क्या करना है? और उत्तर है; जावा दुनिया में कम से कम यह निर्देशित है (ध्यान दें कि मैंने विनिर्देशों द्वारा नियंत्रित शब्द का उपयोग नहीं किया है)। उदाहरण के लिए सर्वलेट स्पेसिफिकेशंस (संसाधन 2 देखें) तय करता है कि एक सर्वलेट को क्या करने में सक्षम होना चाहिए। इसलिए यदि आप विनिर्देश के लिए एक कार्यान्वयन लिख सकते हैं, तो बधाई हो कि आपने अभी एक कंटेनर बनाया है (तकनीकी रूप से कंटेनर जैसे कि टॉमकैट भी अन्य विशिष्टताओं को लागू करता है और कस्टम वर्ग लोडर आदि जैसे मुश्किल सामान करता है लेकिन आपको विचार मिलता है)।

मान लें कि आपके पास एक कंटेनर है, तो आपके सर्वलेट्स अब जावा क्लासेस हैं, जिनका जीवनचक्र कंटेनर द्वारा बनाए रखा जाएगा, लेकिन आने वाले HTTP अनुरोधों पर उनकी प्रतिक्रिया आपके द्वारा तय की जाएगी। आप ऐसा करते हैं कि आप पहले से परिभाषित तरीकों जैसे init (), doGet (), doPost () आदि संसाधन 3 में क्या-क्या चाहते हैं, लिखकर।

यहां आपके लिए एक मजेदार व्यायाम है। संसाधन 3 में एक साधारण सर्वलेट बनाएं और इसमें कुछ System.out.println () स्टेटमेंट्स लिखें कंस्ट्रक्टर विधि (हाँ आपके पास सर्वलेट का कंस्ट्रक्टर हो सकता है), init (), doGet (), doPost () विधियाँ और रन कब्रिस्तान में सर्वलेट। कंसोल लॉग और टॉमकैट लॉग देखें।

आशा है कि यह मदद करता है, खुश शिक्षा।

साधन

  1. देखो कैसे HTTP सर्वलेट यहाँ दिखता है (Tomcat उदाहरण)।

  2. सर्वलेट स्पेसिफिकेशन

  3. सरल सर्वलेट उदाहरण

  4. पुस्तक को ऑनलाइन पढ़ना शुरू करें / पीडीएफ यह आपको पूरी पुस्तक का डाउनलोड भी प्रदान करता है। हो सकता है यह मदद करेगा। यदि आप सिर्फ सर्वलेट्स शुरू कर रहे हैं तो सर्वलेट एपीआई के साथ सामग्री को पढ़ना एक अच्छा विचार हो सकता है। यह सीखने की धीमी प्रक्रिया है, लेकिन यह मूल बातें स्पष्ट करने में अधिक सहायक है।


12
स्टैक ओवरफ्लो पर लिंक-ओनली उत्तर हतोत्साहित किए जाते हैं, क्योंकि जो संसाधन वे लिंक करते हैं, वे भविष्य में अनुपलब्ध हो सकते हैं या बदल सकते हैं। इसे बेहतर बनाने के लिए अपने उत्तर में लिंक की प्रासंगिक सामग्री को सारांशित करने पर विचार करें।

6
@Cupcake आपकी रचनात्मक प्रतिक्रिया की सराहना करते हैं। मैंने जवाब में कुछ मांस जोड़ने की कोशिश की। समुदाय को बेहतर बनाने के लिए धन्यवाद।
आयुष्मान

34

उपरोक्त के अलावा, और केवल ब्लीडिन को स्पष्ट करने के लिए ...

कई के लिए यह बहुत स्पष्ट है, लेकिन किसी को ऐसे ऐप्स लिखने के लिए उपयोग किया जाता है जो अभी चलाए जाते हैं और फिर समाप्त होते हैं: एक सर्वलेट अपना अधिकांश समय कुछ भी नहीं करने के लिए घूमता रहता है ... कुछ भेजे जाने का इंतजार, एक अनुरोध, और फिर इसका जवाब देना । इस कारण से एक सर्वलेट का जीवनकाल होता है: यह एक जन्मजात होता है और फिर चारों ओर इंतजार करता है, इस पर फेंकी गई किसी भी चीज का जवाब देता है और फिर नष्ट हो जाता है। जिसका तात्पर्य यह है कि इसे (और बाद में नष्ट) कुछ और (एक ढांचा) द्वारा बनाया जाना है, कि यह अपने स्वयं के धागे या प्रक्रिया में चलता है, और जब तक कि यह कुछ भी नहीं करता है। और यह भी कि, कुछ साधनों या अन्य तरीकों से, एक तंत्र को लागू किया जाना चाहिए जिससे यह "संस्था" अनुरोधों के लिए "सुन" सके।

मेरा सुझाव है कि थ्रेड्स, प्रक्रियाओं और सॉकेट्स के बारे में पढ़ना इस पर कुछ प्रकाश डालेगा: यह एक मूल "हैलो वर्ल्ड" ऐप के कार्यों के तरीके से काफी भिन्न है।

यह तर्क दिया जा सकता है कि शब्द "सर्वर" या "सर्वलेट" एक ओवरकिल का एक सा है। एक अधिक तर्कसंगत और सरल नाम "उत्तरदाता" हो सकता है। "सर्वर" शब्द की पसंद का कारण ऐतिहासिक है: पहली ऐसी व्यवस्थाएं "फाइल सर्वर" थीं, जहां कई उपयोगकर्ता / ग्राहक टर्मिनल एक केंद्रीय मशीन से एक विशिष्ट फ़ाइल के लिए पूछेंगे, और यह फ़ाइल तब "सेवा" की जाएगी। "एक किताब या मछली और चिप्स की एक प्लेट की तरह।


1
क्या मानक एमवीसी ढांचे में "नियंत्रक" के अनुरूप सर्वलेट को देखना गलत है?
user2490003

व्यक्तिगत रूप से मैं नहीं देख सकता कि कैसे सादृश्य रखती है। मैं यह भी सोचता हूं कि जो लोग मेरा जवाब सोचते हैं, वे एक उपयोगी हैं (उनके लिए चीजों को स्पष्ट करने में मदद करता है) आपके सुझाव से अच्छी तरह भ्रमित हो सकते हैं।
माईक कृंतक

मुझे लगता है कि यह उत्तर उपयोगी है। लेकिन मुझे भी आश्चर्य हुआ (इस उत्तर से स्वतंत्र, और इसे पढ़ने से पहले) यही सवाल कि @ user2490003 ने ऊपर पोस्ट किया। एक सर्वलेट और एक एमवीसी-फ्रेमवर्क नियंत्रक के बीच क्या अंतर है? User2490003 द्वारा सादृश्य क्यों धारण नहीं करता है?
cellepo

एक एमवीसी व्यवस्था अधिक जटिल है और फिर भी कम जटिल है। जरूरी नहीं कि इसमें इनपुट का इंतजार शामिल हो। सर्वर-क्लाइंट सेटअप के मूल विचार को परिभाषित करने में, यह वह सरलता है जिस पर मैं जोर देना चाहता हूं। यहां मूल MVC आरेख देखें: en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller । एक साधारण क्लाइंट-सर्वर सेटअप में, उपयोगकर्ता केवल क्लाइंट के साथ दो वस्तुओं के साथ नहीं बल्कि एक दृश्य और एक नियंत्रक के साथ बातचीत करता है। MVC के साथ कई विचार, कई नियंत्रक और कई मॉडल भी हो सकते हैं। और इनपुट की प्रतीक्षा करना (आवश्यक रूप से) शामिल नहीं है।
माइक कृंतक

उपरोक्त के अलावा, एक सर्वर कई उपयोगकर्ताओं की सेवा कर सकता है, जबकि एमवीसी सेटअप के साथ ऐसी कोई आवश्यकता नहीं है। एमवीसी सेटअप क्लासिकल कंप्यूटिंग यानी स्टैंडअलोन ऐप्स की दुनिया से संबंधित है। सर्वर के साथ हम इंटरेक्टिव कंप्यूटिंग के ब्रह्मांड में अपना पहला कदम रखते हैं। ऐसा नहीं है कि सादृश्य 100% गलत है, 90% से अधिक गलत है, और सबसे बढ़कर यह है कि किसी भी सादृश्य का कोई फायदा नहीं है अगर यह वास्तव में किसी को भी या किसी भी तरह से कुछ भी मदद नहीं करता है। एक सर्वर-क्लाइंट व्यवस्था इतनी सरल है कि एक विचार को समझने के लिए किसी को किसी भी तरह के एनालॉग की आवश्यकता नहीं है ।
माईक कृंतक

10

एक सर्वलेट क्या है?

  • एक सर्वलेट केवल एक वर्ग है जो एक विशेष प्रकार के नेटवर्क अनुरोध का जवाब देता है - सबसे अधिक HTTP अनुरोध।
  • मूल रूप से सर्वलेट्स का उपयोग आमतौर पर वेब एप्लिकेशन को कार्यान्वित करने के लिए किया जाता है - लेकिन ऐसे विभिन्न फ्रेमवर्क भी होते हैं, जो "यहां HTTP का अनुरोध", "HTTP प्रतिसाद लिखें" इस स्तर की तुलना में उच्च स्तरीय एब्स्ट्रैक्शन देने के लिए सर्वलेट्स (जैसे स्ट्रट्स) पर काम करते हैं। प्रदान करें।
  • सर्वलेट एक सर्वेंट कंटेनर में चलता है जो नेटवर्किंग साइड को हैंडल करता है (जैसे HTTP अनुरोध, कनेक्शन हैंडलिंग आदि को पार्स करना)। सबसे प्रसिद्ध खुले स्रोत सर्वलेट कंटेनरों में से एक टॉमकैट है।

  • अनुरोध / प्रतिक्रिया प्रतिमान में, एक वेब सर्वर ग्राहक को केवल स्थैतिक पृष्ठ ही दे सकता है

  • गतिशील पृष्ठों की सेवा के लिए, हमें सर्वलेट्स की आवश्यकता होती है।
  • सर्वलेट एक जावा प्रोग्राम के अलावा और कुछ नहीं है
  • इस जावा प्रोग्राम में एक मुख्य विधि नहीं है। इसमें केवल कुछ कॉलबैक विधियाँ हैं।
  • वेब सर्वर सर्वलेट से कैसे संवाद करता है? वाया कंटेनर या सर्वलेट इंजन।
  • सर्वलेट एक वेब कंटेनर के भीतर रहता है और मर जाता है।
  • वेब कंटेनर एक सर्वलेट्स में तरीकों को लागू करने के लिए जिम्मेदार है। यह जानता है कि सर्वलेट में कॉलबैक के क्या तरीके हैं।

अनुरोध का प्रवाह

  • क्लाइंट HTTP अनुरोध वेब सर्वर को भेजता है
  • वेब सर्वर आगे कि HTTP वेब कंटेनर के लिए अनुरोध करता है।
  • चूंकि सर्वलेट HTTP, इसके जावा प्रोग्राम को नहीं समझ सकता है, यह केवल वस्तुओं को समझता है, इसलिए वेब कंटेनर उस अनुरोध को मान्य अनुरोध ऑब्जेक्ट में परिवर्तित करता है
  • वेब कंटेनर प्रत्येक अनुरोध के लिए एक धागा स्पिन करता है
  • सभी व्यावसायिक तर्क doGet () या doPost () कॉलबैक विधियों के अंदर जाते हैं
  • सर्वलेट जावा प्रतिक्रिया वस्तु बनाता है और इसे कंटेनर में भेजता है। यह क्लाइंट को भेजने के लिए फिर से HTTP रिस्पॉन्स में कनवर्ट करता है

कंटेनर को कैसे पता चलता है कि किस सर्वलेट क्लाइंट ने अनुरोध किया है?

  • Web.xml नामक एक फ़ाइल है
  • यह एक वेब कंटेनर के लिए मास्टर फ़ाइल है
  • आपको इस फ़ाइल में सर्वलेट के बारे में जानकारी है-

    • सर्वलेट
      • सर्वलेट नाम
      • सर्वलेट श्रेणी
    • सर्वलेट-मैपिंग - यहाँ / लॉगिन या अधिसूचना जैसे मार्ग को मैप किया गया है
      • सर्वलेट नाम
      • यूआरएल पैटर्न
    • और इसी तरह
  • वेब एप के हर सर्वलेट में इस फाइल की एंट्री होनी चाहिए

  • तो यह लुकअप होता है जैसे- url-pattern -> सर्वलेट-नाम -> सर्वलेट-क्लास

सर्वलेट्स "इनस्टॉल" कैसे करें? * खैर, सर्वलेट ऑब्जेक्ट्स लाइब्रेरी से विरासत में मिले हैं- javax.servlet। *। इन वस्तुओं को उपयोग के मामले में फिट करने के लिए टॉमकैट और स्प्रिंग का उपयोग किया जा सकता है।

Ref- 1.5x- पर इस घड़ी https://www.youtube.com/watch?v=tkFRGdUgCsE । इसकी एक भयानक व्याख्या है।


1
किसी समाधान का लिंक स्वागत योग्य है, लेकिन कृपया सुनिश्चित करें कि आपका उत्तर इसके बिना उपयोगी है: लिंक के चारों ओर संदर्भ जोड़ें ताकि आपके साथी उपयोगकर्ताओं को कुछ पता चले कि यह क्या है और यह क्यों है, तो आप जिस पृष्ठ का सबसे प्रासंगिक हिस्सा उद्धृत करते हैं ' लक्ष्य पृष्ठ अनुपलब्ध होने की स्थिति में पुनः लिंक करना। उत्तर जो किसी लिंक से थोड़ा अधिक हैं, उन्हें हटाया जा सकता है।
मोगसद

1
ध्यान दें कि दुनिया आगे बढ़ गई है। 2020 में हम XML में केंद्रीय स्ट्रिंग आधारित कॉन्फ़िगरेशन फ़ाइल के बजाय कोड पर एनोटेशन का उपयोग करते हैं।
थोरबजोरन राव एंडरसन

5

सर्वलेट सर्वर साइड तकनीक है जिसका उपयोग वेब एप्लिकेशन में गतिशील वेब पेज बनाने के लिए किया जाता है । दरअसल सर्वलेट एक एपी है जिसमें वर्गों और इंटरफेस के समूह शामिल हैं, जिसमें कुछ कार्यक्षमता है। जब हम सर्वलेट एपीआई का उपयोग करते हैं तो हम सर्वलेट कक्षाओं और इंटरफेस की पूर्वनिर्धारित कार्यक्षमता का उपयोग कर सकते हैं।

सर्वलेट का जीवनचक्र:

वेब कंटेनर सर्वलेट उदाहरण के जीवनचक्र को बनाए रखता है।

1 है। सर्वलेट क्लास भरी हुई

२। सर्वलेट उदाहरण बनाया गया

३। init () विधि का प्रयोग किया जाता है

४। सेवा () विधि लागू की गई

५। नष्ट () विधि का इस्तेमाल किया

जब मुवक्किल (ब्राउज़र) द्वारा अनुरोध उठाया जाता है तो वेब-कंटेनर यह जाँचता है कि सर्वलेट चल रहा है या नहीं यदि हाँ तो यह सेवा () विधि को लागू करता है और ब्राउज़र को प्रतिक्रिया देता है।

जब सर्वलेट नहीं चल रहा है तो वेब-कंटेनर निम्नलिखित चरणों का पालन करें ।।

1. क्लास लोडर सर्वलेट क्लास को लोड करता है

2. सर्वलेट को त्वरित करता है

3. सर्वलेट को प्रारंभ करता है

4.in सेवा () विधि का उपयोग करें

अनुरोध करने के बाद वेब-कंटेनर विशिष्ट समय की प्रतीक्षा करता है, इस समय में यदि अनुरोध आता है तो इसे केवल सेवा () विधि कहते हैं अन्यथा इसे नष्ट () विधि कहते हैं।


5

यदि आप शुरुआत कर रहे हैं, मुझे लगता है कि यह ट्यूटोरियल क्या सर्वलेट के बारे में बुनियादी विचार दे सकता है ...

कुछ मूल्यवान बिंदु दिए गए लिंक से नीचे हैं।

सर्वलेट तकनीक का उपयोग वेब एप्लिकेशन बनाने के लिए किया जाता है जो सर्वर साइड पर रहता है और गतिशील वेब पेज बनाता है।

सर्वलेट का संदर्भ के आधार पर कई तरह से वर्णन किया जा सकता है।

  • सर्वलेट एक तकनीक है जिसका उपयोग वेब एप्लिकेशन बनाने के लिए किया जाता है।
  • सर्वलेट एक एपीआई है जो दस्तावेज़ों सहित कई इंटरफेस और कक्षाएं प्रदान करता है।
  • सर्वलेट एक इंटरफ़ेस है जिसे किसी भी सर्वलेट को बनाने के लिए लागू किया जाना चाहिए।
  • सर्वलेट एक ऐसा वर्ग है जो सर्वर की क्षमताओं का विस्तार करता है और आने वाले अनुरोध का जवाब देता है। यह किसी भी प्रकार के अनुरोधों का जवाब दे सकता है।
  • सर्वलेट एक वेब घटक है जिसे डायनेमिक वेब पेज बनाने के लिए सर्वर पर तैनात किया जाता है। संदर्भ: यहाँ

1
यह वास्तव में अच्छा ट्यूटोरियल है जो मूल से अवधारणाओं की व्याख्या करता है
निखिल साहू

3

जावा सर्वलेट्स सर्वर-साइड जावा प्रोग्राम मॉड्यूल हैं जो ग्राहकों की मांगों पर प्रक्रिया और जवाब देते हैं और सर्वलेट इंटरफ़ेस को वास्तविक बनाते हैं। यह नगण्य उपरि, रखरखाव और समर्थन के साथ वेब सर्वर उपयोगिता को बेहतर बनाने में मदद करता है।

एक सर्वलेट ग्राहक और सर्वर के बीच मध्यस्थ के रूप में जाता है। जैसा कि सर्वलेट मॉड्यूल सर्वर पर चलते रहते हैं, वे ग्राहक द्वारा की गई मांगों के लिए प्राप्त कर सकते हैं और प्रतिक्रिया कर सकते हैं। सर्वलेट की डिमांड और रिएक्शन ऑब्जेक्ट्स HTTP से निबटने के लिए एक सहायक विधि प्रदान करते हैं और सामग्री की जानकारी ग्राहक को वापस भेजते हैं।

चूंकि एक सर्वलेट जावा बोली के साथ समन्वित है, इसलिए इसके अतिरिक्त सभी जावा हाइलाइट हैं, उदाहरण के लिए, उच्च चलनशीलता, मंच स्वायत्तता, सुरक्षा और जावा डेटाबेस उपलब्धता।


2

सर्वलेट एक HTTP अनुरोध का जवाब देने और एक HTTP प्रतिक्रिया का उत्पादन करने के लिए एक जावा क्लास है ...... जब हम HTML के उपयोग के साथ एक पेज बनाते हैं तो यह एक स्थैतिक पेज होगा इसलिए इसे गतिशील बनाने के लिए हम सरल शब्दों में SERVLET {का उपयोग करते हैं कोई भी समझ सकता है} सर्वलेट का उपयोग करने के लिए जेएसपी द्वारा ओवरले किया गया है यह कोड और HTML टैग दोनों का ही उपयोग करता है ..


2

सर्वलेट्स जावा क्लासेस होते हैं जो एक वेबसाइट यूजर एक सर्वर से एक URL का अनुरोध करते समय कुछ कार्य करते हैं। ये फ़ंक्शंस किसी डेटाबेस को डेटा सहेजने, लॉजिक निष्पादित करने और पेज लोड करने के लिए आवश्यक जानकारी (जैसे JSON डेटा) जैसे कार्यों को पूरा कर सकते हैं।

अधिकांश जावा प्रोग्राम एक main()विधि का उपयोग करते हैं जो प्रोग्राम को चलाने में कोड निष्पादित करता है। जावा सर्वलेट्स में वे विधियाँ doGet()और doPost()विधियाँ होती हैं जो main()विधि की तरह कार्य करती हैं। ये फ़ंक्शन तब निष्पादित किए जाते हैं जब उपयोगकर्ता URL पर उस सर्वलेट में मैप किए गए GETया POSTअनुरोध करता है । इसलिए उपयोगकर्ता GETअनुरोध के लिए पृष्ठ लोड कर सकता है , या POSTअनुरोध से डेटा संग्रहीत कर सकता है ।

जब उपयोगकर्ता एक अनुरोध GETया POSTअनुरोध भेजता है , तो सर्वर @WebServletआपकी निर्देशिका में प्रत्येक सर्वलेट क्लास के शीर्ष पर पढ़ता है कि किस सर्वलेट क्लास को कॉल करना है। उदाहरण के लिए, मान लें कि आपके पास एक चैटबॉक्स वर्ग है और इसमें सबसे ऊपर है:

@WebServlet("/chat")
public class ChatBox extends HttpServlet {

जब कोई उपयोगकर्ता /chatURL का अनुरोध करता है , तो आपकी ChatBoxकक्षा को निष्पादित किया जाता है।


0

जैसा कि यह आलेख बताता है, एक सर्वलेट जावा सर्वर को विस्तारित करने और अपनी क्षमताओं तक पहुंचने का एक मानकीकृत तरीका है।

प्रत्येक सर्वलेट को एक छोटे सर्वर (इसलिए नाम) के रूप में देखा जा सकता है, जो सत्र जैसे अन्य संदर्भ डेटा के साथ-साथ जावा कोड में मॉडल किए गए अनुरोध और प्रतिक्रिया तक पहुंच प्राप्त करता है।

हाथ में इन के साथ, सर्वलेट का जावा कोड एक HTML दृश्य उत्पन्न करने के लिए एक JSP पृष्ठ को सौंपने सहित एक प्रतिक्रिया प्रस्तुत करने के लिए जो कुछ भी आवश्यक है, उसके साथ इंटरफेस कर सकता है।


-1

मुझे लगता है कि सर्वलेट मूल रूप से एक जावा वर्ग है जो HTTP अनुरोध और HTTP प्रतिक्रिया के बीच एक मध्य मार्ग के रूप में कार्य करता है। आपके वेब पेज को गतिशील बनाने के लिए भी सर्वलेट का उपयोग किया जाता है। उदाहरण के लिए मान लें कि यदि आप सर्वर पर किसी अन्य वेब पेज पर पुनर्निर्देशित करना चाहते हैं तो आपको सर्वलेट्स का उपयोग करना होगा। एक और महत्वपूर्ण बात यह है कि सर्वलेट लोकलहोस्ट के साथ-साथ एक वेब ब्राउज़र पर भी चल सकता है।


-2

आपको बस सामान्य रूप से सर्वलेट के लिए जवाब मिला। हालाँकि, मैं आपको सर्वलेट 3.0 के बारे में कुछ साझा करना चाहता हूं

सर्वलेट क्या है?

एक सर्वलेट एक वेब घटक है जिसे एक कंटेनर द्वारा प्रबंधित किया जाता है और गतिशील सामग्री उत्पन्न करता है। सर्वलेट्स जावा कक्षाएं हैं जो बाइट कोड के लिए संकलित की जाती हैं जिन्हें गतिशील रूप से लोड किया जा सकता है और जावा प्रौद्योगिकी-सक्षम वेब सर्वर या सर्वलेट कंटेनर द्वारा चलाया जाता है।

सर्वलेट 3.0 मौजूदा सर्वलेट 2.5 विनिर्देश के लिए एक अद्यतन है। सर्वलेट 3.0 जावा प्लेटफॉर्म, एंटरप्राइज़ एडिशन के एपीआई की आवश्यकता है। सर्वलेट 3.0 को एक्स्टेंसिबिलिटी और वेब फ्रेमवर्क प्लगबिलिटी पर फोकस किया जाता है। सर्वलेट 3.0 आपके लिए कुछ एक्सटेंशन लाती है जैसे कि Ease of Development (EoD), प्लगगैबिलिटी, Async सपोर्ट और सिक्योरिटी एन्हांसमेंट्स

विकास में आसानी

आप सर्वलेट, फ़िल्टर, श्रोता, इनिट परम घोषित कर सकते हैं, और एनोटेशन का उपयोग करके लगभग सब कुछ कॉन्फ़िगर किया जा सकता है

Pluggability

आप एक वेब-अंश के साथ एक उप-परियोजना या एक मॉड्यूल बना सकते हैं। xml। इसका अर्थ है कि यह प्लग करने योग्य कार्यात्मक आवश्यकताओं को स्वतंत्र रूप से लागू करने की अनुमति देता है।

Async समर्थन करते हैं

सर्वलेट 3.0 अतुल्यकालिक प्रसंस्करण की क्षमता प्रदान करता है, उदाहरण के लिए: संसाधन उपलब्ध होने की प्रतीक्षा करना, प्रतिक्रिया को अतुल्यकालिक रूप से उत्पन्न करना।

सुरक्षा संवर्द्धन

प्रमाणित, लॉगिन और लॉगआउट सर्वलेट सुरक्षा विधियों के लिए समर्थन

मुझे यह जावा सर्वलेट ट्यूटोरियल से मिला

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.