service() प्रणाली के अंतर्गत आता है GenericServlet का उपयोग करना चाहिए और प्रोटोकॉल इस तरह के किसी भी प्रकार का समर्थन करने के अतिभारित किया जा सकता एचटीपी, एफटीपी आदि
फिर आपके पास एचटीपीप्रोटोकॉल को संभालने के लिए विशेष सर्लेट है, हम इसे एचटीपीएसआरलेट कहते हैं। HttpServlet सेवा() और doGet() और doPost() विधियों के लिए डिफ़ॉल्ट कार्यान्वयन भी प्रदान करता है।
क्यों हम service() प्रणाली पर हावी नहीं होना चाहिए?
के बाद से यह सेवा विधि ओवरराइड करने के लिए एक अच्छा अभ्यास नहीं है। अगर हम किसी भी doxxx विधि को कॉल करते हैं तो आंतरिक रूप से यह HttpServlet की सेवा विधि को कॉल करेगा। इसलिए आपको इसे स्पष्ट रूप से कॉल करने की आवश्यकता नहीं है।सेवा का निष्पादन() की
आदेश:
सेवा (ServletRequest, ServletResponse) ->
-> कॉल
-> सेवा (HttpServletRequest अनुरोध, HttpServletResponse रिज़ोल्यूशन)
-> कॉल
-> doGet/doPost (HttpServletRequest अनुरोध, HttpServletRespo
protected void service(HttpServletRequest req, HttpServletResponse resp) {
String method = req.getMethod();
if (method.equals(METHOD_GET)) {
doGet(req, resp);
} else if (method.equals(METHOD_HEAD)) {
doHead(req, resp);
} else if (method.equals(METHOD_POST)) {
doPost(req, resp);
} else if (method.equals(METHOD_PUT)) {
doPut(req, resp);
} else if (method.equals(METHOD_DELETE)) {
doDelete(req, resp);
} else if (method.equals(METHOD_OPTIONS)) {
doOptions(req,resp);
} else if (method.equals(METHOD_TRACE)) {
doTrace(req,resp);
} else {
resp.sendError(HttpServletResponse.SC_NOT_IMPLEMENTED, errMsg);
}}
कार्यान्वयन अतः समुदाय से टोमाज़ Nurkiewicz द्वारा दिए गए कोड केवल Overriding Service Method
मैं नहीं होगा: एनएसई रिज़ोल्यूशन)
इस तरह आप के मामले में सेवा ओवरराइड कर सकते हैं आप करना चाहते हैं आश्चर्यचकित है कि पुस्तक सिर्फ एक सर्वलेट का उपयोग करने के विभिन्न तरीकों के उदाहरण दिखाने की कोशिश कर रही थी, जैसा कि "आपको ऐसा करना चाहिए, या ऐसा करना चाहिए।" क्योंकि वास्तव में, यदि आप एक गंभीर ऐप विकसित कर रहे हैं, तो आप अंततः सर्वलेट स्तर पर चीजों को लागू करने के बजाय एमवीसी ढांचे (जैसे स्ट्रूट्स, स्प्रिंग या विकेट) का अध्ययन और कार्यान्वयन करना चाहते हैं। (भविष्य के पढ़ने के लिए बस एक सुझाव।) – Marvo