दिलचस्प पोस्ट
जावा में 2 दशमलव स्थानों तक गोल? स्मृति में स्वरूपित बहु-आयामी arrays कैसे हैं? मैं JTableHeader के एक JTable में नियंत्रण कैसे रख सकता हूं? कैसे कॉन को केवल संख्याएं लेना चाहिए सामान्यकरण: "दोहराए जाने वाले समूह" का क्या अर्थ है? एंड्रॉइड मीडियाप्लेयर एंड्रॉइड 2.1 तक कस्टम ऑडियो स्ट्रीमिंग एप्लीकेशन में ठीक काम करता है, लेकिन उच्च संस्करणों में नहीं पायथन में वैकल्पिक कर्ल NSArray को उद्देश्य-सी में एक नए NSArray में फ़िल्टर करना निजी, सार्वजनिक और सुरक्षित विरासत के बीच अंतर मैं कैसे जांचूं अगर एक तत्व जावास्क्रिप्ट के साथ वास्तव में दिखाई दे रहा है? सी में फाइल डिस्क्रिप्टर से फ़ाइल नाम प्राप्त करना Android में इनकमिंग कॉल के फ़ोन नंबर को पुनर्प्राप्त करें क्या मैं एक HTML <canvas> तत्व पर एंटीअलियाज़िंग को बंद कर सकता / सकती हूं? जावा () में प्रतीक्षा () और सूचित करें () का उपयोग करते हुए एक साधारण परिदृश्य यूनिकोडडेकोड एर्रर: 'मोरैप' कोडेक स्थिति में बाइट एक्स को डीकोड नहीं कर सकता Y: वर्ण मैप को <undefined>

सर्विसलेट <लोड-ऑन-स्टार्टअप> वैल्यू क्या दर्शाता है

मुझे यहाँ थोड़ा भ्रमित हो रहा है हमारे आवेदन में हमारे पास परिभाषित कुछ सर्लेट हैं यहां web.xml से एक के लिए web.xml से उद्धरण है:

 <servlet> <servlet-name>AxisServlet</servlet-name> <display-name>Apache-Axis Servlet</display-name> <servlet-class>com.foo.framework.axis2.http.FrameworkServlet</servlet-class> <load-on-startup>0</load-on-startup> </servlet> 

मेरी समझ के अनुसार <load-on-startup> के मान को स्वचालित रूप से लोड होने के लिए एक सकारात्मक पूर्णांक होना चाहिए। मैंने Google पर देखा लेकिन मेरी प्रतिक्रियाएं केवल मेरे भ्रम में शामिल हुईं।

वेब के समाधान से एकत्रित समाधान "सर्विसलेट <लोड-ऑन-स्टार्टअप> वैल्यू क्या दर्शाता है"

राल 3.0 इस व्यवहार दस्तावेज:

लोड-ऑन-स्टार्टअप एक (वैकल्पिक) पूर्णांक मान निर्दिष्ट कर सकता है। यदि मान 0 या इससे अधिक है, तो यह लोड करने के लिए सर्वलेट्स के लिए एक ऑर्डर इंगित करता है, उच्च संख्या वाला सर्वलेट कम संख्या वाले सर्वलेट के बाद लोड हो जाते हैं।

जेएसपी 3.1 स्पेस (जेएसआर 340) पृष्ठ 14-160 पर यह कहता है:

तत्व load-on-startup इंगित करता है कि वेबलेट के load-on-startup इस सर्विसलेट को लोड किया जाना चाहिए (इंस्टीटिवेटेड और इसकी init () कहा जाता है) इस तत्व की तत्व सामग्री एक पूर्णांक होनी चाहिए जिसका मतलब है कि सर्विसलेट को लोड किया जाना चाहिए। यदि मान एक नकारात्मक पूर्णांक है, या तत्व मौजूद नहीं है, तो कंटेनर बिना किसी दायरे को लोड करने के लिए फ्रीलेट को लोड करने के लिए स्वतंत्र है। यदि मान एक सकारात्मक पूर्णांक या 0 है, तो कंटेनर को लोड करना होगा और सेवा को लागू करने के रूप में सेवा को लागू करना। कंटेनर को यह सुनिश्चित करना होगा कि कम पूर्णांक के रूप में चिह्नित सर्वलेट उच्च पूर्णांक वाले गुणों के साथ लोड किये जाते हैं। कंटेनर उसी load-on-startup मान के साथ सर्वलेट लोड करने का ऑर्डर चुन सकता है।

आप शायद केवल JSR न जांचना चाहते हैं, बल्कि अपने वेब कंटेनर के दस्तावेज़ीकरण भी देखना चाहते हैं। मतभेद हो सकते हैं

