इस ट्यूटोरियल में, हम JSP के साथ सैंपल प्रोग्राम विकसित कर रहे हैं और MVC आर्किटेक्चर का उपयोग कर रहे हैं।
कार्यक्रम के उदाहरणों के बाद, विकसित किया जाएगा -
- पंजीकरण फॉर्म
- लॉगइन और लॉगआउट फॉर्म
JSP के माध्यम से पंजीकरण फॉर्म का उपयोग करना
पंजीकरण फॉर्म में, हमारे पास सभी विवरणों को भरने के लिए एक फॉर्म होगा जिसमें नाम, उपयोगकर्ता नाम, पासवर्ड, पता, संपर्क नंबर, आदि होंगे।
यह फॉर्म हमें आवेदन के साथ पंजीकरण करने में मदद करेगा। वे हमारे सभी विवरण लेते हैं और इसे डेटाबेस या कैश में संग्रहीत करते हैं।
इस उदाहरण में, हम "गुरु पंजीकरण फॉर्म" लेने जा रहे हैं जिसमें निम्नलिखित क्षेत्र हैं:
- नाम
- उपनाम
- उपयोगकर्ता नाम
- कुंजिका
- पता
- संपर्क संख्या
इन सभी विवरणों को भरने के बाद हमारे पास सबमिट बटन है, उस बटन पर क्लिक करने पर सभी विवरण संग्रहीत हो जाएंगे।
Register_1.jsp
<% @ पृष्ठ भाषा = "जावा" सामग्रीpageEncoding = "ISO-8859-1"%><सिर><मेटा http-equiv = "सामग्री-प्रकार" सामग्री = "पाठ / html; चारसेट = ISO-8859-1"><शीर्षक> गुरु पंजीकरण फॉर्म शीर्षक> head><शरीर>गुरु रजिस्टर फॉर्म h1><फ़ॉर्म कार्रवाई = "गुरु_ग्रिस्टर" विधि = "पोस्ट"> <तालिका शैली = "के साथ: 50%">
पहला नाम td> td> tr> अंतिम नाम td> <इनपुट प्रकार = "पाठ" नाम = "last_name" /> td> tr> उपयोगकर्ता नाम td> <इनपुट प्रकार = "पाठ" नाम = "उपयोगकर्ता नाम" /> td> tr> पासवर्ड td> <इनपुट प्रकार = "पासवर्ड" नाम = "पासवर्ड" /> td> tr> पता td> <इनपुट प्रकार = "पाठ" नाम = "पता" /> td> tr> संपर्क नंबर td> <इनपुट प्रकार = "पाठ" नाम = "संपर्क" /> td> tr> table> <इनपुट प्रकार = "सबमिट करें" मूल्य = "सबमिट करें" /> फार्म> शरीर> html> कोड की व्याख्या:
कोड लाइन 11: यहां हम एक फॉर्म नाम ले रहे हैं, जिसमें एक्शन है यानी सर्वलेट जिसके लिए अनुरोध संसाधित किया जाएगा और सर्वलेट का नाम गुरु_ग्रिस्टर.जवा है। अनुरोध को POST विधि के माध्यम से संसाधित किया जाएगा।
कोड लाइन 14-16: यहां हम इनपुट प्रकार को पाठ के रूप में ले रहे हैं और नाम पहला नाम है
कोड लाइन 18-20: यहां हम इनपुट प्रकार ले रहे हैं क्योंकि टेक्स्ट और नाम अंतिम नाम है
कोड लाइन 22-24: यहां हम इनपुट प्रकार ले रहे हैं क्योंकि टेक्स्ट और नाम उपयोगकर्ता नाम है
कोड लाइन 26-28: यहां हम पासवर्ड के रूप में इनपुट प्रकार ले रहे हैं (यह टाइप किए जाने पर पासवर्ड छिपाएगा) और पासवर्ड के रूप में नाम
कोड लाइन 30-32: यहां हम इनपुट प्रकार को टेक्स्ट और नाम पते के रूप में ले रहे हैं
कोड लाइन 34-36: यहां हम इनपुट प्रकार को टेक्स्ट और नाम को संपर्क के रूप में ले रहे हैं
कोड लाइन 37: यहां हम टाइप सबमिट का बटन ले रहे हैं और मूल्य भी सबमिट है। इस बटन पर क्लिक करने पर कार्रवाई संबंधित गुरु_ग्रिस्टर सर्वलेट में जाएगी जहां अनुरोध में सभी पैरामीटर मान पारित किए जाएंगे।
गुरु_ग्रेस्टर.जावा
पैकेज डिमोटेस्ट;आयात java.io.IOException;आयात javax.servlet.RequestDispatcher;आयात javax.servlet.ServletException;आयात javax.servlet.http.HttpServlet;आयात javax.servlet.http.HttpServletRequest;आयात javax.servlet.http.HttpServletResponse;/ *** सर्वलेट इम्प्लीमेंटेशन क्लास गुरु_ग्रिस्टर* /सार्वजनिक वर्ग के गुरु_ग्रेस्टर का विस्तार HttpServlet {निजी स्थिर अंतिम लंबा सीरियलवर्जनयूआईडी = 1 एल;संरक्षित शून्य doPost (HttpServletRequest अनुरोध, HttpServletResponse प्रतिसाद) ServletException, IOException {फेंकता है// TODO ऑटो-जनरेट विधि ठूंठस्ट्रिंग first_name = request.getParameter ("first_name");स्ट्रिंग last_name = request.getParameter ("last_name");स्ट्रिंग उपयोगकर्ता नाम = request.getParameter ("उपयोगकर्ता नाम");स्ट्रिंग पासवर्ड = request.getParameter ("पासवर्ड");स्ट्रिंग पता = request.getParameter ("पता");स्ट्रिंग संपर्क = request.getParameter ("संपर्क");if (first_name.isEmpty () || last_name.isEmpty () || username.isEmpty () ||password.isEmpty () || address.isEmpty () || contact.isEmpty ()){{RequestDispatcher req = request.getRequestDispatcher ("register_1.jsp");req.include (अनुरोध, प्रतिक्रिया);}अन्य{{RequestDispatcher req = request.getRequestDispatcher ("register_2.jsp");req.forward (अनुरोध, प्रतिक्रिया);}}}कोड की व्याख्या:
कोड लाइन 14: यहाँ हम गुरु_सर्वलेट को परिभाषित कर रहे हैं जो कि HttpServlet का विस्तार कर रहा है।
कोड लाइन 18: यह एक्शन doPost () विधि जिसे हम उपरोक्त JSP फॉर्म में एक्शन विशेषता में POST का उल्लेख करते समय कहा जाएगा।
कोड लाइन 20-25: यहाँ हम अनुरोध से मान प्राप्त कर रहे हैं i.efirst_name, last_name, उपयोगकर्ता नाम, पासवर्ड, पता और request.getParameter का उपयोग करके संपर्क करें।
कोड लाइन 27-32: यहां हम अगर किसी शर्त की जांच कर रहे हैं, जिसमें वे किसी भी पैरामीटर की जांच करते हैं, जो अनुरोध से प्राप्त होते हैं कि वे खाली हैं या नहीं। यदि कोई भी पैरामीटर खाली है तो यह इस स्थिति में प्रवेश करेगा। अनुरोध ऑब्जेक्ट का उपयोग करके RequestDispatcher लाने के लिए जो register_1.jsp के अनुरोध को अग्रेषित करेगा। यहां हम अनुरोध और प्रतिक्रिया ऑब्जेक्ट भी शामिल कर रहे हैं।
कोड लाइन 33-37: यह केस तब निष्पादित होगा जब कोई भी पैरामीटर खाली न हो। हमें अनुरोध ऑब्जेक्ट का उपयोग करके डीडिस्पैक्टर ऑब्जेक्ट लाना होगा, जो कि register_2.jsp के अनुरोध को अग्रेषित करेगा। हम अनुरोध और प्रतिक्रिया ऑब्जेक्ट अग्रेषित कर रहे हैं।
Register_2.jsp
<% @ पृष्ठ भाषा = "जावा" सामग्रीpageEncoding = "ISO-8859-1"%><सिर><मेटा http-equiv = "सामग्री-प्रकार" सामग्री = "पाठ / html; चारसेट = ISO-8859-1"><शीर्षक> गुरु सफलता पृष्ठ शीर्षक> head><शरीर> आपका स्वागत है उपयोगकर्ता !!!! b> शरीर> html>कोड की व्याख्या:
कोड लाइन 10: यहां हम स्वागत करने वाले उपयोगकर्ता कह रहे हैं। यह JSP तब कहा जाएगा जब सभी पैरामीटर भरे जाएंगे।
जब आप उपरोक्त कोड निष्पादित करते हैं, तो आपको निम्न आउटपुट मिलते हैं:
आउटपुट:
जब हम register_1.jsp पर क्लिक करते हैं, तो हमें एक फॉर्म मिलेगा जिसमें पहले नाम, अंतिम नाम, उपयोगकर्ता नाम, पासवर्ड, पता, संपर्क जैसे विवरण होंगे। सभी विवरण भरे गए हैं। जब हम सबमिट बटन पर क्लिक करते हैं तो हमें "वेलकम यूजर" के रूप में संदेश मिलता है।
लॉगइन और लॉगआउट फॉर्म
पंजीकरण फॉर्म की तरह हमारे पास एक लॉगिन और लॉगआउट फॉर्म होगा।
इस उदाहरण में, हमने लॉगिन फॉर्म लिया है जहां हमारे पास सबमिट बटन के साथ दो फ़ील्ड "उपयोगकर्ता नाम" और "पासवर्ड" है।
जब हम सबमिट बटन पर क्लिक करते हैं तो हमें लॉगआउट बटन के साथ स्वागत संदेश मिलता है।
जब हम लॉगआउट बटन पर क्लिक करते हैं तो हम लॉगिन फॉर्म में वापस आ जाते हैं।
रजिस्टर_3.jsp
<% @ पृष्ठ भाषा = "जावा" सामग्रीpageEncoding = "ISO-8859-1"%><सिर><मेटा http-equiv = "सामग्री-प्रकार" सामग्री = "पाठ / html; चारसेट = ISO-8859-1"><शीर्षक> गुरु लॉगिन फ़ॉर्म शीर्षक> head><शरीर><फ़ॉर्म कार्रवाई = "गुरु_लगिनी" विधि = "पद"> <तालिका शैली = "के साथ: 50%">उपयोगकर्ता नाम td> <इनपुट प्रकार = "पाठ" नाम = "उपयोगकर्ता नाम" /> td> tr> पासवर्ड td> <इनपुट प्रकार = "पासवर्ड" नाम = "पासवर्ड" /> td> tr> तालिका> <इनपुट प्रकार = "सबमिट" मान = "लॉगिन" /> फ़ॉर्म> शरीर> html> कोड की व्याख्या:
कोड लाइन 10: यहां हम एक फॉर्म का नाम ले रहे हैं, जिसमें एक्शन यानी सर्वलेट है, जो गुरु_लगिन.जवा है। वह विधि जिसके माध्यम से वह अपना POST पास करेगा।
कोड लाइन 13-16: यहां हम एक इनपुट फ़ील्ड "यूज़रनेम" ले रहे हैं जो कि टाइप टेक्स्ट का है।
कोड लाइन 17-20: यहां हम एक इनपुट फील्ड "पासवर्ड" ले रहे हैं, जो टाइप पासवर्ड का है।
कोड लाइन 22: यहां हम "लॉगिन" मान के साथ एक "सबमिट" बटन ले रहे हैं, जिस पर हम क्लिक करते हैं, फिर यह सर्वलेट गुरु_लगिनी में जाता है, जहां दोनों फ़ील्ड अनुरोध ऑब्जेक्ट का उपयोग करके ली जाती हैं।
गुरु_लगिनी.जावा (सर्वलेट)
पैकेज डिमोटेस्ट;आयात java.io.IOException;आयात javax.servlet.RequestDispatcher;आयात javax.servlet.ServletException;आयात javax.servlet.http.HttpServlet;आयात javax.servlet.http.HttpServletRequest;आयात javax.servlet.http.HttpServletResponse;/ *** सर्वलेट इम्प्लीमेंटेशन क्लास गुरु_लगिन* /पब्लिक क्लास गुरु_लगिनी का विस्तार HttpServlet {सार्वजनिक गुरु_लोगिन () {सुपर();// TODO ऑटो-जनरेट कंस्ट्रक्टर स्टब}संरक्षित शून्य doPost (HttpServletRequest अनुरोध, HttpServletResponse प्रतिसाद) ServletException, IOException {फेंकता है// TODO ऑटो-जनरेट विधि ठूंठस्ट्रिंग उपयोगकर्ता नाम = request.getParameter ("उपयोगकर्ता नाम");स्ट्रिंग पासवर्ड = request.getParameter ("पासवर्ड");if (username.isEmpty () || password.isEmpty ()){{RequestDispatcher req = request.getRequestDispatcher ("register_3.jsp");req.include (अनुरोध, प्रतिक्रिया);}अन्य{{RequestDispatcher req = request.getRequestDispatcher ("register_4.jsp");req.forward (अनुरोध, प्रतिक्रिया);}}}कोड की व्याख्या:
कोड लाइन 5-9: यहां हम कोड में आवश्यक आयात कर रहे हैं।
कोड लाइन 14: यहाँ हम गुरु_लगिन सर्वलेट ले रहे हैं जो कि HttpServlet का विस्तार करता है।
कोड लाइन 21: यहां हम doPost () विधि का उपयोग कर रहे हैं, जैसा कि हम POST विधि का उपयोग कर रहे हैं।
कोड लाइन 23-24: यहां हम अनुरोध ऑब्जेक्ट यानी उपयोगकर्ता नाम और पासवर्ड का उपयोग करके पैरामीटर ले रहे हैं।
कोड लाइन 25-29: इस तरह, हम "if" कंडीशन ले रहे हैं, जहाँ हम यूज़रनेम और पासवर्ड चेक कर रहे हैं कि वे खाली हैं या नहीं। इस मामले में अगर वह खाली है तो हमें requestdispatcher ऑब्जेक्ट मिल रहा है, जो register_3.jsp को फॉरवर्ड करता है अनुरोध और प्रतिक्रिया वस्तुओं के साथ।
कोड लाइन 30-34: यह निष्पादित किया जाएगा यदि दोनों खाली नहीं हैं तो यह अनुरोध और प्रतिक्रिया वस्तुओं के साथ register_4.jsp करने के लिए अनुरोध को आगे बढ़ाता है।
रजिस्टर_4.jsp
<% @ पृष्ठ भाषा = "जावा" सामग्रीpageEncoding = "ISO-8859-1"%><सिर><मेटा http-equiv = "सामग्री-प्रकार" सामग्री = "पाठ / html; चारसेट = ISO-8859-1"><शीर्षक> गुरु लॉग इन शीर्षक> head><शरीर> <तालिका शैली = "के साथ: 50%"><% स्ट्रिंग उपयोगकर्ता नाम = request.getParameter ("उपयोगकर्ता नाम"); %> आपका स्वागत है <% out.println (उपयोगकर्ता नाम); %> उपयोगकर्ता !!!! आपने लॉग इन किया है। td> tr> tr> td> td> लॉगआउट b> < / td> tr> तालिका> शरीर> html> कोड की व्याख्या:
कोड लाइन 12: यहां हमें स्ट्रिंग ऑब्जेक्ट उपयोगकर्ता नाम में अनुरोध ऑब्जेक्ट से "उपयोगकर्ता नाम" मिल रहा है।
कोड लाइन 13: यहां हमारे पास उपयोगकर्ता नाम के साथ एक स्वागत योग्य संदेश है।
कोड लाइन 14: यहां हम उस फॉर्म को लॉगआउट करने के लिए लिंक करते हैं जो register_3.jsp पर रीडायरेक्ट करता है।
जब आप उपरोक्त कोड निष्पादित करते हैं तो आपको निम्न आउटपुट मिलते हैं:
आउटपुट:
यहां जब हम register_3.jsp पर क्लिक करते हैं तो हमें एक लॉगिन बटन के साथ दो फ़ील्ड "यूज़रनेम" और "पासवर्ड" मिलते हैं।
लॉग इन बटन पर क्लिक करने के बाद आपको लॉगआउट के बटन के साथ नीचे का संदेश मिलता है।
जब आप लॉगआउट बटन पर क्लिक करते हैं तो आप लॉगिन पेज पर वापस जाते हैं