Java-Business-Application/C2/Database-and-validation/Hindi

From Script | Spoken-Tutorial
Revision as of 16:53, 31 December 2014 by Sakinashaikh (Talk | contribs)

Jump to: navigation, search
Time Narration
00:01 Database and validation के स्पोकन ट्यूटोरियल में आपका स्वागत है।
00:06 इस ट्यूटोरियल में निम्न के बारे में सीखेंगे :
00:08 डेटाबेस के साथ इन्टरैक्ट करना
00:10 फ़ील्ड्स को वैलिडेट करना
00:12 यहाँ मैं उपयोग कर रहा हूँ,
00:13 'उबन्टु वर्जन 12.04'
00:15 'नेटबीन्स IDE 7.3'
00:19 'JDK 1.7'
00:21 'फायरफॉक्स' वेब ब्राउज़र 21.0
00:24 आप अपनी पसंद का कोई भी वेब ब्राउज़र उपयोग कर सकते हैं।
00:28 इस ट्यूटोरियल के अनुसरण के लिए आपको निम्न का ज्ञान होना ज़रूरी है
00:31 Java Servlets के बेसिक्स और JSPs
00:35 'नेटबीन्स IDE' से 'MySQL डेटाबेस' को जोड़ना
00:39 'डेटाबेस' और 'टेबल्स' बनाना।
00:42 यदि नहीं, तो सम्बंधित ट्यूटोरियल्स के लिए कृपया हमारी वेबसाइट पर जाएँ।
00:47 अब, 'नेटबीन्स IDE' पर जाते हैं।
00:52 मैंने 'MySQL सर्वर' शुरू कर दिया है।
00:55 मैंने इसमें 'लाइब्रेरी' नामक एक डेटाबेस बना लिया है।
01:00 मैंने इसमें 'यूज़र्स' नामक एक टेबल बना ली है।
01:04 मैंने पहले से ही इस टेबल में कुछ वैल्यूज डाल दी हैं।
01:08 मैं अभी उन्हें दर्शाउंगा।
01:10 इसके लिए, 'यूज़र्स' पर राइट क्लिक करें और 'व्यू डेटा' पर क्लिक करें।
01:15 नीचे 'आउटपुट' बटन पर क्लिक करें।
01:19 हम देख सकते हैं कि यहाँ '15 यूज़र्स' हैं।
01:23 हम 'फर्स्टनेम', 'सरनेम', 'एज', 'जेंडर', ईमेल', 'यूज़रनेम' और 'पासवर्ड' देख सकते हैं।
01:31 अब, हम 'JDBC' ड्राइवर को लोड करते हैं जो 'Java Database Connectivity Driver' है।
01:39 इसके लिए, 'प्रोजेक्ट्स' टैब पर क्लिक करें।
01:42 'लाइब्रेरीज़' पर राइट क्लिक करें और 'ऐड लाइब्रेरी' पर क्लिक करें।
01:46 फिर 'MySQL JDBC ड्राइवर' पर क्लिक करें।
01:50 और 'ऐड लाइब्रेरी' पर क्लिक करें।
01:53 यह उस 'JDBC ड्राइवर' को लोड करेगा।
01:56 अब 'प्रोजेक्ट' को रन करें जैसा हमने पहले किया था।
02:00 अब, 'यूज़रनेम' में टाइप करें 'arya' और 'पासवर्ड' मे टाइप करें 'arya123*'
02:06 फिर 'Sign In' क्लिक करें।
02:08 हम 'Success Greeting' पेज देख सकते हैं।
02:12 लॉगआउट करने के लिए 'here' पर क्लिक करें।
02:15 अब, वापस IDE पर जाते हैं।
02:17 हम 'Greeting servlet' डॉट 'java' पर जायेंगे।
02:21 'doPost' मेथड पर आएं
02:23 पहले, हमें 'getParameter मेथड' का उपयोग करके 'request' से 'यूज़रनेम' और 'पासवर्ड' मिलता है।
02:31 आगे हम 'JDBC कनेक्शन' के लिए कोड देखेंगे।
02:35 हमने 'Connection object, PreparedStatement object' और 'Resultset object' को 'null' से इनिशिअलाइज़ किया।
02:44 फिर हम 'ड्राइवर' को अपने 'प्रोग्राम' में 'रजिस्टर' करते हैं।
02:48 फिर हम 'डेटाबेस' तक एक कनेक्शन बनाते हैं।
02:52 फिर, हम 'prepareStatement मेथड' को 'कनेक्शन ऑब्जेक्ट' पर निष्पादित करते हैं।
02:58 हम 'यूज़र्स टेबल' से 'यूज़र डिटेल्स' प्राप्त करने के लिए, पूछताछ करते हैं।
03:03 हम जांचते हैं, कि 'यूज़रनेम' और 'पासवर्ड' वही हैं जिसे फॉर्म में प्रविष्ट किये गए हैं।
03:09 यहाँ, क्वेश्चन मार्क डेटाबेस में प्रत्येक फील्ड को दर्शाता है।
03:15 क्वेश्चन मार्क की जगह वैल्यू देने के लिए, हम 'setString मेथड' को निष्पादित करते हैं।
03:22 हम ऐसा 'PreparedStatement object' प्रयोग करके करते हैं।
03:26 फिर हम 'Prepared statement' ऑब्जेक्ट पर 'executeQuery मेथड' को निष्पादित करते हैं।
03:33 हम परिणाम को 'ResultSet' ऑब्जेक्ट में संचित करते हैं।
03:37 सफल login के लिए, हम 'successGreeting page' प्रदर्शित करते हैं।
03:43 इसके लिए, हम 'RequestDispatcher interface' प्रयोग करते हैं।
03:48 हम 'request' पर 'RequestDispatcher object' प्राप्त करने के लिए 'getRequestDispatcher मेथड' प्रयोग करते हैं।
03:56 हम फिर 'RequestDispatcher' ऑब्जेक्ट पर 'forward method' उपयोग करते हैं।
04:02 इस तरह, हम 'successGreeting' डॉट jsp की ओर फॉरवर्ड करते हैं।
04:07 अब स्लाइड्स पर वापस आते हैं।
04:10 अब 'RequestDispatcher interface' के बारे में कुछ सीखते हैं।
04:15 यह इंटरफ़ेस 'request' को अन्य रिसोर्स पर प्रेषित करने के लिए सुविधा देता है।
04:22 यह रिसोर्स html, सर्वलेट या jsp हो सकता है।
04:26 अब वापस IDE पर आते हैं।
04:29 अब 'successGreeting' डॉट 'jsp' पर आते हैं।
04:33 यहाँ, हम सक्सेस मैसेज 'You have successfully logged in' प्रदर्शित कर रहे हैं।
04:38 अब, 'ब्राउज़र' पर वापस आते हैं।
04:41 'यूज़रनेम' और 'पासवर्ड' टाइप करें, जो हमने 'डेटाबेस' में सम्मिलित नहीं किया है।
04:47 अतः, मैं 'यूज़रनेम' में 'abc' और 'पासवर्ड' में 'abc123*' टाइप करता हूँ।
04:56 फिर 'Sign In' पर क्लिक करें।
04:59 हम देख सकते हैं कि हमें उसी पेज पर 'एरर मैसेज' प्राप्त होता है
05:03 'Please correct the following error!!! Invalid username or password'।
05:09 अब, इसके लिए कोड देखते हैं।
05:12 अतः, 'IDE' पर वापस आते हैं।
05:14 'GreetingServlet' डॉट 'java' पर जाते हैं।
05:17 अगर वैलडैशन असफल होता है, तो हमें 'एरर मैसेजेस' प्रदर्शित करने चाहिए।
05:22 पहले हमने एरर मैसेजेस की सूची को इनिशिअलाइज़ किया है।
05:27 हम 'setAttribute' मेथड उपयोग करके 'request scope' में वेरिएबल 'एरर मैसेजेस' सेट करते हैं
05:35 यहाँ, 'एरर मैसेजेस' 'attribute name' हैं।
05:39 हमने एक 'स्ट्रिंग वेरिएबल id' को 'null' से इनिशिअलाइज़ किया है।
05:44 फिर, अगर 'यूज़र' 'डेटाबेस' में रहता है तो हम जांचते हैं।
05:48 यदि हाँ, तो हम वैल्यू को वेरिएबल 'id' में संचित करते हैं।
05:53 नहीं तो, हम 'एरर Msgs' लिस्ट में एरर 'इनवैलिड' 'यूज़रनेम' या 'पासवर्ड' को जोड़ते हैं।
06:00 यदि 'एरर Msgs लिस्ट' खाली नहीं है, तो हम 'एरर मैसेज' को 'index' डॉट 'jsp' पर प्रदर्शित करते हैं।
06:09 अतः, हमें 'index' डॉट 'jsp' पर जाना है।
06:13 हमने पहले ही देखा है कि 'RequestDispatcher' को उपयोग करके अन्य पेज पर कैसे जाना हैं।
06:20 ध्यान दें कि 'एक्सेप्शन' के अवस्था का संचलन करने के लिए हमने इस कोड को 'try catch block' में सम्मिलित कर लिया है।
06:27 अब, हम देखेंगे कि 'एरर Msgs' वेरिएबल को 'index' डॉट 'jsp' में कैसे लाते हैं।
06:34 पहले, हम 'attribute errorMsgs' की वैल्यू प्राप्त करते हैं।
06:38 यह 'request' पर 'getAttribute मेथड' उपयोग करके किया गया है।
06:44 ध्यान दें कि हमने 'Java code' को ओपनिंग टैग्स जो हैं 'लैस दैन साइन परसेंटेज साइन' और 'क्लोजिंग टैग परसेंटेज साइन और ग्रेटर दैन साइन' में सम्मिलित कर दिया है। '
06:57 कोड के इस ब्लॉक को 'scriptlet' कहते हैं।
07:02 इसमें 'java code' है जो हर बार निष्पादित होता है जब 'JSP' का उपयोग किया जाता है।
07:08 अगर 'error Msgs' की वैल्यू null नहीं है तो हम यह मैसेज प्रदर्शित करते हैं
07:15 'Please correct the following errors'
07:18 फिर हम 'एरर Msgs' की पूरी लिस्ट से होकर दोहराते हैं।
07:23 हम फिर 'एरर मैसेजेस' को 'लिस्ट' की तरह दर्शाते हैं।
07:27 इस प्रकार हम 'एरर मैसेजेस' को 'index डॉट jsp' पर प्रदर्शित करते हैं।
07:32 अब, देखें कि 'यूज़र' को 'डेटाबेस' में कैसे जोड़ते हैं।
07:37 'डेटाबेस' में 'यूज़र' को जोड़ने से पहले, हमें 'यूज़र टेबल' के लिए एक 'model' बनाना पड़ता है।
07:44 अब, देखते हैं की 'model' क्या है ?
07:48 एक 'model'
07:49 'सॉफ्टवेयर एप्लीकेशन' में अन्तर्निहित (underlying) डेटा के लॉजिकल स्ट्रक्चर को दर्शाता है।
07:55 एट्रिब्यूट्स के साथ एक 'java class' और उनके लिए 'setters' और ' getters'
08:00 इस प्रकार, हम 'model' को व्यक्तिगत विशेषता के बजाय सम्पूर्ण की तरह मानते हैं।
08:07 अब, 'नेटबीन्स IDE' पर वापस जाते हैं।
08:11 मैंने 'यूज़र डॉट java' मेथड पहले ही बना लिया है।
08:16 ध्यान दें, हमने यह 'Java क्लास' 'package org डॉट स्पोकन ट्यूटोरियल डॉट मॉडल' में बनाया है।
08:24 हमारे पास निम्न ऐट्रिब्यूट्स 'firstName, surname, age, gender, email, username, password' हैं।
08:33 हमने उन्हें खाली वैल्यूज को इनिशिअलाइज़ किया है।
08:37 फिर हमारे पास 'parameterized constructor' है।
08:41 हमारे पास 'default constructor' भी है।
08:44 हम 'getFirstName method' को परिभाषित करते हैं।
08:47 हम 'setFirstName method' को भी परिभाषित करते हैं।
08:51 इसी प्रकार हम 'set' और 'get मेथड्स' को प्रत्येक ऐट्रिब्यूट्स पर परिभाषित करते हैं।
08:57 'ब्राउज़र' पर वापस आते हैं।
08:59 अब, 'रजिस्टर' करने के लिए 'here link' पर क्लिक करें।
09:03 'Registration पेज' में सारी फ़ील्ड्स टाइप करें।
09:07 फिर 'Add User' पर क्लिक करें।
09:10 हमे 'Add User Success Page' मिलता है।
09:14 हमें 'Your request to add harshita was successful' मैसेज मिलता है।
09:20 यहाँ 'harshita' 'username' था जो हमने दिया था।
09:24 अब, देखते हैं यह कैसे हुआ।
09:28 अतः 'IDE' पर वापस आते हैं।
09:30 'AddUserServlet' 'डॉट' 'java' पर जाएँ।
09:35 स्टेप्स समान हैं, जैसा हमने 'GreetingServlet' डॉट 'java' में पालन की थीं।
09:40 पहले हमें 'getParameter method' प्रयोग करके 'form parameters' प्राप्त होता है।
09:46 व्यक्तिगत ऐट्रिब्यूट्स के साथ 'User Model' के 'Instance' की तरह हम वेरिएबल 'यूजर' को इनिशिअलाइज़ करते हैं।
09:53 'setAttribute मेथड' प्रयोग करके 'request scope' में हम वेरिएबल 'यूज़र' को सेट करते हैं।
10:01 अगर 'फॉर्म' भरते समय कोई एरर नहीं है, तो यूज़र टेबल में वैल्यूज डालने के लिए हम प्रश्न को निष्पादित करते हैं।
10:10 फिर हम 'success user page' की तरह फॉरवर्ड होते हैं।
10:15 अब, 'successUser' डॉट 'jsp' पर आते हैं।
10:19 पहले, हमने 'User' डॉट 'java' को इम्पोर्ट किया है।
10:24 कोड की इस लाइन को 'JSP इन directive' कहते हैं।
10:28 'JSP directive' 'ओपनिंग टैग लैस दैन साइन परसेंटेज साइन औए एट द रेट साइन' के साथ शुरू होता है और 'क्लोजिंग टैग परसेंटेज साइन औए ग्रेटर दैन साइन' के साथ समाप्त होता है।
10:42 यह वाला 'पेज directive' है।
10:45 'पेज directive' सारे इम्पोर्ट किये हुए 'पैकेजेस' की सूची रखता है।
10:50 हमें एट्रिब्यूट 'यूज़र' की वैल्यू प्राप्त होती है और इसे 'User object' की तरह संचित करते हैं।
10:57 फिर, हमारे पास यहाँ 'success message' है।
11:00 यहाँ, हमने 'यूज़रनेम' पता लगा लिया है।
11:04 हमने 'request object' पर 'getUsername() method' उपयोग किया है।
11:09 'scriptlet tags' प्रयोग करके हमने यह किया।
11:12 अब, ब्राउज़र पर वापस आते हैं।
11:15 पहले से ही डेटाबेस में उपस्थित 'यूज़र' को हम जोड़ने की कोशिश करेंगे।
11:20 अतः, मैं दोबारा 'harshita' को जोड़ने की कोशिश करुँगा।
11:24 हम देख सकते हैं कि हमें एक एरर मैसेज प्राप्त होता है 'Please correct the following errors!!1 Duplicate entry 'harshita' for key username.
11:33 अब, एक बार फिर यूज़र के लिए रजिस्टर करते हैं।
11:37 यहाँ, मैंने अभी एक फॉर्म भर दिया है।
11:40 मैंने 'Age' फील्ड में एक गलती उत्पन्न की है।
11:44 मैंने एक वैलिड नंबर के बजाय 'ab' टाइप किया है।
11:48 अब, 'Add User' पर क्लिक करें।
11:51 हम देखते हैं हमें एक एरर मैसेज मिलता है 'The age must be a positive integer'.
11:57 अब, देखते हैं कि यह कैसे हुआ ?
12:00 'IDE' पर वापस आते हैं।
12:03 'AddUserServlet' डॉट 'java' खोलें।
12:08 यहाँ भी हम 'एरर Msgs' की 'लिस्ट' देखेंगे।
12:11 फिर हम 'setAttribute मेथड' प्रयोग करके 'request scope' में वेरिएबल 'एरर Msgs' सेट करते हैं।
12:18 फिर, हमने 'इंटीजर' टाइप का 'ageUser' घोषित किया और हमने इसे -1 से इनिशलाइज़ किया।
12:26 'try catch block' के अंदर हमने 'parseInt मेथड' प्रयोग किया।
12:31 यह इंटीजर देगा, जबकि नंबर का स्ट्रिंग प्रदर्शन इनपुट की तरह हो।
12:37 यहाँ हमने यह वैलिडेट किया कि 'age' फील्ड वैलिड पॉजिटिव इंटीजर रखता है।
12:44 अगर वैलिडैशन असफल होता है, तो हम 'errorMsgs list' में एरर मैसेज जोड़ते हैं।
12:51 ऐज पॉजिटिव इंटीजर होनी चाहिए।
12:54 उसी प्रकार हमें यह वैलिडेट करना है कि अन्य सभी फ़ील्ड्स भी वैलिड डेटा रखती हैं।
13:01 अगर एररMsgs लिस्ट खाली नहीं है, तो हम 'addUser' डॉट 'jsp' पर ही 'errorMsgs' प्रदर्शित करेंगे।
13:09 हमने यह भी देखा कि 'RequestDispatcher' प्रयोग करके यह कैसे होता है।
13:15 अब, 'addUser' डॉट 'jsp' पर आते हैं।
13:19 यहाँ भी, पहले हमने 'user डॉट java' इंपोर्ट किया।
13:24 'scriptlet tags' में हमने 'यूज़र' टाइप का 'ऑब्जेक्ट' बनाया है।
13:31 फिर हमें 'getAttribute मेथड' प्रयोग करके एट्रिब्यूट की वैल्यू 'errorMsgs' प्राप्त होती है।
13:38 हम जांचते हैं कि यह वैल्यू 'null' के बराबर है या नहीं।
13:43 यदि यह 'null' के बराबर नहीं है, तो हम एक एरर मैसेज, जैसा हमने 'index' डॉट 'jsp' के लिए किया था, प्रदर्शित करते हैं।
13:51 यदि नहीं, तो 'User model' प्रयोग करके हमें एट्रिब्यूट 'user from request' की वैल्यू प्राप्त होगी।
13:59 फिर हमारे पास 'फॉर्म' है।
14:01 'फॉर्म टैग' 'AddUserServlet' की तरह 'action' और 'POST' की तरह 'मेथड' रखती है।
14:07 पहली फील्ड 'text' की तरह 'इनपुट टाइप' का 'First Name' है , 'fiirstName' की तरह 'Name' और 'user' डॉट 'getFirstName' की तरह 'value'
14:18 यहाँ, हम 'fiirstName' की वैल्यू को खाली स्ट्रिंग से इनिशिअलाइज़ कर रहे हैं।
14:24 इसी प्रकार आपको अन्य फ़ील्ड्स के लिए करना है।
14:28 हमारे पास 'submit' बटन और 'Add User' की तरह वैल्यू भी है
14:33 इस प्रकार हम 'addUser.jsp' में फ़ील्ड्स को वैलिडेट करते हैं।
14:38 आप 'Add User page' पर भिन्न एरर्स को करके देख सकते हैं।
14:42 अब, देखते हैं कि यूज़र 'harshita' 'डेटाबेस' में जोड़ी गयी है।
14:49 यूज़र टेबल पर वापस आते हैं। हम देख सकते हैं कि 'harshita' 'डेटाबेस में जोड़ी जा चुकी है।
14:56 इस ट्यूटोरियल में हमने सीखा
14:58 'डेटाबेस कनेक्टिविटी' और
15:00 'फील्ड वैलिडैशन' .
15:02 स्पोकन ट्यूटोरियल प्रोजेक्ट के बारे में अधिक जानने के लिए, निम्न लिंक पर उपलब्ध विडिओ देखें।
15:07 यह स्पोकन ट्यूटोरियल प्रोजेक्ट को सारांशित करता है।
15:11 यदि आपके पास अच्छी बैंडविड्थ नहीं है तो आप इसे डाउनलोड करके भी देख सकते हैं।
15:15 स्पोकन ट्यूटोरियल प्रोजेक्ट टीम
15:17 स्पोकन ट्यूटोरियल्स का उपयोग करके कार्यशालाएं भी चलाती है।
15:20 ऑनलाइन टेस्ट पास करने वालों को प्रमाणपत्र भी देते हैं।
15:23 अधिक जानकारी के लिए, कृपया contact at spoken hyphen tutorial dot org पर लिखें।
15:29 स्पोकन ट्यूटोरियल प्रोजेक्ट टॉक-टू-अ टीचर प्रोजेक्ट का हिस्सा है।
15:32 यह भारत सरकार के एम एच आर डी के आई सी टी के माध्यम से राष्ट्रीय साक्षरता मिशन द्वारा समर्थित है।
15:38 इस मिशन पर अधिक जानकारी http://spoken-tutorial.org/NMEICT- Intro पर उपलब्ध है।
15:48 लाइब्रेरी मैनेजमेंट सिस्टम' अग्रणी सॉफ्टवेयर 'MNC' के 'कॉर्पोरेट सोशल रेस्पोंसिबिलिटी' कार्यक्रम के अंतर्गत योगदान दिया गया है।
15:57 इस स्पोकन ट्यूटोरियल के लिए उन्होंने इस विषय वस्तु की पुष्टि भी की है।
16:02 मैं यश वोरा आपसे विदा लेता हूँ।हमसे जुड़ने के लिए धन्यवाद।

Contributors and Content Editors

Devraj, Sakinashaikh, Shruti arya