संक्षिप्त उत्तर : मान> = 0 का अर्थ है कि वेबलेट तब लगाया जाता है जब सर्वर प्रारंभ होता है या जब सर्विसलेट लोड होती है। मान <0: कंटेनर की तरह महसूस होने पर सर्विसलेट लोड होता है

लंबे समय से उत्तर (युक्ति से):

लोड-ऑन-स्टार्टअप तत्व इंगित करता है कि वेबलेट के स्टार्टअप पर इस सर्विसलेट को लोड किया जाना चाहिए (इंस्टीटिवेटेड और इसकी init () कहा जाता है) इन तत्वों की वैकल्पिक सामग्री एक पूर्णांक होना चाहिए जिसमें वह आदेश दिखाया जाना चाहिए जिसमें सर्वलेट लोड होना चाहिए। यदि मान एक नकारात्मक पूर्णांक है, या तत्व मौजूद नहीं है, तो कंटेनर बिना किसी दायरे को लोड करने के लिए फ्रीलेट को लोड करने के लिए स्वतंत्र है। यदि मान एक सकारात्मक 128 पूर्णांक या 0 है, तो कंटेनर लोड हो रहा है और सर्विसलेट के रूप में आवेदन को तैनात किया जाना चाहिए। कंटेनर को यह सुनिश्चित करना होगा कि कम पूर्णांक के रूप में चिह्नित सर्वलेट उच्च पूर्णांक वाले गुणों के साथ लोड किये जाते हैं। कंटेनर उसी लोड-ऑन-स्टार्ट-अप वैल्यू के साथ सर्वलेटों को लोड करने का ऑर्डर चुन सकता है।

यह इंगित करता है कि जब तक एक अनुरोध उसे एक्सेस करने का प्रयास नहीं करता तब तक सर्विसलेट शुरू नहीं किया जाएगा।

यदि लोड-ऑन-स्टार्टअप शून्य से अधिक या उसके बराबर है तो कंटेनर शुरू होने पर उस सर्विसलेट को स्टार्टअप मान पर लोड के आरोही क्रम में शुरू किया जाएगा (यानी 0, 1 फिर 2, 5 और 10 और इसी तरह) ।

सर्लेट लाइफ साइकल

सर्वलेट का जीवन चक्र कंटेनर द्वारा नियंत्रित किया जाता है जिसमें सर्वलेट तैनात किया गया है। जब एक अनुरोध को सर्वलेट में मैप किया जाता है, तो कंटेनर निम्न चरणों का पालन करता है

  1. यदि सर्वलेट का एक उदाहरण मौजूद नहीं है, तो वेब कंटेनर:

    ए। सर्वलेट वर्ग को लोड करता है

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

    सी। Init पद्धति को कॉल करके सर्वोलेट इंस्टेंस को शुरू करता है (आरंभीकरण को सर्लेट बनाने और आरंभ करने में शामिल किया गया है)

  2. कंटेनर सेवा विधि, अनुरोध और प्रतिक्रिया वस्तुओं को पारित कर देता है। सेवा विधियों लेखन सेवा पद्धतियों में चर्चा की गई है

load-on-startup पर 0 मान का मतलब है कि जब बिंदु उस सेवालेट पर आता है, तो बिंदु 1 निष्पादित किया जाता है। अन्य मूल्यों का मतलब है कि बिंदु 1 को कंटेनर स्टार्टअप पर निष्पादित किया जाता है।

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

  1. यदि मान दो सर्वोलेट के लिए समान है, तो वे उस क्रम में लोड किए जाएंगे, जिस पर वे web.xml फ़ाइल में घोषित किए गए हैं।
  2. यदि कंटेनर को उन्हें लोड करने के लिए लगता है, तो सर्विसलेट से 0 या नकारात्मक पूर्णांक लोड हो जाएगा।
  3. लोडिंग, आरंभीकरण की गारंटी देता है और वेब कंटेनर द्वारा सर्वलेट की init () विधि को कॉल करता है
  4. यदि कोई भी सर्विसलेट के लिए कोई तत्व नहीं है, तब से लोड किया जाएगा जब वेब कंटेनर उन्हें लोड करने का निर्णय लेता है।

हां, यह एक ही मान हो सकता है …. लोड-ऑन-स्टार्टअप के लिए नंबर देने का कारण सर्वर के लिए अनुक्रम को सभी सर्विसलेट लोड करने के लिए परिभाषित करना है। 0 लोड-ऑन-स्टार्टअप मान के साथ सर्वलेट पहले लोड हो जाएगी और उसके बाद लोड हो जाएगी 1 मूल्य के साथ सर्वलेट।

यदि दो सर्विसलेटों को लोड-ऑन-स्टार्टअप के लिए समान मान होगा, तो यह लोड हो जाएगा कि कैसे web.xml में उन्हें ऊपर से नीचे तक घोषित किया जाता है। जो सर्वलेट वेब में पहले आता है। xml पहले लोड हो जाएगा और दूसरा उसके बाद लोड किया जाएगा।

-> (लोड-ऑन-स्टार्ट-अप की अनुपस्थिति) सबसे पहले जब सर्वर में सर्वोलेट तैनात किया जाता है, तो सर्विस ऑब्जेक्ट बनाने के लिए सर्वर की जिम्मेदारी है। उदाहरण: मान लें कि सर्वर में सर्विसलेट तैनात किया गया है, (सर्विस ऑब्जेक्ट सर्वर में उपलब्ध नहीं है) क्लाइंट सबस्टलेट को पहली बार अनुरोध भेजता है तो सर्वर ने सर्वर्सलेट ऑब्जेक्ट को डिफॉल्ट कन्स्ट्रक्टर की मदद से बनाया है और तुरंत कॉन्टैक्ट इनिट () करता है। उस समय से जब ग्राहक केवल अनुरोध भेजता है केवल सेवा विधि निष्पादित हो जाएगी क्योंकि वस्तु पहले ही उपलब्ध है

यदि परिनियोजन डिस्क्रिप्टर में लोड-ऑन-स्टार्ट-अप टैग का उपयोग किया जाता है: तैनाती के समय ही सर्वर टैग के बीच प्रदान किए गए सकारात्मक मान के आधार पर सर्वलेट्स के लिए सर्वलेट ऑब्जेक्ट बनाता है। सर्वलेट कक्षाओं के लिए ऑब्जेक्ट्स का निर्माण 0-128 0 से किया जाएगा। संख्या सबलेट पहले बनाया जाएगा और दूसरे नंबरों के बाद होगा।

यदि हम web.xml में दो सर्विसलेट्स के लिए समान मूल्य प्रदान करते हैं तो वेब.एक्सएमएल में वर्गों की स्थिति के आधार पर ऑब्जेक्ट्स का निर्माण किया जाएगा सर्वर से सर्वर में भी भिन्न होता है

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

अन्य परिदृश्य जहां सर्वर servlet के लिए ऑब्जेक्ट बनाता है

अगर हम web.xml में शुरूआत टैग पर लोड का उपयोग न करते हैं, तो जब भी ग्राहक पहली बार अनुरोध करता है कि सर्वर ऑब्जेक्ट बनाता है और सर्वर अपने जीवन चक्र के तरीकों को कॉल करने के लिए उत्तरदायी है, तो प्रोजेक्ट को तैनात किया जाता है। तब अगर कोई क्लास सर्वर में संशोधित किया गया है (टॉमकैट) फिर क्लाइंट संशोधित सर्वोलेट के लिए अनुरोध भेजता है, लेकिन टॉमकेट के नए ऑब्जेक्ट के मामले में नहीं बनाया जाएगा और सर्वर सर्वर के पुनरारंभ होने तक मौजूदा ऑब्जेक्ट का उपयोग नहीं करेगा। लेकिन वेब-लॉजिक के वर्ग में कभी भी। क्लास फ़ाइल को सर्वर में पुन: आरंभ करने के साथ सर्वर में संशोधित किया जाता है, यदि उसे एक अनुरोध प्राप्त होता है तो सर्वर मौजूदा सर्वोलेट पर नष्ट विधि को कॉल करता है और एक नया सबलेट ऑब्जेक्ट बनाता है और इसके initilization के लिए init () कॉल करता है ।

यदि मान <0 है, तो जब अनुरोध आता है, तो serlet का तत्त्व होता है, else = = 0 कंटेनर मूल्यों के बढ़ते क्रम में लोड होगा। यदि 2 या अधिक सर्विसलेट्स का एक ही मान है, तो web.xml में घोषित सर्वलेटों का क्रम।

सर्वलेट कंटेनर स्टार्टअप के दौरान सर्वोलेट को लोड करता है या जब पहली बार अनुरोध किया जाता है। सर्वलेट का लोडिंग "web.xml" फ़ाइल में विशेषता "लोड-ऑन-स्टार्टअप" पर निर्भर करता है। यदि विशेषता में एक सकारात्मक पूर्णांक है (0 से 128) तो सर्वलेट कंटेनर लोड होने से लोड होता है अन्यथा यह लोड हो जाता है जब पहली बार अनुरोध सेवा के लिए आता है।

जब एक बार अनुरोध प्राप्त होने पर सर्वलेट लोड हो जाती है तो इसे "आलसी लोडिंग" कहा जाता है।

नोट: 0 भी एक सकारात्मक पूर्णांक है

यह सरल है क्योंकि आप अपेक्षा भी नहीं करते हैं।

यदि कंटेनर शुरू होने पर मूल्य सकारात्मक होता है

यदि अनुरोध किया जाता है, तो मूल्य वर्टेलेट से सकारात्मक नहीं होता है।