[DAY 40-74] Spring Boot 4 Project Course | Build Fitness Tracker with Spring Security, JWT & Docker — Transcript
Full transcript
- 0:00हेलो दोस्तों, कैसे हैं आप सभी? तो
- 0:03दोस्तों, सबसे पहले तो कमेंट्स में आप
- 0:06अपना अटेंडेंस मार्क कर लीजिए और मुझे
- 0:08बताइए आप कहां से हो, क्या करते हो और यह
- 0:11वीडियो क्यों देख रहे हो और अटेंडेंस
- 0:14लगाना जरूरी है। यह मैंडेटरी स्टेप है।
- 0:16ठीक है? इससे मुझे पता चलेगा कि कितने लोग
- 0:18इस कोर्स को सीरियसली देख रहे हैं। और
- 0:22वीडियो को शुरू करने से पहले मैं आपको बता
- 0:25दूं। देखिए टाइटल तो आपने देख लिया होगा।
- 0:27लेकिन मैं बता दूं आपको यह एक प्रोजेक्ट
- 0:29बेस्ड कोर्स है स्प्रिंग बूट का जिसमें हम
- 0:32स्प्रिंग बूट प्रोजेक्ट बनाएंगे एंड टू
- 0:34एंड और उसको एक लाइव क्लाउड सर्वर पे
- 0:37डिप्लॉय भी करेंगे और डिप्लॉयमेंट का कोई
- 0:39चार्ज नहीं है। मैं आपको ऐसे तरीके
- 0:41दिखाऊंगा जिसके जरिए आप अपनी एप्लीकेशन को
- 0:43यही एप्लीकेशन नहीं कोई भी एप्लीकेशन को
- 0:45फ्री में डिप्लॉय भी कर सकते हो। ठीक है?
- 0:47तो इस कोर्स में आपको काफी कुछ सीखने
- 0:50मिलेगा। अगर आपको स्प्रिंग बूट पहले से
- 0:51आता है तो भी यह वीडियो आपके लिए
- 0:54वैल्यूुएबल रहेंगी। आपको काफी सारी चीजें
- 0:56समझ में आएंगी। आपको क्यों करनी है, कैसे
- 0:58करनी है और हम क्या-क्या करने वाले हैं वो
- 1:02सब कुछ आपको तो टाइम स्टैंप पे दिखाई देगा
- 1:03और मैं आगे भी आपको बताऊंगा। आप स्क्रीन
- 1:05पे भी देख सकते हो। ठीक है? तो देखिए
- 1:08दोस्तों सबसे पहले तो इस कोर्स की लोग
- 1:10कहते हैं कि ये कोर्स फ्री है लेकिन फ्री
- 1:12नहीं है। यहां पर लाइक, कमेंट,
- 1:13सब्सक्राइब, बेल नोटिफिकेशन ऑन तो करना ही
- 1:15है। मैं देख रहा हूं मोस्ट ज्यादा से
- 1:18ज्यादा लोग जो मेरा वीडियो देखते हैं वो
- 1:20लोग सब्सक्राइब नहीं है। ठीक है? कि
- 1:22अनसस्क्राइबर से ज्यादा मुझे व्यूज बहुत
- 1:24आते हैं। तो पता नहीं क्यों और रिटर्निंग
- 1:27व्यूअर्स भी ज्यादा है। इसका मतलब मेरे जो
- 1:30यूज़र्स हैं जो व्यूअर्स हैं उन्हें मेरे
- 1:32वीडियोस पसंद है। इसीलिए मेरे चैनल पर
- 1:34बार-बार आते हैं। लेकिन सब्सक्राइब बटन
- 1:35दबाना भूल गए। तो याद दिलाना चाहूंगा
- 1:37लाइक, सब्सक्राइब, कमेंट, बेल नोटिफिकेशन
- 1:39ऑन, सब्सक्राइब तो जरूर कीजिए। बेल
- 1:41नोटिफिकेशन ऑन रखिए ताकि ऐसे कोर्सेस, ऐसे
- 1:43वैलुएबल कंटेंट आपको मिलते रहे। ठीक है?
- 1:47कमेंट में अटेंडेंस मार्क कर दीजिएगा और
- 1:49डिस्क्रिप्शन में सबसे पहले मैं बता दूं
- 1:51आपको डे वाइज टाइम स्टैंप मिल जाएंगे
- 1:53दोस्तों काफी मेहनत लगती है डे वाइज टाइम
- 1:55स्टैंप बनाने में तो इसे आप रेफर कीजिएगा
- 1:59ठीक है ये एक हिसाब से स्टडी प्लान की तरह
- 2:00भी आप इस्तेमाल कर सकते हो ठीक है टाइम
- 2:03स्टैंप को तो क्योंकि ये वीडियो थोड़ी
- 2:06बड़ी है तो आप क्या कर सकते हो टाइम
- 2:08स्टैंप को लेकर उसको डे वाइज ब्रेक ब्रेक
- 2:10कर सकते हो और जैसे आपको सूटेबल हो एक
- 2:14हफ्ता 10 दिन 4 दिन हर एक की अलग-अलग पेस
- 2:17होती है। आप उसे ब्रेक डाउन करके उस पर
- 2:20एक्शन कर सकते हो। ठीक है? कोई-कोई लोग इस
- 2:22लेवल का वीडियो 15 दिन तक, 20 दिन तक या
- 2:24एक महीने तक भी कंटिन्यू रखते हैं क्योंकि
- 2:27उनका टाइम कमिटमेंट कम होता है। ठीक है?
- 2:29तो आप टाइम स्टैंप को रेफर कीजिएगा और
- 2:32उससे एक आपको स्टडी प्लान बनाने में भी
- 2:34हेल्प होगी। ठीक है? डिस्क्रिप्शन को रेफर
- 2:37कीजिएगा क्योंकि यहां पर थोड़े इंपॉर्टेंट
- 2:39रिसोर्सेज मैं लिंक कर दूंगा। तो आप उसको
- 2:41रेफर कर सकते हो। ठीक है? अब जैसे कि
- 2:44मैंने बताया ये एक फिटनेस एप्लीकेशन होने
- 2:46वाला है। ठीक है? और यहां पर आप देख सकते
- 2:48हो फिटनेस एप्लीकेशन। फिटनेस एप्लीकेशन
- 2:50में आप आपको हम तरह-तरह की फंक्शनैलिटी
- 2:53बनाएंगे। जैसे कि यूजर आके खुद से रजिस्टर
- 2:55कर सकता है। खुद को ऑथेंटिकेट कर सकता है।
- 2:58ऑथोराइजेशन होगा वहां पर। ठीक है? और हम
- 3:01बेसिकली ये फंक्शनैलिटी ऐसी होगी कि यूजर
- 3:04का जो फिटनेस डेटा है वो इस एप्लीकेशन के
- 3:06थ्रू ट्रैक हो सकता है। यानी कि यूजर ने
- 3:09क्या किया है? वेट ट्रेनिंग किया है। यूजर
- 3:11ने क्रॉस ट्रेनर इस्तेमाल किया है। रनिंग
- 3:13की है। साइकिलिंग की है। अह तो ये सारी
- 3:16डिटेल्स लाइक कितना कैलोरी बर्न किया है।
- 3:18क्या ड्यूरेशन था एक्टिविटी का? कब किया
- 3:20है डेट टाइम। ये सारी जो फिटनेस एक्टिविटी
- 3:23रिलेटेड इनफेशन है, हम इस एप्लीकेशन के
- 3:27द्वारा हम स्टोर करेंगे हमारी ऐप में और
- 3:30यूजर की इनेशन भी स्टोर करेंगे और उस
- 3:32एक्टिविटी के अगेंस्ट रेकमेंडेशन भी स्टोर
- 3:34करेंगे। तो ये एक बेसिकली फिटनेस
- 3:36एप्लीकेशन है जो कि यूजर का फिटनेस डेटा अ
- 3:40मैनेज और रिट्रीव करने में मदद करता है।
- 3:42ठीक है? तो इसमें काफी सारे कांसेप्ट्स
- 3:44कवर किए गए हैं। आप देख सकते हो
- 3:45कॉन्सेप्ट्स। ठीक है? मैंने काफी हाई लेवल
- 3:47पे लिखा है। लो लेवल पे लिखने जाऊंगा तो
- 3:49लंबी लिस्ट हो जाएगी। तो इसके लिए मैंने
- 3:50लिखा नहीं है ज्यादातर। ठीक है? देखिए ऑफ
- 3:53कोर्स स्प्रिंग बूट का लेटेस्ट वर्जन जो
- 3:55है उसे तो हम इस्तेमाल करेंगे ही गोज़
- 3:57विदाउट सेइंग। ठीक है? और स्प्रिंग डेटा
- 4:01GPए का भी इस्तेमाल करेंगे यहां पर। ठीक
- 4:03है? स्प्रिंग डाटा जीपीए से हम डेटाबसेस
- 4:06में चीजों को पर्सिस्ट करेंगे। हम
- 4:07इस्तेमाल करेंगे स्प्रिंग सिक्योरिटी का।
- 4:09अब स्प्रिंग सिक्योरिटी का इस्तेमाल होगा
- 4:10ऑथेंटिकेशन ऑथराइजेशन के लिए। ठीक है? हम
- 4:13इसमें रोल बेस्ड ऑथेंटिकेशन, रोल बेस्ड
- 4:15ऑथराइजेशन ये सारी चीजें हम सीखेंगे। ठीक
- 4:18है? और इस तरीके से सीखेंगे कि अगर आप इस
- 4:19एप्लीकेशन को और एक्सटेंड करना चाहते हो
- 4:21तो आप एक्सटेंड भी कर सकते हो। इसमें कोई
- 4:24दिक्कत नहीं आएंगी आपको क्योंकि आपकी जो
- 4:26कांसेप्ट्स हैं वो स्ट्रांग रहने वाले
- 4:28हैं। ठीक है? और JW ऑथेंटिकेशन हम
- 4:30इंप्लीमेंट करेंगे। देखिए स्प्रिंग
- 4:32सिक्योरिटी के अलग-अलग तरह के ऑथेंटिकेशन
- 4:33मैकेनिज्म्स होते हैं। फॉर्म बेस्ड
- 4:35बेसिक्स वो सारे हम देखेंगे सारे
- 4:37एक्सप्लोर करेंगे और जेडब्ल्यूडी
- 4:39ऑथेंटिकेशन को इस्तेमाल करेंगे हमारे
- 4:42एप्लीकेशन में। और क्यों JW ऑथेंटिकेशन
- 4:44चूज़ करते हैं? टोकन बेस्ड है, कैसे हेल्प
- 4:46करता है? ये सारी चीजें हमने कवर कर रखी
- 4:48है। LBK का इस्तेमाल करेंगे क्योंकि लॉबक
- 4:51के थ्रू हम काफी सारा बोईलर प्लेट कोड
- 4:53रिड्यूस कर सकते हैं। उसको कैसे इस्तेमाल
- 4:54करना है यह भी कवर्ड है। एंटटी और डेटाबेस
- 4:57रिलेटेड डिज़ाइन हम करेंगे। डीटीओ पैटर्न
- 5:00का इस्तेमाल करेंगे। ठीक है? और डीटीओ
- 5:02पैटर्न क्यों इस्तेमाल करना चाहिए? वो
- 5:04कैसे डिकपल करता है? वो सारी चीजें हम
- 5:07समझेंगे। वैलिडेशंस देखिए ये काफी
- 5:09इंपॉर्टेंट है। अगर आप स्प्रिंग बूट का
- 5:12इस्तेमाल कर रहे हो या कोई भी रेस्ट एपीआई
- 5:13बना रहे हो। ठीक है? डेटा तो आपके पास आना
- 5:15ही है बैक एंड में। तो आपका काम है डेटा
- 5:18सही डेटा लेना। सही डेटा को ट्रैक करना।
- 5:20तो वैलिडेशंस एक इंपॉर्टेंट चीज बन जाती
- 5:22है हर एप्लीकेशन का। चाहे वो फ्रंट एंड
- 5:25एप्लीकेशन हो, बैक एंड एप्लीकेशन हो, कोई
- 5:26भी डेटाबेस भी हो, उसमें वैलिडेशंस
- 5:28इंपॉर्टेंट हो गए हैं आजकल क्योंकि डेटा
- 5:30इतना सारा हो गया है। ठीक है? तो
- 5:31वैलिडेशंस कैसे करना है आसान तरीके से।
- 5:34ठीक है? इस तरीके से वैलिडेशन हम करेंगे।
- 5:37अ स्प्रिंग फ्रेमवर्क के वैलिडेशन
- 5:38फ्रेमवर्क को हम एक्सप्लोर करेंगे और
- 5:40समझेंगे कि कैसे ज्यादा कोड लिखे बिना
- 5:44सिर्फ एनोडेशंस की मदद से आप चीजों को
- 5:47वैलिडेट कर सकते हो। ठीक है? बहुत ही
- 5:49बढ़िया चीज़ है और बहुत मजा आएगा ये सीखने
- 5:51में। और हां हम ये जो एप्लीकेशन बनाएंगे
- 5:53इसे कंटेनराइज भी करेंगे, डॉकराइज करेंगे
- 5:56और इमेज बनाएंगे और थोड़े कंटेनराइजेशन के
- 6:00जो कांसेप्ट्स है उसे भी हम टच अप करेंगे
- 6:02और फिर ये जो एप्लीकेशन है इसे हम डिप्लॉय
- 6:05करेंगे एक एक्चुअल रियल क्लाउड पे और ये
- 6:09फ्री ऑफ़ चार्ज होगा। ठीक है? मैं आपको
- 6:11तरीके बताऊंगा जिसके थ्रू आप एक बैक एंड
- 6:14और डेटाबेस लाइक एक ऐसी एप्लीकेशन जो
- 6:17डेटाबेस का इस्तेमाल कर रही है। देखिए
- 6:18डेटाबेस का इस्तेमाल कर रही है तो उसे
- 6:20लगेगा डेटाबेस सर्वर और बैक एंड सर्वर। तो
- 6:22दोनों सर्वर्स को आप क्ल क्लाउड में कैसे
- 6:24होस्ट कर सकते हो? सॉरी इन दोनों सर्वर्स
- 6:28को आप कैसे क्लाउड में होस्ट कर सकते हो?
- 6:31ये चीजें कवर्ड है। ठीक है? कौन सी-कौ सी
- 6:33सर्विज पिक करनी चाहिए आपको? अ क्यों पिक
- 6:36करनी है हमें? ठीक है? क्योंकि देखिए
- 6:38नॉर्मली क्या है? हम अगर कोई ऐसा पीओसी
- 6:40बनाते हैं या रे्यूे के लिए पोर्टफोलियो
- 6:42प्रोजेक्ट्स बनाते हैं। हम चाहते हैं कि
- 6:44हम स्पेंड ना करें उस पे। करेक्ट। हम
- 6:46हमारी प्रोजेक्ट लाइव सर्वर पे चलती रहे।
- 6:48हम उस पर स्पेंड ना करें। तो मैं ऐसे
- 6:50तरीके आपको बताऊंगा। ऐसी सर्विज बताऊंगा
- 6:52जिसके मदद से आप फ्री में क्लाउड
- 6:54डेप्लॉयमेंट कर सकते हो। तो ये सारी चीजें
- 6:57कवर्ड है। और भी काफी सारे कॉन्सेप्ट्स
- 6:59कवर्ड है। लेकिन ये मैंने हाई लेवल पे
- 7:01मैंने आपको बता दिया है। ठीक है?
- 7:03ऑथेंटिकेशन ऑथराइज़ेशन में बहुत मजा आएगा।
- 7:05सारी एपीआई को हम ऑथेंटिकेट करेंगे। हम ये
- 7:07भी समझेंगे कि अगर आपको कोई एपीआई को
- 7:11ऑथेंटिकेट नहीं करना है या एक्सक्लूड करना
- 7:13है ऑथेंटिकेशन फ्रेमवर्क से तो वो आप कैसे
- 7:15कर सकते हो ये भी मैं बताऊंगा। एक और चीज
- 7:17तो मैं यहां पर लिखना भूल ही गया। ठीक है?
- 7:18हम अ डॉक्यूमेंटेशन एपीआई डॉक्यूमेंटेशन
- 7:21का इस्तेमाल कैसे करना है वो भी हम
- 7:23समझेंगे। ठीक है? स्वैगर एक्सेप्शन
- 7:26हैंडलिंग। ठीक है? तो स्वैगर का मतलब यह
- 7:30है देखिए ये एक स्वैगर की मदद से बेसिकली
- 7:33अगर आप स्वैगर इस्तेमाल करते हो तो उसके
- 7:35जरिए आप ब्यूटीफुल एपीआई डॉक्यूमेंटेशन
- 7:39बना सकते हो। ब्यूटीफुल एपीआई
- 7:40डॉक्यूमेंटेशन जिसको आपको में जिस पर आपको
- 7:43मेंटेनेंस में ज्यादा टाइम नहीं डालना है।
- 7:46कुछ टाइम नहीं डालना है। इनफैक्ट आप कोड
- 7:48में कुछ चेंज करते हो और वो ईपीआई
- 7:50डॉक्यूमेंटेशन में ऑटोमेटिकली रिफ्लेक्ट
- 7:51हो जाता है। कैसे रिफ्लेक्ट होता है ये
- 7:53सारी चीजें मैं आपको बताऊंगा। आपको सारा
- 7:54कॉन्फ़िगरेशन बताऊंगा हैंड होल्ड करके। ठीक
- 7:57है? एक्सेप्शन हैंडलिंग आपको समझ में
- 7:59आएगा। देखिए एक्सेप्शनंस एक इंपॉर्टेंट
- 8:01चीज है और एक्सेप्शनंस को आप किस तरीके से
- 8:03हैंडल कर सकते हो अपने एप्लीकेशन में वो
- 8:05भी कवर्ड है। तो काफी सारी चीजें यहां पर
- 8:07कवर्ड है और इतना ही नहीं ये इस तरीके से
- 8:10आप सीखोगे कि अगर आपको इस एप्लीकेशन को
- 8:12आगे डेवलप करना है तो आप डेवलप भी कर सकते
- 8:15हो, एनहांस भी कर सकते हो। ठीक है? ये
- 8:17टोटली आपके हाथ में है। आपको किस
- 8:18डायरेक्शन में लेके जाना है इस एप्लीकेशन
- 8:20को। ठीक है? और मैं आपको सारे कांसेप्ट
- 8:22सिखा दूंगा, सारी प्रैक्टिससेस सिखा
- 8:24दूंगा। यहां पर आप सब कुछ सीख जाओगे। और
- 8:26हां आपको यह वीडियो जरूर वैलुएबल लगेगी।
- 8:29ठीक है? तो कमेंट्स में आप अटेंडेंस जरूर
- 8:31मार्क कीजिए। ठीक है? और कोर्स की फीस
- 8:35जैसे कि मैंने बताया ये कोर्स लोग कहते
- 8:37हैं फ्री है लेकिन फ्री है नहीं। लाइक,
- 8:39सब्सक्राइब, कमेंट, बेल नोटिफिकेशन आइकॉन
- 8:41तो करना ही है। ठीक है? तो कर दीजिएगा।
- 8:44चैनल को हेल्प हो जाती है, सपोर्ट मिल
- 8:46जाता है आप लोगों का और थोड़ी खुशी मिल
- 8:48जाती है। ठीक है? उम्मीद करता हूं ये
- 8:52वीडियो हेल्पफुल होगा आपके लिए और ज्यादा
- 8:55टाइम वेस्ट नहीं करूंगा। चलिए शुरू करते
- 8:57हैं।
- 9:03हेलो दोस्तों, चलिए बात करते हैं हमारी जो
- 9:06फिटनेस एप्लीकेशन होने वाली है उसकी
- 9:09डेटाबेस स्ट्रक्चर के बारे में। तो देखिए
- 9:11यहां पर मैंने एक तरीके का ईआर डायग्राम
- 9:14जो है उसको बना लिया है। अब देखिए आप
- 9:17कहेंगे कि ये ईआर डायग्राम का मतलब क्या
- 9:19है? तो दोस्तों थोड़ा सा एक ओवरव्यू भी दे
- 9:20देता हूं क्योंकि वो जरूरी है ईआर
- 9:22डायग्राम एक्चुअली में होता क्या है और
- 9:25इसे हम क्यों इस्तेमाल करते हैं? तो अगर
- 9:27आप एक प्रोफेशनल डेवलपर बनते हो,
- 9:29प्रोफेशनल कंपनीज़ में काम करते हो, तो
- 9:31आपको यह ईआर डायग्राम काफी देखने मिलेगा।
- 9:33और यह कहां देखने मिलेगा? यह देखने मिलेगा
- 9:35आपको रिक्वायरमेंट, डॉक्यूमेंटेशन में,
- 9:37टेक्निकल डॉक्स में ये सारी जगह पर देखने
- 9:39मिलेगा। तो समझना जरूरी है कि ये एक्चुअली
- 9:41में है क्या? तो देखिए ईआर डायग्राम का
- 9:43मतलब है एंटिटी रिलेशनशिप डायग्राम। ईआर
- 9:47ईआर का मतलब एंटिटी और रिलेशनशिप। ये आपको
- 9:50इस चीज की आईडिया देता है कि ये जो
- 9:52एप्लीकेशन आप बना रहे हो, ठीक है? इसमें
- 9:55किस तरीके की एंटिटीज हैं? क्या-क्या
- 9:57एंटिटीज है? और इन सों की सारी एंटिटीज के
- 10:00बीच में रिलेशनशिप क्या है? ठीक है? तो
- 10:03यहां पर देखिए काफी सारी एंटिटीज तो दिखाई
- 10:05दे रही है आपको रिकमेंडेशन एक्टिविटीज
- 10:07यूज़र्स और इन सारी जो एंटिटीज है इसके बीच
- 10:11में रिलेशनशिप क्या है वो रिलेशनशिप ये जो
- 10:13लाइंस है उसकी मदद से आपको दिखाई दे रहा
- 10:16है ठीक है तो ये हो गया ईआर डायग्राम और
- 10:20दोस्तों ये आपको एक तरीके का हाई लेवल
- 10:23ओवरव्यू देता है डेटाबेस की जो डिज़ाइन है
- 10:26उसके बारे में ठीक है तो उम्मीद करता हूं
- 10:28इतना क्लियर हो गया और इस ये देखिए ये तो
- 10:30काफी सिंपल ईआर डायग्राम है ठीक है लेकिन
- 10:33लेकिन इसमें इसमें तीन एंटिटीज़ हैं
- 10:34बेसिकली और आपको इनके बीच में क्या
- 10:36रिलेशनशिप है वह सारी समझ में आएगी यहां
- 10:38पर। लेकिन असल जिंदगी में अगर आप काफी बड़े
- 10:41प्रोजेक्ट पर काम करते हो तो वहां पर हो
- 10:43सकता है आपको 10 12 20 एंटिटीज भी दिखाई
- 10:45दे। ठीक है? और हो सकता है वो एक ही फ्रेम
- 10:47में फिट भी ना हो। ठीक है? तो इस तरीके से
- 10:50एक्चुअल काम होता है। और ये क्या है? ये
- 10:53देख के डायग्राम देख के आपको समझ में आ
- 10:54जाता है। अच्छा ये डेटाबेस का स्ट्रक्चर
- 10:56क्या है? डेटाबेस का डिज़ाइन क्या है? कौन
- 10:58सी टेबल किससे लिंक्ड है? किस तरीके की
- 11:00रिलेशनशिप है? वो सारी चीजें आपको समझ में
- 11:02आ जाती है। तो देखिए यहां पर मैं आपको बता
- 11:03देता हूं। यहां पर आप देख पा रहे हो
- 11:05यूज़र्स, एक्टिविटीज और रेकमेंडेशंस। यहां
- 11:07पर यूज़र्स हैं। ठीक है? तो सबसे पहले तो
- 11:09मैं एंटिटीज़ के बारे में बता देता हूं कि
- 11:11कौन सी एंटिटी क्या चीज के लिए हमने बनाई
- 11:14है और उसके बाद में इन सों के बीच में जो
- 11:17रिलेशनशिप है उसके बारे में भी बात
- 11:18करेंगे। ठीक है? तो सबसे पहले तो यूज़र्स
- 11:21नाम की एक एंटिटी रहने वाली है। ठीक है?
- 11:24यूज़र्स देखिए नाम यूज़र्स से ही समझ में आ
- 11:26रहा है कि यूज़र्स में क्या होने वाला है।
- 11:28ठीक है? इसमें हम यूजर की इंफॉर्मेशन को
- 11:30स्टोर करेंगे। ठीक है? यूजर की इनेशन। अब
- 11:33यहां पर आपको दिखाई दे रहा है कि यहां पर
- 11:34आपको दिखाई देगा क्रिएटेड डेट, ईमेल। तो
- 11:37यूजर कब क्रिएट हुआ है? ईमेल, फर्स्ट नेम,
- 11:39लास्ट नेम, पासवर्ड। यूजर का क्या रोल है?
- 11:42और यह यूजर कब अपडेट किया गया है। इतनी
- 11:45इनेशन आपको यहां पर दिखाई देगी। ठीक है?
- 11:48आईडी भी दिखाई दे रही है। आईडी मतलब इसकी
- 11:50यूनिक आईडी और आईडी के पास में आपको यह
- 11:53देखिए की जैसा आइकॉन दिखाई देगा। इसका
- 11:55मतलब यह है कि यह प्राइमरी की है इस टेबल
- 11:57की। ठीक है? और देखिए यहां पर आपको अह
- 12:00कॉलम नेम दिखाई दे रहा है आईडी और यहां पर
- 12:03अह जो है ये कॉलम का टाइप भी दिखाई दे रहा
- 12:05है। यानी कि वेयर केयर डेट टाइम वेयर केयर
- 12:08वेयर केयर वेयर केयर। वेयर केयर मतलब ये
- 12:10डेटाबेस में स्ट्रिंग होता है। तो आप जो
- 12:12भी डेटा स्टोर करते हो अगर आप जावा में
- 12:14स्ट्रिंग की तरह डिफाइन करते हो तो
- 12:16डेटाबेस लैंग्वेज में उसे वेयर केयर कहा
- 12:18जाता है। ठीक है? ये अह स्ट्रिंग को
- 12:19रिप्रेजेंट करने का तरीका है डेटाबेस लेवल
- 12:21पर। और यहां पर वेयर केयर में देखिए 255
- 12:24कररेक्टर्स यानी कि आप 255 कररेक्टर्स
- 12:27स्टोर कर सकते हो। फर्स्ट नेम में, लास्ट
- 12:29नेम में, पासवर्ड में ये सारी जगह पर इतने
- 12:31कररेक्टर्स आप स्टोर कर सकते हो। ठीक है?
- 12:32रोल भी है यहां पर जो कि इनम के तौर पर
- 12:35रिप्रेजेंट किया गया है। तो यहां पर आप
- 12:36अलग-अलग तरह के रोल्स डिफाइन कर सकते हो।
- 12:38जैसे कि यूजर रोल हो गया। आपने डिफाइन कर
- 12:41दिया एडमिन रोल, कुछ सेलर रोल। कोई भी रोल
- 12:43आ सकता है। आगे चलके आप आपकी एप्लीकेशन
- 12:45में। आप उसको यहां पर मेंशन कर सकते हो।
- 12:47क्रिएटेड क्रिएटेड एट यह डेट टाइम है।
- 12:50क्रिएटेड एट का मतलब तो आपको समझ गया
- 12:52रहेगा कि ये जो यूजर है कब क्रिएट हुआ है।
- 12:54अपडेटेड एट वो भी डेट टाइम है। ठीक है? और
- 12:57आईडी है वो भी वेयर कैर है। तो ये हो गया
- 12:59यूजर का स्ट्रक्चर। फिर आते हैं एक्टिविटी
- 13:01के स्ट्रक्चर के पास। ठीक है? तो देखिए
- 13:04एक्टिविटी में आपको देखने मिल जाएगा
- 13:06एडिशनल मैट्रिक्स, कैलोरीज़ बर्न, क्रिएटेड
- 13:08एट, ड्यूरेशन, स्टार्ट टाइम, टाइप, टाइप
- 13:11को इनम से रिप्रेजेंट किया गया है। ठीक
- 13:12है? ये सारे एक्टिविटी रिलेटेड डेटा है।
- 13:14तो अगर आपको एक यूजर की एक्टिविटी को
- 13:17ट्रैक करना है तो आप उसे एक्टिविटीज टेबल
- 13:20में ट्रैक कर सकते हो। ठीक है? तो देखिए
- 13:22यहां पर आप देखोगे ध्यान से देखोगे तो
- 13:24यूजर आईडी है। तो यूजर आईडी क्या बताएगा
- 13:26कि ये जो एक्टिविटी है वो कौन से यूजर की
- 13:29है? अपडेटेड एट टाइप। टाइप मतलब ये कौन से
- 13:31टाइप की एक्टिविटी है? इसको हम इनम में
- 13:33इनम के तौर पे स्टोर करेंगे। स्टार्ट टाइम
- 13:37ड्यूरेशन क्रिएटेड एट कैलोरीज बर्न एडिशनल
- 13:39मैट्रिक्स अ आईडी वेयर केयर ये सारी चीजें
- 13:42आपको देखने मिल जाएगी। ठीक है? और
- 13:44रेकमेंडेशंस में ये एक्टिविटी के अगेंस्ट
- 13:47एक्टिविटी के बिहाफ पर जो भी रेकमेंडेशंस
- 13:49आ रहे हैं। ठीक है? उसको आप देख सकते हो
- 13:52यहां पर। तो देखिए यूजर आईडी है, टाइप है,
- 13:54सजेशंस है, सेफ्टी है, रेकमेंडेशन है,
- 13:57रेकमेंडेशंस, इंप्रूवमेंट्स और सेफ्टी और
- 14:00सजेशन। ये चार पार्ट्स में इसे डिवाइड
- 14:02किया गया है। ठीक है? तो एक एक्टिविटी के
- 14:05अगेंस्ट एक एक्टिविटी के बिहाफ पर या जो
- 14:07भी डेटा है यूजर का फिटनेस डेटा उसके
- 14:09बिहाफ पर आप किस तरह के रिकमेंडेशन देना
- 14:12चाहते हो यूजर को तो रिकमेंडेशंस अलग-अलग
- 14:14टाइप के होते हैं। एक तो ये इंप्रूवमेंट
- 14:15रिलेटेड रिकमेंडेशन जो यहां पर देखा जा
- 14:17रहा है यहां। ठीक है? बाद में एक होता है
- 14:19एक्चुअल रिकमेंडेशन। ठीक है? फिर होता है
- 14:21सेफ्टी यानी कि सेफ्टी रिलेटेड अगर कोई
- 14:23रिकमेंडेशन है वो आप दे सकते हो। फिर
- 14:25सजेशन रिलेटेड अगर कोई रिकमेंडेशन है वो
- 14:27भी आप दे सकते हो। ठीक है? जो इंप्रूवमेंट
- 14:29सजेशन वो सारे दे सकते हो। ठीक है? टाइप
- 14:31हो सकता है इसका क्रिएटेड एट एक्टिविटी
- 14:34आईडी और यूजर आईडी। यूजर आईडी यह बताएगा
- 14:36कि कौन सी यूजर के अगेंस्ट यह लिंक की गई
- 14:39है। और रेकमेंडेशन का मतलब है यह बेसिकली
- 14:42रेकमेंडेशन है अ किसी एक्टिविटी का। ठीक
- 14:45है? और यहां पर उसे लिंक किया गया है
- 14:47एक्टिविटी आईडी से। ठीक है? तो ये हो गया
- 14:49रेकमेंडेशंस टेबल या रेकमेंडेशंस एंटिटी।
- 14:52तो देखिए तीन एंटिटी है। ठीक है? और ये
- 14:55तीनों एंटिटी के बीच में कुछ रिलेशनशिप
- 14:56है। तो यह आपको लाइंस दिखाई दे रही होगी
- 14:58यहां पर। ठीक है? तो देखिए यूजर और
- 15:02एक्टिविटीज में यूजर और एक्टिविटीज में वन
- 15:04टू मेनी का रिलेशनशिप है। तो एक यूजर के
- 15:06अगेंस्ट मल्टीपल एक्टिविटीज हो सकती है।
- 15:09तो देखिए ये जो लिंकिंग आप देखोगे यहां पर
- 15:11यूजर के साइड पे दो लाइन डली हुई है। इसका
- 15:13मतलब ये वन साइड ऑफ द रिलेशनशिप है। और
- 15:16यहां पर आपको ये अ इस तरीके का सिंबल
- 15:19दिखाई देगा। तो ये मेनी साइड ऑफ दी
- 15:21रिलेशनशिप है। ठीक है? तो ये हो गया अ वन
- 15:25टू मेनी का रिलेशनशिप। और फिर यहां पर
- 15:28रेकमेंडेशंस और एक्टिविटीज में भी आपको
- 15:30दिखाई देगा एक एक्टिविटी के अगेंस्ट
- 15:31मल्टीपल रिकमेंडेशंस अलाउड है। ठीक है? एक
- 15:34एक्टिविटी के अगेंस्ट मल्टीपल रेकमेंडेशंस
- 15:36अलाउड है। तो एक्टिविटी से रेकमेंडेशन का
- 15:38जो रिलेशनशिप है वो वन टू मेनी का
- 15:40रिलेशनशिप है। ठीक है? जिसमें वन साइड है
- 15:42एक्टिविटी और रेकमेंडेशन साइड है मेनी
- 15:45साइड। तो यहां पर भी आपको दिखाई देगा ये
- 15:47दो लाइंस जो है ये है वन साइड और ये ऐसा
- 15:50जो सिंबल है वो है मेनी साइड। और सेम आपको
- 15:52दिखाई देगा यूज़र्स और रेकमेंडेशन में। ठीक
- 15:55है? यहां पर भी एक रिलेशनशिप है। तो
- 15:57यूज़र्स है वन साइड ऑफ़ द रिलेशनशिप और
- 15:59रेकमेंडेशंस हैं मेनी साइड ऑफ दी
- 16:01रिलेशनशिप। तो एक यूजर के अगेंस्ट मल्टीपल
- 16:04रेकमेंडेशंस हो सकते हैं। और हर
- 16:07रेकमेंडेशन एक यूजर को बिलोंग तो करेगा
- 16:09ही। ठीक है? और इसीलिए देखिए आप ये
- 16:12रिलेशनशिप के बेसिस पे आप देखोगे तो आपको
- 16:14फील्ड्स और ज्यादा समझ में आएंगे। ठीक है?
- 16:16तो अगर आप यूज़र्स और एक्टिविटी में देखते
- 16:18हो तो यूज़र्स और एक्टिविटी में लिंकिंग
- 16:21है। ठीक है? तो देखिए यहां पर हर
- 16:23एक्टिविटी के अगेंस्ट आपको यूजर आईडी
- 16:25दिखाई देगा। तो इसका मतलब आप एक्टिविटी को
- 16:27यूजर से लिंक कर पाओ। इसके लिए हम यूजर
- 16:29आईडी का जो रेफरेंस है वो एक्टिविटी टेबल
- 16:32में स्टोर कर रहे हैं। ठीक है? यूजर के
- 16:35अगेंस्ट आप एक्टिविटी को लिंक कर पाओ।
- 16:38इसीलिए जो यूजर का रेफरेंस है उसे हम
- 16:40एक्टिविटी टेबल में स्टोर कर रहे हैं। तो
- 16:42यहां पर यूजर आईडी आपको दिखाई देगा। और ये
- 16:44यूजर आईडी लिंक करता है यूज़र्स को। हर
- 16:46एक्टिविटी लिंक करता है यूज़र्स को। ठीक
- 16:48है? और रेकमेंडेशंस में भी सेम होगा। आपको
- 16:51यूजर आईडी दिखाई देगी और हर रेमेंडेशन
- 16:53लिंक करती है यूज़र्स को और यहां पर एक और
- 16:56चीज दिखाई देगी जो कि है एक्टिविटी आईडी।
- 16:57तो हर रेमेंडेशन लिंक करेगी एक्टिविटी को
- 17:00भी। तो हर रेकमेंडेशन दो जगह पर लिंक कर
- 17:02रही है। एक तो एक्टिविटी को कि ये किस
- 17:04एक्टिविटी की रेकमेंडेशन है और यूज़र्स को
- 17:07भी कि ये किस यूजर की रेकमेंडेशन है। ठीक
- 17:10है? तो इस तरीके की रिलेशनशिप बनते जा रही
- 17:12है। ठीक है? तो उम्मीद करता हूं ये थोड़ा
- 17:16सा क्लियर हुआ और ये सारी जो रिलेशनशिप है
- 17:17इसको हम डेटाबेस में रिप्रेजेंट करेंगे।
- 17:20प्राइमरी की और फॉरेन की रिलेशनशिप की मदद
- 17:22से। ठीक है? और देखिए हमारे पास सारी की
- 17:26सारी चीजें हैं यहां पर एंटिटी रिलेशनशिप
- 17:28डायग्राम में जो कि प्राइमरी कीज़ मेंशंड
- 17:30है और फॉरेन की भी हमने मेंशन कर रखी है
- 17:33इसी डायग्राम में। ठीक है? तो उम्मीद करता
- 17:36हूं यह सारी की सारी चीजें क्लियर हो गई
- 17:38है। देखिए एंटिटी रिलेशनशिप डायग्राम आपको
- 17:40डेटाबेस डिजाइन का कंप्लीट अंदाजा देता है
- 17:44कि डेटाबेस में किस तरीके का डेटा स्टोर
- 17:47हो रहा है। कैसे स्टोर हो रहा है, कैसे वो
- 17:49एक दूसरे को लिंक कर रहा है। ये सारी
- 17:51चीजें आपको यहां पर ये डायग्राम देखकर समझ
- 17:53में आ जाएंगी। ठीक है? आगे चलके आपको
- 17:55कॉम्प्लेक्स डायग्राम्स भी देखने की आदत
- 17:57होनी चाहिए। ठीक है? तो ये कैसे काम करता
- 17:59है? यह काफी जरूरी है और इसके बिहाफ पर आप
- 18:02इसी को ट्रांसलेट करोगे अ एक पर्टिकुलर
- 18:06डेटाबेस में तो इसी के बिहाफ पर आप एंटटीज़
- 18:08डिफाइन करोगे। इसी के बिहाफ पर हम डेटाबेस
- 18:11क्रिएट करेंगे और हमारा जो डेटाबेस है वो
- 18:13क्रिएट होगा और फिर हम उसके ऊपर कोड
- 18:15लिखेंगे सब कुछ। ठीक है? और ये ऐसा नहीं
- 18:18है कि ये फाइनल है। ठीक है? ये भी मैं एक
- 18:21चीज़ बता दूं। देखो अगर आप एक अजाइल टीम
- 18:23में काम करते हो तो ऐसा नहीं है कि ये
- 18:25आपने बना लिया और यह फाइनल हो गया। ऐसा
- 18:27नहीं होता है। ठीक है? आपने यह बनाया। हो
- 18:30सकता है मैंने चलिए मैं एक कंपनी में काम
- 18:31कर रहा हूं। मैंने इस एप्लीकेशन पे काम
- 18:34किया और मैंने इस तरीके का मुझे
- 18:35रिक्वायरमेंट आई तो मैंने ये बना दिया।
- 18:36वर्जन 1.0 ल्च हो गया। अब वर्जन 2.0 में
- 18:39हो सकता है इन एक्टिविटीज़ के साथ कैलोरीज़
- 18:42और फ़ूड का डेटा भी ट्रैक करना है। हो सकता
- 18:44है फिटनेस एप्लीकेशन बढ़ता जा रहा है और
- 18:46डेटा हमें ट्रैक करना है। तो एक और एंटिटी
- 18:47आ जाएगी और थोड़ा सा स्ट्रक्चर यहां वहां
- 18:49होगा। तो सारे स्ट्रक्चर को हम अकोमोडेट
- 18:51करेंगे डेटाबेस में। ठीक है? और नई ईआर
- 18:54डायग्राम बनेगी। फिर वो स्ट्रक्चर को
- 18:55अकोमोडेट किया जाएगा और फिर एक नई रिलीज़
- 18:58की जाएगी। तो ये जो है चेंजेस जो है
- 19:01कंटीन्यूअस चलता रहता है। ऐसा नहीं है कि
- 19:03आपने बना दिया और वो पत्थर की लकीर है वो
- 19:05हट नहीं सकती। ऐसा नहीं होता है। ठीक है?
- 19:07सेम वे में सिमिलर वे में यहां पर जो भी
- 19:11आप देख रहे हो। ठीक है? हो सकता है अगर
- 19:13एप्लीकेशन बनाने के दौरान अगर हमें कुछ और
- 19:16इंप्रूवमेंट्स करने का अ यानी कि करने का
- 19:20स्कोप हो या कुछ चेंज यहां वहां करने का
- 19:22स्कोप हो तो वो हम करेंगे। ठीक है? ऐसा
- 19:24नहीं है कि ये हमने देख लिया और यही
- 19:26बनाएंगे। ठीक है? लेकिन चेंजेस के आगे कुछ
- 19:28लॉजिक होना चाहिए। या तो वो क्लाइंट की
- 19:29रिक्वायरमेंट होनी चाहिए या तो कुछ
- 19:33यू नो अ गुड सजेशंस होने चाहिए
- 19:35इंजीनियरिंग के एंड के ओर से। जैसे कि अगर
- 19:38आप एक डेटा को किसी तरीके से स्टोर कर रहे
- 19:40हो और वो उस तरीके से स्टोर नहीं होना
- 19:43चाहिए। तो वो ऐसा सजेशन आ सकता है कि ऐसे
- 19:45नहीं ऐसे होना चाहिए। ठीक है? एंड देन फिर
- 19:47उसका अप्रूवल प्रोसेस होता है। तो इस
- 19:49तरीके से काम होता है। ठीक है? अजाइल
- 19:51टीम्स में देखिए ये एक बार रिक्वायरमेंट
- 19:53आती है आपने बना ली एज अ डेवलपर फिर जो
- 19:56नेक्स्ट रिक्वायरमेंट आएंगी उस पे आप लग
- 19:57जाओगे तो ये प्रोसेस चलता रहेगा ठीक है
- 20:00ऐसा नहीं है कि आपने एक बार बना लिया और
- 20:01वो फ्रीज़ हो जाता है आपको चीजों से
- 20:03इमोशनली कनेक्ट नहीं होना है आपने देखिए
- 20:05आप कोड लिखते हो काफी कुछ बनाते हो काफी
- 20:07एफर्ट टेकिंग काम है मानता हूं लेकिन ऐसा
- 20:10नहीं है कि आपको उसको फिर इमोशनली कनेक्ट
- 20:13हो जाना है ठीक है कुछ चेंजेस आते हैं तो
- 20:15आपको ओपन फॉर चेंज होना चाहिए ओपन फॉर
- 20:17इंप्रूवमेंट्स होना चाहिए इंप्रूवमेंट्स
- 20:18काफी जरूरी है। ठीक है? उम्मीद करता हूं
- 20:21यह क्लियर है। बिना टाइम को बर्बाद किए हम
- 20:24डेटाबेस डिजाइन और कोडिंग की ओर बढ़ेंगे
- 20:27और आशा करता हूं यह क्लियर रहा।
- 20:35तो चलिए दोस्तों आगे बढ़ते हैं और हमारा
- 20:38जो नेक्स्ट स्टेप है वो होने वाला है
- 20:40प्रोजेक्ट क्रिएशन। सो हम क्या करने वाले
- 20:42हैं? प्रोजेक्ट को क्रिएट करने वाले हैं
- 20:44और उसे हम इंटेलिजेंट में इंपोर्ट भी
- 20:46करेंगे। ठीक है? तो प्रोजेक्ट क्रिएशन के
- 20:49लिए हमारी जो फेवरेट वेबसाइट है स्प्रिंग
- 20:51इनिशियलाइजर जो हमें मिलेगी स्टारpring.
- 20:54पर उस पर आ जाना है। ठीक है? और यहां पर
- 20:57हम पूरी सेटिंग्स जो है वो हम चूज़ कर
- 21:00लेंगे ताकि हमें जो प्रोजेक्ट स्ट्रक्चर
- 21:01है वो रेडीमेड बना बनाया मिले। और हमें
- 21:04मैनुअली करने की जरूरत नहीं है। हमें
- 21:05सिर्फ चूज़ करना है और जनरेट कर लेना है।
- 21:08ठीक है? तो मैं बता देता हूं कैसे। यहां
- 21:09पे सबसे पहले तो मेवन चूज़ कर लीजिए।
- 21:11क्योंकि मैं मेवन का इस्तेमाल करने वाला
- 21:12हूं। अगर आप ग्रेडल इस्तेमाल करना चाहते
- 21:14हो कीजिए। कोई दिक्कत नहीं है। लेकिन मैं
- 21:16मेव इन कर रहा हूं। यहां पर लेटेस्ट वर्जन
- 21:18ऑफ स्प्रिंग बूट जो कि नॉन स्नैपशॉट वर्जन
- 21:20है उसे चूज़ कर लीजिए। तो अब जब मैं यह
- 21:23वीडियो रिकॉर्ड कर रहा हूं जो लेटेस्ट
- 21:24वर्जन है वो 4.0 है। ठीक है? यानी 4.0 तो
- 21:28ये लेटेस्ट वर्जन है और हो सकता है आपको
- 21:304.1, 4.2, 4.5 ऐसे दिखाई दे क्योंकि जब भी
- 21:34मैं वेबसाइट पर आता हूं एक नया पॉइंट तो
- 21:37इंक्रीस हो ही जाता है। ठीक है? तो नए
- 21:38वर्जनंस आते रहते हैं। तो ऐसे घबराने की
- 21:40कोई बात नहीं है। ठीक है? ये वर्जन 4 जो
- 21:43है उसमें थोड़े से चेंजेस हुए हैं। तो हम
- 21:45यूज़ करेंगे वर्जन 4.0 तो आपको जो चेंजेस
- 21:48हुए हैं वो भी समझ में आ जाएंगे। ठीक है?
- 21:51लेकिन फिलहाल अगर आप कोई दूसरा वर्जन देख
- 21:53रहे हो तो ऐसे घबराइएगा नहीं क्योंकि ये
- 21:55वर्जन अ यानी इतना डिफरेंस नहीं होगा।
- 21:58पॉइंट हो सकता है 4.01 आ जाए, 4.02, 4.20
- 22:03आ जाए, 4.30 ऐसा आते रहेंगे वर्जनंस। ठीक
- 22:06है? मैं का मैंने काफी काम किया है
- 22:07स्प्रिंग बूट पर और नए वर्शन्स आते रहते
- 22:09हैं अक्सर। तो घबराने की जरूरत नहीं है।
- 22:11लोग क्या है घबरा जाते हैं। अच्छा पॉइंट
- 22:12वन का डिफरेंस है तो मेरा वर्जन गलत है।
- 22:14अब ये जो वीडियो में वर्जन है वो मैं कैसे
- 22:17लेके आऊं? ऐसे नहीं होता है। जो आपको
- 22:18लेटेस्ट दिख रहा है वो चूज़ कर लेना है।
- 22:20ठीक है? नॉन Snaps चूज़ करना है क्योंकि
- 22:22Snaps वर्जनंस क्या है? एक्चुअली प्रीव्यू
- 22:23वर्जनंस होते हैं। थोड़े अनस्टेबिलिटी हो
- 22:25सकती है। ठीक है? तो देखिए 4.0.1 तो आ भी
- 22:28गया है। Snapshot में है अभी। और फिर ये
- 22:30जैसे ही Snaps से निकलेगा तो 4.0.1
- 22:33यहां पर आ जाएगा। 4.00 शायद हट भी सकता है
- 22:36यार। ये ये 3K के वर्जनंस हट सकते हैं और
- 22:39यहां पर 4.0.2 या कोई नया वर्जन आ जाएगा।
- 22:41ठीक है? तो ऐसे अपडेट्स आते रहते हैं। तो
- 22:43नॉन स्nश वर्जन मैंने चूज़ कर लिया है।
- 22:45यहां पर ग्रुप पर आ जाना है और ग्रुप में
- 22:47लिखना है कॉम डॉट
- 22:50प्रोजेक्ट। ठीक है? और यहां पर मैं
- 22:51आर्टिफेक्ट में लिख दूंगा फिटनेस। ओके?
- 22:54फिटनेस मोनोलिथ इस तरीके से। ठीक है? और
- 22:58इसको हटा देते हैं हम यहां से। अ
- 23:01डिस्क्रिप्शन आप रख सकते हो चाहिए तो। ठीक
- 23:03है? ऐसी कोई दिक्कत वाली बात नहीं है। और
- 23:05यहां पर जो पैकेज है वो पैकेज भी आप बेटर
- 23:08नेम दे सकते हो। तो एक बेटर नेम होगा कॉम
- 23:12अ प्रोजेक्ट और फिटनेस। ये हफन मोनोलिथ को
- 23:15हटा देता हूं क्योंकि पैकेज नेम में हफन
- 23:17थोड़ा सही नहीं लगेगा। ठीक है? तो ऐसे हम
- 23:19रखेंगे पैकेज और यहां पर जार प्रॉपर्टीज
- 23:22फाइल और वर्जन मैं सेलेक्ट कर लेता हूं।
- 23:24jवा 25 या 21 कुछ भी सेलेक्ट कर सकते हो।
- 23:2625 भी सेलेक्ट कर सकते हो। ऐसी कोई दिक्कत
- 23:28वाली बात है नहीं। ठीक है? इतना आपने
- 23:30सेलेक्ट कर लिया। और यहां पर आना है आपको
- 23:32और आप एक स्प्रिंग बूट का प्रोजेक्ट बना
- 23:33रहे हो तो आपको यहां पर वेब चूज़ कर लेना
- 23:35है। ठीक है? एक और डिपेंडेंसी मैं ऐड कर
- 23:37देता हूं। अ लेकिन फिलहाल नहीं करते। चलो
- 23:40बाद में हम जैसे डिपेंडेंसी चाहिए होगी हम
- 23:42ऐड करते जाएंगे। अब वेब का मतलब क्या है?
- 23:44देखिए वेब का मतलब है हम एक वेब प्रोजेक्ट
- 23:46बना रहे हैं। ठीक है? और यहां पर आप जाओगे
- 23:48एक्सप्लोर में और अगर आप एक एक्सपीरियंस
- 23:51स्प्रिंग बबू डेवलपर हैं या आप कोई ऐसे
- 23:53डेवलपर हैं जिन्होंने स्प्रिंग वर्जन
- 23:56स्प्रिंग बूट वर्जन 3 या वर्जन 3 पर काम
- 23:59किया है। ठीक है? तो आपको दिखाई देगा यहां
- 24:01पर ये जो डिपेंडेंसीज़ है वेब ऐड करने पर
- 24:03वो चेंज हो चुकी है वर्जन 4.0 में। ठीक
- 24:06है? तो यहां पर देखिए आपको दिखाई देगा
- 24:07स्प्रिंग बूट स्टार्टर वेब एमवीसी पहले
- 24:10क्या? स्प्रिंग बूट स्टार्टर वेब खाली ऐड
- 24:12होता था। अ स्प्रिंगboot 3 की बात कर रहा
- 24:15हूं। ठीक है? और आर्टिफेक्ट में यहां पर
- 24:17एमवीसी अ वेब एमवीसी टेस्ट आ रहा है। तो
- 24:20पहले क्या आता था? स्प्रिंग बूट स्टार्टर
- 24:23वेब टेस्ट ऐसे आता था। ठीक है? तो ये क्या
- 24:26है? ये थोड़ा कोड जो है मॉड्यूलराइज़ हो
- 24:28चुका है। जो डिपेंडेंसीज़ है थोड़ी
- 24:29मॉड्युलराइज़ हो चुकी है। तो अब यहां पर अह
- 24:32जो वेब एमवीसी यानी कि जो एमवीसी
- 24:35आर्किटेक्चर है उसकी टेस्टिंग के लिए जो
- 24:36भी डिपेंडेंसी चाहिए वो वेब एमबीसी टेस्ट
- 24:38में है। और यहां पर ये वेब एमवीसी जो
- 24:41मॉड्यूल है इसमें सारी की सारी जो
- 24:44डिपेंडेंसीज़ है जो हमें चाहिए अह जैसे कि
- 24:47स्प्रिंग एमबीसी, डिस्पैच सर्,
- 24:49कंट्रोलर्स, व्यू रिज़ॉल्वर्स, जैक्सिन ये
- 24:51सारी चीजें इसमें ऐडेड है। तो, ये
- 24:53अननेसेसरी चीज़ चीज़ हैं। उसको हटा दिया गया
- 24:55है और यह नया नाम लाया गया है ताकि जो
- 24:57डिपेंडेंसी है वो छोटी और ऑप्टिमाइज हो
- 25:00पाए। ठीक है? तो इतना हो गया है और बाकी
- 25:02और कुछ तो करने की जरूरत नहीं है। तो हम
- 25:04क्या करेंगे? यहां पर जनरेट क्लिक कर
- 25:05दूंगा और जो प्रोजेक्ट जनरेट होगा उसे मैं
- 25:08मेरी जो सिस्टम है उसे वहां पर कहीं तो
- 25:12स्टोर कर दूंगा जहां पर भी मैं काम करना
- 25:13चाहता हूं। तो एक वर्कस्पेस का फोल्डर बना
- 25:15लीजिए जहां पर आप काम करेंगे। और यहां पर
- 25:18आपको जो ज़िप फाइल मिलेगी उसे स्टोर कर
- 25:20दीजिए वहां पर। तो यह जो ज़िप फाइल जनरेट
- 25:22हुई थी उसे मैंने यहां पर स्टोर कर दिया
- 25:24है। ठीक है? और इसे अब मैं अनज़िप भी कर
- 25:27दूंगा। तो यहां पर आपके पास जो भी अ लाइक
- 25:30एक्सट्रेक्टर होगा ठीक है? उसे आप यूज़ कर
- 25:34सकते हो। ठीक है? इसको सिंपल अनज़िप करना
- 25:36है और आपको देखिए ये सारी फाइल्स यहां पर
- 25:38मिल जाएगी। अब हमें क्या करना है? आपने
- 25:39इसको अनज़िप कर लिया। ठीक है? ये जो ज़िप
- 25:41वर्जन है इसको आप डिलीट कर सकते हो। इसकी
- 25:44जरूरत तो है नहीं। अब आप यहां पर आ जाइए।
- 25:46ठीक है? इंटेलिजेंट पर। इंटेलिजेंट पर यह
- 25:48वेलकम स्क्रीन है। सारे प्रोजेक्ट्स को
- 25:49क्लोज कर दीजिए। फ्रेश स्टार्ट करेंगे।
- 25:51यहां पर ओपन पर क्लिक करना है आपको। ओपन
- 25:53पर क्लिक करके जहां पर आपने जो अ
- 25:56प्रोजेक्ट है उसे अनज़िप किया है वहां पर
- 25:58जाइए। उस डायरेक्टरी में नेविगेट कीजिए और
- 26:00यहां पर आपको प्रोजेक्ट दिख जाएगा। और
- 26:02यहां पर pmsl जो है उसे सेलेक्ट कर लीजिए।
- 26:04आप pmsl को सेलेक्ट क्यों नहीं क्यों कर
- 26:05रहे हैं हम? ये फोल्डर को सेलेक्ट क्यों
- 26:07नहीं कर रहे? क्योंकि pmxl मेवन की
- 26:10प्रोजेक्ट फाइल है और इसमें प्रोजेक्ट की
- 26:12पूरी की पूरी इंफॉर्मेशन है। तो अगर आप
- 26:14इंटेलिजें में प्रोजेक्ट को एज ए मेवन
- 26:17प्रोजेक्ट इंपोर्ट करना चाहते हैं तो pmxl
- 26:19को सेलेक्ट करना जरूरी है। इससे इंटेलिजें
- 26:21को पता होगा कि अच्छा ये जो प्रोजेक्ट आप
- 26:23इंपोर्ट कर रहे हो ये एक मेवन प्रोजेक्ट
- 26:25है। तो यहां पर जो मेवन की जो फीचर्स होते
- 26:27हैं वो उसे इनेबल कर देगा आईडी में। देखिए
- 26:29तो ये समझ गया pmsl इज़ अ प्रोजेक्ट फाइल।
- 26:32वुड यू लाइक टू ओपन द प्रोजेक्ट? जी हां,
- 26:34मैं प्रोजेक्ट को ओपन करना चाहता हूं और
- 26:36सारे प्रोजेक्ट्स को ट्रस्ट कर दीजिए इस
- 26:37फोल्डर में क्योंकि यह फोल्डर मैं ही बना
- 26:39रहा हूं। ठीक है? यह जनरली एक सिक्योरिटी
- 26:41फीचर है जहां पर वह पूछता है। और यहां पर
- 26:42देखिए ये रीड कर रहा है सारे प्रोजेक्ट को
- 26:44और यह देखिए लोड करने बोल रहा है मेवन
- 26:46प्रोजेक्ट तो लोड कर लीजिए। मेव्स बिल्ड
- 26:48स्क्रिप्ट फाउंड और देखिए डिपेंडेंसीज
- 26:50ऑटोमेटिकली रॉल्व कर रहा है। तो ये सारे
- 26:52जो फीचर्स है जहां पर डिपेंडेंसी
- 26:54ऑटोमेटिकली रॉल्व हो रही है। यानी कि आपने
- 26:57कुछ चेंज किया तो सारी डिपेंडेंसीज ऑटो
- 26:59फैच हो रही है। ये सारी जो चीजें हैं ये
- 27:01इंटेलिजें को करने के लिए उसे पता होना
- 27:04चाहिए कि अच्छा ये मेविन प्रोजेक्ट है। तो
- 27:06देखिए प्लगइंस भी डाउनलोड हो रहे हैं। सब
- 27:08कुछ डाउनलोड हो रहा है यहां पर। देखिए ठीक
- 27:10है? तो ये डाउनलोड हो चुके हैं और यह जो
- 27:13प्रोजेक्ट है रेडी है इस्तेमाल के लिए। और
- 27:16अगर आप चाहो तो इसे रन कर टेस्ट भी कर
- 27:18सकते हो। यहां पर फिटनेस मोलित में जाकर
- 27:20इसे रन भी कर सकते हो। और यहां पर अगर आप
- 27:22जाओगे तो pmxl में आपको यहां पर इसकी जो
- 27:26फाइल है वो भी दिखाई देंगी। ठीक है? ये
- 27:29अमxml
- 27:31फाइल है। और जो हमने वहां पर जो
- 27:32डिपेंडेंसीज देखी थी वो सारी डिपेंडेंसी
- 27:34यहां पर दिखाई देगी। और अगर आप इसे रन
- 27:36करते हो देखिए अभी तो फिलहाल इस प्रोजेक्ट
- 27:38में कुछ है नहीं। ठीक है? कुछ कोड लिखा ही
- 27:40नहीं है हमने। ठीक है? बस इसे ले लिया है
- 27:42लोकल मशीन पर और इसको इस्तेमाल करना चाह
- 27:45रहे हैं। तो देखिए यह रन तो हो ही जाएगा।
- 27:48ठीक है? और यह रन होगा 8080 पर। तो अगर आप
- 27:51चाहो तो इसे एक्सेस भी कर सकते हो। एक्सेस
- 27:54करके देखते हैं क्या दिखता है। लोकल होस्ट
- 27:56कोलन 880 ऐसे तो देखिए यहां पर कुछ है
- 28:00नहीं। एरर आ रहा है 404 यानी कि आपने यहां
- 28:03पर इस एंड पॉइंट पर कुछ बनाया नहीं है तो
- 28:05बट ठीक है लेकिन रिक्वेस्ट तो आ रही है और
- 28:08यहां पर देखिए आपको एरर भी दिखाई दे रहा
- 28:10है। ठीक है तो प्रोजेक्ट सेटअप तो डन है
- 28:12और बढ़ते हैं नेक्स्ट स्टेप की ओर।
- 28:20अब हमें क्या करना है? अब हमें और एंटिटीज़
- 28:24क्रिएट करनी है और फिर उसके बीच में जो
- 28:26रिलेशनशिप्स हैं वह भी डिफाइन करने हैं।
- 28:28ठीक है? तो सबसे पहले मैं क्या करूंगा?
- 28:29यहां पर आ जाएंगे मॉडल्स में और यहां पर
- 28:31मैं एक और नई क्लास बना लूंगा जिसका नाम
- 28:34है एक्टिविटी। ठीक है? ये एक्टिविटी नाम
- 28:37की क्लास बन गई। यहां पर आ जाएंगे। सबसे
- 28:40पहला काम हमें आदत डाल लेनी चाहिए कि अगर
- 28:43आप कोई भी मॉडल वगैरह बना रहे हो उसके ऊपर
- 28:45एंटिटी तो मार्क करनी ही है। ठीक है? और
- 28:47यहां पर इसमें आईडी डिफाइन करना भी जरूरी
- 28:49है। तो यहां पर ये जो आईडी है इसे मैं ले
- 28:52लूंगा। यहां पर इसे ऐड कर दूंगा। ठीक है?
- 28:55और यहां पर मैं मेंशन करूंगा प्राइवेट।
- 29:00ठीक है? और यहां पर इंटीजर
- 29:03ड्यूरेशन इस तरीके से और यहां पर प्राइवेट
- 29:08कैलरीज़ बर्न। ठीक है? तो देखिए ये सारी जो
- 29:11है डिटेल्स है ना ये एक्टिविटी रिलेटेड
- 29:13है। तो इसमें कैलोरीज़ बर्न ये सारी
- 29:15डिटेल्स आएंगी। ठीक है? जैसे कि स्टार्ट
- 29:17टाइम आएगा। तो यहां पर मैं लिखूंगा
- 29:20प्राइवेट लोकल डेट एंड टाइम और यहां पर
- 29:23लिख दूंगा स्टार्ट टाइम इस तरीके से और
- 29:27फिर यहां पर मैं लिख दूंगा अ एक हिसाब से
- 29:31प्राइवेट क्रिएटेड एट और क्रिएटेड डेट और
- 29:34लोकल डेट ये भी मिल जाएगी। ठीक है?
- 29:36क्रिएटेड एट तो ये मैं कॉपी पेस्ट कर
- 29:39दूंगा यहां पर। क्रिएटेड एट और अपडेटेड
- 29:41एट। ठीक है? इतना मैंने डिफाइन कर दिया।
- 29:44और दूसरी चीज मुझे ना कुछ इनम डेटा भी
- 29:48स्टोर करना होगा। जैसे कि एक्टिविटी की
- 29:50टाइप क्या है? ठीक है? एक्टिविटी की टाइप
- 29:51क्या है? तो मैं क्या करूंगा? एक सेपरेट
- 29:53क्लास बना लूंगा यहां पर और उसका नाम
- 29:56दूंगा एक्टिविटी टाइप। ऐसे एक्टिविटी
- 29:59टाइप। तो ये एक क्लास है। एक हिसाब से
- 30:01मास्टर लिस्ट होने वाली है ये। ठीक है? एक
- 30:03हिसाब से मास्टर लिस्ट होने वाली है।
- 30:05जिसमें एक्टिविटी की जो टाइप्स है उसे हम
- 30:08डिफाइन करेंगे। लेकिन ये क्लास नहीं होने
- 30:09वाली है। सॉरी ये रहने वाली है इनम। ठीक
- 30:11है? इनम jवा में एक टाइप है जहां पर आप जो
- 30:15फिक्स्ड वैल्यूज़ है उसे स्टोर कर सकते हो।
- 30:17ठीक है? तो यहां पर देखिए मैं सब स्टोर कर
- 30:19दूंगा। मैं जैसे कि वॉकिंग, अ रनिंग,
- 30:22वॉकिंग और फिर साइकिलिंग।
- 30:26ठीक है? तो ये पूरा फिल कर देता हूं मैं।
- 30:28तो ये देखिए ये मैंने मेंशन कर दिया है।
- 30:29यहां पर जो भी आप लिस्ट ऐड करना चाहो अपने
- 30:32एप्लीकेशन में आप उसे इस तरीके से मेंशन
- 30:34कर सकते हो। और फिर ये जो इनम की जो
- 30:37वैल्यूज़ है इसे आपको मैप करना है यहां पर।
- 30:40ठीक है? एक्टिविटीज़ टाइप में। तो यहां पर
- 30:42मैं क्या करूंगा? प्राइवेट और यहां पर
- 30:43लिखूंगा एक्टिविटी टाइप और फिर यहां पर
- 30:46लिख दूंगा टाइप। ठीक है? और इसमें जो भी
- 30:49डेटा जाएगा ठीक है? वो इनमरेटेड है। तो
- 30:52यहां पर मैं इन्यूमरेटेड एनोटेशन का
- 30:53इस्तेमाल करूंगा। और यहां पर लिखूंगा इनम
- 30:56टाइप स्ट्रिंग। तो ये मैंने क्यों लिखा
- 30:59है? इनम टाइप स्ट्रिंग इस तरीके से। ठीक
- 31:01है? इसका जो इसकी जो वजह है वो काफी
- 31:04क्लियर है। मैं आपको एक्सप्लेन कर देता
- 31:05हूं। देखिए आप कभी भी इनम टाइप का
- 31:07इस्तेमाल करते हो डेटाबेस लेवल पर तो यहां
- 31:09पर होगा क्या कि जो इसका इंडेक्स है 0 1 2
- 31:13वो स्टोर होगा। ठीक है? अगर मान लीजिए मैं
- 31:16साइकिलिंग स्टोर कर रहा हूं तो 1 2 3 इस
- 31:18ऐसी वैल्यू स्टोर होगी। लेकिन डेटाबेस
- 31:21लेवल पर मुझे वैल्यू्यूज नहीं चाहिए। मैं
- 31:22चाहता हूं कि स्ट्रिंग स्टोर हो।
- 31:24एक्टिविटी का नाम स्टोर हो। जैसे कि
- 31:25वॉकिंग रनिंग डेटाबेस लेवल पर। तो इसके
- 31:28लिए मैं इनम टाइप स्ट्रिंग मेंशन कर रहा
- 31:30हूं। अगर वो मेंशन नहीं करूंगा तो वो उस
- 31:32तरीके से स्टोर नहीं होगा। ठीक है? तो ये
- 31:34हो गया यहां तक और फिर एक्टिविटी टाइप हो
- 31:37चुकी है। एडिशनल मैट्रिक्स नाम का एक
- 31:41फील्ड आएगा यहां पर। ठीक है? तो मैं क्या
- 31:43करूंगा? यहां पर लिखूंगा प्राइवेट
- 31:46मैप। ठीक है? और यहां पर मैं लिखने वाला
- 31:48हूं अ स्ट्रिंग ऑब्जेक्ट ऐसे। ठीक है? और
- 31:53यहां पर लिख दूंगा एडिशनल मैट्रिक्स। तो
- 31:55कोई भी एडिशनल मैट्रिक्स हो जो आपको
- 31:57डेटाबेस में स्टोर आप करना चाह रहे हो।
- 32:00ठीक है? एडिशनल।
- 32:02ठीक है? है जो आप डेटाबेस में स्टोर करना
- 32:04चाह रहे हो तो मैं उसे मैप के फॉर्म में
- 32:06एक्सेप्ट करूंगा। ठीक है? मैप के फॉर्म
- 32:08में लेकिन डेटाबेस में ये स्टोर होगा
- 32:09जेएसएन के फॉर्म में। तो यहां पर मैं
- 32:11लिखूंगा कॉलम कॉलम एनोटेशन और यहां पर
- 32:13कहूंगा कॉलम डेफिनेशन
- 32:16कॉलम डेफिनेशन। अच्छा सॉरी ये ऐसे नहीं
- 32:19आएगा। कॉलम डेफिनेशन स्मॉल में आएगा। और
- 32:22फिर यहां पर लिख दूंगा jसन इस तरीके से।
- 32:24ठीक है? इसका मतलब ये जो डेटा है ये jसन
- 32:26की तरह स्टोर होना है डेटाबेस में। ठीक
- 32:28है? और फिर यहां पर लिख दूंगा जेडीबीसी
- 32:31टाइप कोड। अच्छा सॉरी जेडीबीसी टाइप कोड
- 32:34और फिर यहां पर लिख दूंगा एसक्यूएल टाइप्स
- 32:38और
- 32:40टाइप्स और यहां पर लिख दूंगा डॉट। देखिए
- 32:43यहां पर सारे टाइप्स हैं। तो यहां पर jसन
- 32:45सेलेक्ट कर दूंगा। ठीक है? तो यहां पर ये
- 32:48सारी चीजें लिखने के बाद हमें हमारे पास
- 32:51एक चीज़ ये हो जाएगी कि हम डेटाबेस में जो
- 32:53है वो अ ये स्टोर कर सकते हैं। जेसन
- 32:56वैल्यूज़ स्टोर कर सकते हैं। ठीक है? इतना
- 32:58हो गया और तो मैंने सब कुछ डिफाइन तो कर
- 33:01ही लिया है और कुछ ऐसा दिख तो नहीं रहा
- 33:03पेंडिंग। ठीक है? इतना करने के बाद हम
- 33:06क्या करेंगे? अ इसको रन करके देखते हैं एक
- 33:09हिसाब से। ठीक है? यहां पर जो अनवांटेड
- 33:11इंपोर्ट्स है उसको मैं हटा देता हूं। इसको
- 33:14रीरन करके देखते हैं। तो आइडियली होना
- 33:15क्या चाहिए? एक्टिविटी नाम की जो टेबल है
- 33:18वो हमें दिखाई देनी चाहिए डेटाबेस लेवल
- 33:20पर। ठीक है? तो यह रन हो चुका है। यहां पर
- 33:23आएंगे। यहां पर इसको रिफ्रेश कर देंगे और
- 33:24एक्टिविटी आपको दिखाई दे रहा है। देखिए इस
- 33:27तरीके से। ठीक है? एक्टिविटी टेबल भी बन
- 33:29चुकी है। तो अब यह बनने के बाद अ
- 33:32रिकमेंडेशंस की टेबल जो है वो भी बना सकते
- 33:34हैं हम यहां पर। ठीक है? तो यहां पे
- 33:37रिकमेंडेशंस नाम की एक रिकमेंडेशन नाम
- 33:41दूंगा मैं इसे। ठीक है? ये मैंने बना लिया
- 33:43है। अब रिकमेंडेशन में भी मैं सारी की
- 33:45सारी फील्ड्स जो है वो डिफाइन करूंगा। तो
- 33:47सबसे पहले तो आईडी फील्ड तो आएगी ही। तो
- 33:50आईडी को मैं ऐसे ही कॉपी पेस्ट कर देता
- 33:51हूं। ठीक है? ये सेम आईडी फील्ड आएगी और
- 33:54यहां पर मैं लिख दूंगा एंटीटी इस तरीके
- 33:56से। ठीक है? और यहां पर मैं लिख दूंगा अ
- 34:01प्राइवेट स्ट्रिंग और फिर टाइप कि ये किस
- 34:05टाइप का रेकमेंडेशन है। ठीक है? फिर मैं
- 34:08रेकमेंडेशन को भी स्टोर करूंगा। प्राइवेट
- 34:11स्ट्रिंग और फिर रेकमेंडेशन।
- 34:15ठीक है? और फिर यहां पर इंप्रूवमेंट्स को
- 34:19स्टोर करना है मुझे। तो इंप्रूवमेंट्स को
- 34:21मैं स्टोर करूंगा या मैं रखूंगा ऐप में
- 34:24लिस्ट के तौर पर और यहां पर मैं लिखूंगा
- 34:26इंप्रूवमेंट्स इस तरीके से। ठीक है? और
- 34:30फिर मुझे सजेशंस भी चाहिए यहां पर। तो
- 34:32यहां पर लिखूंगा सजेशंस ऐसे। ठीक है?
- 34:35इंप्रूवमेंट सजेशंस और मुझे चाहिए सेफ्टी
- 34:39के जो इंस्ट्रक्शंस है वो। ठीक है? सेफ्टी
- 34:42इस तरीके से। यह भी आ चुके है और यहां पर
- 34:45क्रिएटेड
- 34:47टाइम और अपडेटेड टाइम वह भी मेंशन कर
- 34:49दूंगा। ठीक है? तो इतनी चीज हो चुकी है।
- 34:52ठीक है? अब देखिए ये जो इंप्रूवमेंट
- 34:55सजेशन, सेफ्टी ये सारी जो चीजें हैं ये
- 34:57मैं चाहता हूं jसन टाइप में स्टोर हो। ठीक
- 35:00है? तो उसके लिए मैं फिर से मैंने जैसा
- 35:02यहां पर डिफाइन किया हुआ है। ये तो jसन
- 35:05डेटा की तरह मैं स्टोर करना चाहता हूं
- 35:07मेरे डेटाबेस में। तो ये मैं मेंशन कर
- 35:09दूंगा यहां पर। ठीक है? यहां पर भी मैं
- 35:11मेंशन कर दूंगा। और फिर यहां पर भी मेंशन
- 35:14कर दूंगा। तो तीनों जगह पर मैंने मेंशन कर
- 35:16दिया कि यह जो कॉलम है इसमें जो डाटा
- 35:18स्टोर होना है वो जेएसएन के तौर पर स्टोर
- 35:20होना है। ठीक है? अब देखिए जो डिफॉल्ट
- 35:22यहां पर रेकमेंडेशन है वो लंबी भी हो सकती
- 35:24है और जो डिफ़ॉल्ट साइज़ होती है कॉलम के
- 35:27डेटाबेस में वो 255 कररेक्टर्स की होती
- 35:29है। डिफ़ॉल्ट डिपेंडिंग ऑन द डेटाबेस टाइप।
- 35:32अगर आप कोई दूसरे टाइप का डेटाबेस होता है
- 35:33तो उसकी जो डिफ़ॉल्ट होगी वो अप्लाई होगी।
- 35:35माय सीक्वल में जितना मुझे पता है 255
- 35:37कररेक्टर्स की डिफॉल्ट होती है। पोस्ट
- 35:40ग्रेस में भी सिमिलर होता है। मैं चाहता
- 35:41हूं यहां पर लंबी रेकमेंडेशन सेव हो। ठीक
- 35:43है? तो मैं क्या करूंगा? यहां पर कॉलम लिख
- 35:45दूंगा। ठीक है? और यहां पर लिख दूंगा
- 35:47लेंथ। तो ये कॉलम एनोटेशन की मदद से आप है
- 35:49ना चीजों को मॉडिफाई कर सकते हो थोड़ा।
- 35:51यानी कि कुछ रूल्स है अगर आप चाहते हो
- 35:53कस्टम रूल्स तो कॉलम एनोटेशन की मदद से कर
- 35:55सकते हो। यहां पे मैंने लेंथ लिख दिया
- 35:572000। ठीक है? तो इसकी जो लेंथ है वो
- 35:59थोड़ी बड़ी हो जाएगी। ठीक है? तो इतना हो
- 36:02चुका है। अब इसको री रीरन करते हैं। ठीक
- 36:04है? इसको देखते हैं क्या दिखाई देता है
- 36:06हमें। तो रीरन करने पर सारी जो चीजें है
- 36:09वह डेटाबेस में दिखाई तो देनी चाहिए।
- 36:11देखिए आप यहां पर आते हो अगर और यहां पर
- 36:14इसको रिफ्रेश करता हूं तो देखिए
- 36:15रिकमेंडेशन भी आ गया और देखिए इस तरीके से
- 36:18रिकमेंडेशन आई है। ठीक है? और यहां पर अगर
- 36:20आप देखोगे कॉलम्स में तो ये सारे कॉलम्स
- 36:22हैं। ठीक है? और देखिए टाइप को आप देखोगे
- 36:26देखिए अगर आप कोई भी कॉलम को सेलेक्ट करते
- 36:28हो तो यहां पर उसकी लेंथ आपको दिखाई देगी।
- 36:30तो टाइप है 255 कैरेक्टर्स का। ठीक है?
- 36:32ठीक है? अगर मैं रिकमेंडेशन को सेलेक्ट
- 36:34करता हूं तो देखिए रेमेंडेशन की जो लेंथ
- 36:35है वो 2000 की है। क्यों है 2000 की?
- 36:38क्योंकि हमने कोड में लिखा हुआ है कि 2000
- 36:40चाहिए। ठीक है? सजेशंस को देखिए तो ये jसन
- 36:43है। ठीक है? यहां पर देखिए ये कॉलम्स पर
- 36:45अगर आप क्लिक करते हो ना और सेलेक्ट करते
- 36:47हो तो सारे कॉलम्स की जो डेफिनेशंस है वो
- 36:49आपको दिखाई देंगे। यहां पर देखिए सेफ्टी
- 36:51भी json है। इंप्रूवमेंट भी js स्टोर
- 36:53करेगा। डायरेक्ट jसन डेटाबेस में स्टोर कर
- 36:55देगा। डायरेक्ट आप जो jसन भेजोगे सेव करने
- 36:58के लिए वह पूरा का पूरा स्टोर कर देगा।
- 37:00रेकमेंडेशन अ तो चलो वेयर केयर है 2000
- 37:03स्टोर करेगा क्रिएटेड एट ये डेट टाइम है
- 37:06ठीक है आईडी भी डेट टाइम है तो देखिए इस
- 37:07तरीके से आप है ना जो यहां पर रूल्स लिखे
- 37:10हो आप कोड में वो किस तरीके से अप्लाई हो
- 37:12रहे हैं वो आप देख सकते हो ये कॉलम की मदद
- 37:15से ठीक है यहां पर आप देख सकते हो देखिए
- 37:17ये वेयर कैरयर है सब कुछ वेयर कैर है वेयर
- 37:19केयर 255 डिफ़ॉल्ट है अगर आपने लेंथ
- 37:21स्पेसिफाई नहीं करी है तो ठीक है एडिशनल
- 37:23मैट्रिक्स पे सेलेक्ट करते हो तो देखिए ये
- 37:25jसन था तो ये jसन की तरह स्टोर हो रहा है
- 37:27ठीक है कैलोरीज बर्न इंटीजर क्रिएटेड एट
- 37:31डेट टाइम है। तो ये उस तरीके से डिफाइन हो
- 37:34रहा है। ठीक है? तो सब कुछ सही तरीके से
- 37:35प्रोपोगेट हो रहा है डेटाबेस लेवल पर। ठीक
- 37:38है? अब हमें क्या करना है? अब हम
- 37:39रिलेशनशिप्स डिफाइन करेंगे। ठीक है?
- 37:41रिलेशनशिप डिफाइन करने के लिए हमें जीपीए
- 37:43एनोटेशन का इस्तेमाल करना होगा। तो मैं
- 37:45सबसे पहले तो एक्टिविटी पे आ जाऊंगा। ठीक
- 37:49है? या सबसे पहले आ जाते हैं यूजर पर। ठीक
- 37:51है? यूजर से शुरुआत करते हैं। ठीक है?
- 37:54देखिए
- 37:56यूजर में हमें एक लिंक बनानी है
- 37:58एक्टिविटीज के लिए और एक लिंक बनानी है
- 38:00हमें रिकमेंडेशंस के लिए। ठीक है? तो ये
- 38:02वन टू मेनी रिलेशनशिप होने वाला है। यानी
- 38:04कि एक यूजर की मल्टीपल एक्टिविटीज़ हो सकती
- 38:06है और एक यूजर के अगेंस्ट मल्टीपल
- 38:08रिकमेंडेशंस भी हमारे डेटाबेस में हो सकती
- 38:10है। ठीक है? तो यहां पर मैं लिखूंगा वन टू
- 38:13मेनी इस तरीके से। और यहां पर मैं लिख
- 38:16दूंगा प्राइवेट लिस्ट लिखूंगा क्योंकि अदर
- 38:19साइड जो रिलेशनशिप है वो मेनी साइड है। तो
- 38:23यहां पर लिस्ट से वो रिप्रेजेंट होगा।
- 38:25एक्टिविटी लिख दूंगा और यहां पर लिख दूंगा
- 38:27एक्टिविटीज़ इस तरीके से। और यहां पर लिख
- 38:29दूंगा न्यू अरे लिस्ट। ठीक है? तो इस
- 38:31तरीके से एक्टिविटीज़ बन गई। और ये हो गया।
- 38:35और यहां पर लिख दूंगा अह मैप्ड बाय। ठीक
- 38:37है? तो जो अदर साइड ऑफ़ रिलेशनशिप है वो
- 38:40यूजर फील्ड से मैप्ड है। ठीक है? एंड यहां
- 38:42पर कैस्केडिंग लिख दूंगा। कैस्केडिंग ऑल
- 38:45कैस्केडिंग का मतलब यह है कि अगर आप कोई
- 38:47ऑपरेशन करते हो यूजर एंटिटी पे यहां पर
- 38:49यानी कि क्रिएशन ऑफ यूजर एडिशन ऑफ यूजर आप
- 38:53डिलीट करते हो यूजर को अपडेट करते हो तो
- 38:55वो जो ऑपरेशंस हैं वो एक्टिविटी में भी
- 38:57प्रोपोगेट किए जा सकते हैं। तो यहां पर
- 38:58कैस्केड ऑल लिख दिया मैंने। ठीक है? यूजर
- 39:00को डिलीट कर दिया तो उसके रेकमेंडेशंस भी
- 39:02डिलीट हो सकते हैं। एक्टिविटी भी डिलीट हो
- 39:04सकती है। सॉरी ये एक्टिविटी के लिए लिख
- 39:05रहे हैं तो एक्टिविटी डिलीट हो सकती है।
- 39:07ठीक है? कैस्केडिंग ऑल लिख दिया। और यहां
- 39:09पर ऑर्फन रिमूवल को ट्रू कर देंगे हम।
- 39:11ऑर्फोन रिमूवल का मतलब अगर कोई देखिए यहां
- 39:14पर वेदर टू अप्लाई द रिमूवल ऑपरेशन टू द
- 39:16एंटिटीज़ दैट हैव बीन रिमूव्ड फ्रॉम द
- 39:18रिलेशनशिप। तो अगर यूजर रिमूव होता है तो
- 39:22उसके अगेंस्ट की एक्टिविटीज़ रख के कुछ
- 39:24पॉइंट ही नहीं है। करेक्ट? यूजर को अगर आप
- 39:26डिलीट करते हो तो उसके अगेंस्ट जो लिंक्ड
- 39:28एक्टिविटीज़ थी यानी कि यूजर ने जो
- 39:30एक्टिविटी की थी उसको डेटाबेस में रख के
- 39:32कोई पॉइंट है। क्योंकि यूजर ही नहीं है।
- 39:33तो वो एक्टिविटी किसके अगेंस्ट मैप्ड है?
- 39:35अभी मैप्ड है ही नहीं। तो वो जो
- 39:37एक्टिविटीज है जो डिलीटेड यूजर की थी वो
- 39:40अब ऑर्फन हो गई। करेक्ट उसे ऑर्फन कहते
- 39:42हैं। ऑर्फन ऑर्फन है और फिर ऑर्फन रिमूवल
- 39:46को ट्रू अगर आप बोलते हो तो ये ऑर्फंस को
- 39:48रिमूव कर देगा। ऑर्फन रखेगा ही नहीं। तो
- 39:50मैंने ट्रू मार्क कर दिया। ठीक है? इतना
- 39:52मैंने कर लिया। और दूसरी चीज़ अ यहां पर जो
- 39:55jसन है अ यानी कि देखिए मैं एपीआई बना रहा
- 39:59हूं। तो मैं jसन में ये नहीं चाहता हूं।
- 40:01ये ये वाली जो फील्ड है उसको नहीं चाहता
- 40:03हूं। तो यहां पर मैं एक फील्ड ऐसे ऐड कर
- 40:05सकता हूं। jसन इग्नोर। jसन इग्नोर का मतलब
- 40:07है जो jसन है देखिए स्प्रिंग बूट क्या
- 40:10करेगा? ऑटोमेटिकली jसन में कन्वर्ट करेगा
- 40:13डेटा को। करेक्ट? आप अगर यूजर रिटर्न
- 40:16करोगे तो ये एक्टिविटी को भी jसन में
- 40:17कन्वर्ट कर दे। तो मैं यहां पर jसन इग्नोर
- 40:19लिख के रख रहा हूं ताकि ये ट्रांसलेट ना
- 40:21हो jसन में। ठीक है? तो इतना हो गया। और
- 40:24इसी को मैं कॉपी पेस्ट करूंगा क्योंकि ये
- 40:26सेम चीज़ होगी रेकमेंडेशन के लिए यहां पर।
- 40:28ठीक है? तो मैप्ड बाय यूजर कास्केड ऑल और
- 40:31ये सारी चीजें मुझे लिखना है और यहां पर
- 40:33लिस्ट ऑफ एक्टिविटी के बजाय लिस्ट ऑफ
- 40:34रेकमेंडेशन और यहां पर मैं लिख दूंगा
- 40:37रेमेंडेशंस।
- 40:38ठीक है? ऐसे और ये भी अरे लिस्ट होने वाला
- 40:41है सेम चीज़। ओके? ये हो चुका है यहां पर।
- 40:44अब हमें आना चाहिए एक्टिविटी में। ठीक है?
- 40:47अब देखिए एक्टिविटी में हम क्या करेंगे?
- 40:49यहां पर एक डिफाइन करेंगे। अ यहां पर
- 40:51रिलेशनशिप सबसे पहले तो होना चाहिए यूजर
- 40:54के लिए। ठीक है? तो यहां पर आ जाएंगे और
- 40:58यहां पर कहेंगे प्राइवेट
- 41:00यूजर ठीक है और फिर यूजर इस तरीके से अब
- 41:04ये है मेनी साइड ऑफ द रिलेशनशिप तो यहां
- 41:06पर आएगा मेनी टू वन सॉरी मेनी टू मेनी
- 41:08नहीं मेनी टू वन ठीक है और यहां पर मैं
- 41:11कहूंगा जॉइन
- 41:13जॉइन कॉलम ठीक है और जॉइन कॉलम यानी कि ये
- 41:16जॉइन टेबल है उसकी डेफिनेशन हम मेंशन कर
- 41:18रहे हैं। ठीक है? जॉइनिंग की जो डेफिनेशन
- 41:20है वो मेंशन कर रहे हैं। तो यूजर आईडी
- 41:22होगा यहां पर। ठीक है? जॉइन कॉलम का नाम।
- 41:25ठीक है? है क्या ये नल हो सकता है? जी
- 41:26नहीं। तो नलेबल को फॉल्स रखेंगे हम। ठीक
- 41:29है? और फॉरेन की जो है फॉरेन की की जो नाम
- 41:34है उसका हम नाम भी डिफाइन कर सकते हैं। तो
- 41:37यहां पर फॉरेन की और यहां पर मैं लिख
- 41:39दूंगा फॉरेन की
- 41:43इस तरीके से और इसका नाम डिफाइन कर देंगे
- 41:45हम ऐसे और कहेंगे एफ के अंडरस्कोर
- 41:49एक्टिविटी अंडरस्कोर यूजर। ठीक है? ठीक
- 41:53है? ठीक है? तो ये फॉरेन के रिलेशनशिप
- 41:55हमने डिफाइन किया है। तो अगर आप कोई ऐसी
- 41:57एक्टिविटी बनाने की कोशिश करते हो देखिए
- 41:59इसका मैं पावर बताता हूं। अगर आप कोई ऐसी
- 42:01एक्टिविटी बनाने की कोशिश करते हो जिसमें
- 42:04जो यूजर आईडी है वो वैलिड नहीं है। ठीक
- 42:06है? तो डेटाबेस लेवल पर ब्लॉक हो जाएगा वो
- 42:09क्योंकि फॉरेन की रिलेशनशिप बनी हुई है।
- 42:11ठीक है? तो फॉरेन के रिलेशनशिप का नाम भी
- 42:13हमने दिया और यहां पर इसको भी मैं जसन
- 42:15इग्नोर कर देता हूं। तो जितने भी
- 42:16रिलेशनशिप है ना उसको मैं सिंपलीसिटी के
- 42:18लिए जसन इग्नोर मार्क कर रहा हूं। ठीक है?
- 42:21ताकि जसन से वो अलग रहे। ठीक है? और अगर
- 42:23हमें क्रिएट करना है रेमेंडेशन की अ
- 42:25सेविंग रेकमेंड रेकमेंडेशन की सेविंग
- 42:27एपीआई क्रिएट करनी है तो वो अलग से हम
- 42:29क्रिएट करें। रेकमेंडेशन को अलग से सेव
- 42:31करें। यूजर के साथ ये रेकमेंडेशन सेव
- 42:33एक्टिविटी सेव ये सारी चीजें हमें नहीं
- 42:34करनी है। यूजर अलग से क्रिएट हो गया।
- 42:36एक्टिविटी अलग से क्रिएट हो गई।
- 42:38रेकमेंडेशन अलग से क्रिएट हो गए। ठीक है?
- 42:40सबकी अलग-अलग एंड पॉइंट्स होंगे। अगर आप
- 42:42साथ में करना चाहते हो तो json इग्नोर को
- 42:44हटा सकते हो। ठीक है? इतना हो गया। अब
- 42:47यहां पर इसी में हमें एक्टिविटी और
- 42:49रेकमेंडेशंस की जो लिंक है वो भी बनानी
- 42:52होगी। तो यहां पर आ जाते हैं और यहां पर
- 42:54मैं बनाऊंगा वन टू मेनी रिलेशनशिप। ठीक
- 42:57है? क्योंकि जो रेकमेंडेशन है वो मेनी
- 42:59साइड ऑफ द रिलेशनशिप है और यहां पर लिख
- 43:01दूंगा मैप्ड बाय एक्टिविटी।
- 43:03क्योंकि वहां पे जो फील्ड हम बनाएंगे उसका
- 43:05नाम एक्टिविटी दे देंगे। और कैस्केट लिख
- 43:08देंगे ऑल। ठीक है? और ऑर्फन रिमूवल भी कर
- 43:11देंगे ट्रू। ठीक है? और यहां पर मैं लिख
- 43:13दूंगा जसन इग्नोर इस तरीके से। और यहां पर
- 43:16मैं लिख दूंगा प्राइवेट लिस्ट। क्योंकि जो
- 43:18अदर साइड ऑफ रिलेशनशिप है वो मेनी साइड
- 43:20है। तो यहां पर लिस्ट लिखेंगे हम क्योंकि
- 43:22उसको लिस्ट में होल्ड करना पड़ेगा। मेनी
- 43:24साइड है तो रेकमेंडेशन और यहां पर लिख
- 43:27देंगे रेकमेंडेशंस और यहां पर एक नई अरे
- 43:30लिस्ट बना लेंगे इस तरीके से। ठीक है? तो
- 43:33ये हो गई अ एक्टिविटी और रेकमेंडेशन की
- 43:37मैपिंग। अब रेकमेंडेशन में आ जाते हैं। और
- 43:39रेकमेंडेशन में जो भी मैपिंग करने की
- 43:41जरूरत है वो सारी मैपिंग हम यहां पर कर
- 43:42लेंगे। ठीक है? तो सबसे पहले तो यहां पर आ
- 43:46जाएंगे और यहां पर यूजर से इसको लिंक कर
- 43:48देंगे। ठीक है? तो यहां पर मेनी टू वन
- 43:50क्योंकि ये मेनी साइड ऑफ द रिलेशनशिप है।
- 43:52यूजर वन साइड ऑफ द रिलेशनशिप है। ठीक है?
- 43:54यहां पर जॉइन कॉलम मैं ऐड कर दूंगा। ठीक
- 43:56है? जॉइन कॉलम और यहां पर मैं कहूंगा नेम
- 44:00इज़ इक्वल टू और यहां पर यूजर अंडरस्कोर
- 44:03आईडी जॉइन कॉलम और नल लेबल इक्वल टू
- 44:06फॉल्स। और यहां पर फॉरेन की की जो
- 44:09रिलेशनशिप है उसको मेंशन कर दूंगा। और
- 44:12फॉरेन की और उसको नेम दे देंगे हम। ठीक
- 44:15है? तो नेम इज इक्वल टू FK अंडर
- 44:19रेमेंडेशन। ठीक है? तो इस तरीके से ये जो
- 44:24फॉरेन की है वो बन जाएगी। ठीक है? और यहां
- 44:26पर हम आ जाएंगे और यहां पर हम लिख देंगे अ
- 44:29जेसन इग्नोर। इसको भी जेसन इग्नोर कर
- 44:31दूंगा मैं और यहां पर लिख दूंगा प्राइवेट
- 44:33यूजर यूजर ऐसे। ठीक है? तो ये हो गई यूजर
- 44:38और रेमेंडेशन की लिंकिंग। ठीक है? अभी
- 44:41हमें क्या करना है? ये सेम को मैं
- 44:42डुप्लीकेट करूंगा यहां पर और हम क्रिएट
- 44:44करेंगे मेनी टू वन रिलेशनशिप बिटवीन
- 44:47रेकमेंडेशन और एक्टिविटी। ठीक है? तो यहां
- 44:49पर मैं लिख दूंगा अ यहां पर यूजर आईडी के
- 44:51बजाय एक्टिविटी आईडी आ जाएगा। एक्टिविटी
- 44:54आईडी इनलेबल फॉल्स ये सब तो सही है। ठीक
- 44:56है? रेमेंडेशन और फिर यहां पर लिख देंगे
- 44:59एक्टिविटी।
- 45:01सारी जगह जहां पर यूजर लिखा हुआ है, वहां
- 45:03पर एक्टिविटी कर देंगे। ठीक है? यह यूजर
- 45:06की बजाय हो जाएगा एक्टिविटी। ठीक है?
- 45:08एक्टिविटी ऐसे। ठीक है? इतना हो गया और
- 45:12किसी चीज़ की तो जरूरत है नहीं। अब इसको रन
- 45:14करके देखते हैं कि क्या होता है। ठीक है?
- 45:15कुछ इशू वगैरह या एरर तो कुछ आनी नहीं
- 45:18चाहिए क्योंकि सब सीधा-सीधा लिखा है हमने
- 45:20कोड। ऐसे कुछ गड़बड़ तो हुई नहीं है। तो रन
- 45:24हो गया कोड। यहां पर आ जाते हैं। इसको
- 45:26रीलोड कर लेंगे। ठीक है? रीलोड के बाद अब
- 45:29अगर आप देखते हो एक्टिविटी की जो डेफिनेशन
- 45:32है तो यहां पर देखिए यूजर आईडी आ गया है।
- 45:34ठीक है? यूजर आईडी आ गया है यहां पर
- 45:36एक्टिविटी में। और यहां पर आप आओगे
- 45:40रेकमेंडेशन में तो यहां पर देखिए आपको
- 45:43दिखाई देगा एक्टिविटी आईडी भी दिखाई देगा
- 45:45और यूजर आईडी भी दिखाई देगा। बिल्कुल सही
- 45:47बात है। और फिर आप यूजर में अगर आप आते हो
- 45:50तो यहां पर आपको अच्छा यहां पर कुछ नहीं
- 45:52दिखाई देगा। यहां पर आईडी क्रिएटेड एट ये
- 45:55सारी चीजें तो है ही अपडेटेड एट। ठीक है?
- 45:58तो रिलेशनशिप्स तो सारी सही तरीके से
- 46:00क्रिएट हो रही है। ऐसी कोई दिक्कत तो आई
- 46:01नहीं है। उम्मीद करता हूं ये हेल्पफुल
- 46:03रहा। रिलेशनशिप्स कैसे बनानी है। मल्टीपल
- 46:05एंटिटीज़ हमने सेट की। ठीक है? अ JSON में
- 46:08हमने काफी सारी चीजें सीखी। देखिए एक एक
- 46:12वीडियो में क्या-क्या चीजें सीखी? सबसे
- 46:14पहले तो मल्टीपल एंटिटीज़ हमने सेट की यहां
- 46:16पर। ठीक है? फिर कुछ नए एनोडेशंस देखे।
- 46:19जैसे कि JSON इग्नोर ये रिलेशनशिप्स कैसे
- 46:21बनानी है वो देखे हमने। कैस्केट ऑो रहता
- 46:23है ये देखी हमने। ठीक है? और फिर अगर आप
- 46:26एक्टिविटी में आते हो तो यहां पर हमने jसन
- 46:28में डेटा रिलेशन रिलेशनल डेटाबेस में जैसे
- 46:32कि माय सीक्वल और पोस्टग्रेस सीक्वल में
- 46:33रोज़ एंड कॉलम्स में डेटा स्टोर होता है।
- 46:36तो रोज़ एंड कॉलम्स में एक सेल में आप jसन
- 46:38डेटा कैसे स्टोर कर सकते हो वही सेम फॉर्म
- 46:40में jसन फॉर्म में। ठीक है? बिना ब्रेक
- 46:42किए jसन को वो हमने देखा। तो रिलेशनल
- 46:45डेटाबेस में आप इस तरीके से jसन स्टोर कर
- 46:46सकते हो। तो अगर ऐसी कोई रिक्वायरमेंट है,
- 46:48कोई एपीआई का रिस्पांस आपको डेटाबेस में
- 46:50स्टोर करना है, इसका इस्तेमाल करना है।
- 46:52ठीक है? ये काफी जरूरत पड़ती है और यहां
- 46:54पर मेनी टू मेनी रिलेशनशिप मेनी टू वन
- 46:56रिलेशनशिप हमने क्रिएट किए। ठीक है? और
- 46:58सारे एनोटेशंस देखे और यहां पर jसन में
- 47:00कैसे स्टोर करना है वो भी हमने देखा है।
- 47:02ठीक है? एक और एनहांसमेंट मैं ऐड कर देता
- 47:05हूं। ठीक है? जो कि मेनी टू जो मेनी साइड
- 47:07ऑफ द रिलेशनशिप है यहां पर। वहां पर फेच
- 47:10टाइप भी ऐड कर देता हूं मैं। तो फेच टाइप
- 47:11का मतलब क्या है? देखिए अगर आप डेटा फेच
- 47:15करते हो। आप यूजर को फेच करते हो तो ये
- 47:18रेकमेंडेशन से लिंक्ड है। करेक्ट? तो आप
- 47:21यूजर को फेच करोगे तो रेकमेंडेशंस भी सारे
- 47:24फेच होंगे। तो यहां पर अगर मैं लेज़ लिख
- 47:25देता हूं इसका मतलब क्या है? यूजर अगर फेच
- 47:27होता है तो रेकमेंडेशंस फैच नहीं होने हैं
- 47:30अंटिल एंड अनलेस आप रेकमेंडेशंस को एक्सेस
- 47:33करते हो। उस उस यूजर के रेकमेंडेशंस को
- 47:35अगर आप एक्सप्लसिटली एक्सेस करना चाहते हो
- 47:37तो ही रेकमेंडेशंस एक्सेस होंगे। ठीक है?
- 47:39फेच टाइप के दो तक दो
- 47:42ये है वैल्यूज़ लेज़ और इगर। ईगर मतलब अगर
- 47:45आप यूजर को एक्सेस करते हो तो रेकमेंडेशंस
- 47:48भी पहले ही लोड हो जाएगी ईगर। तो इसमें
- 47:51क्या है? डेटाबेस के कॉल्स बचते हैं।
- 47:53लेकिन डेटाबेस का लोड भी बढ़ता है। ठीक
- 47:55है? अगर बहुत सारी रेकमेंडेशंस है एक यूजर
- 47:57के आगे और आप 500 यूजर को रिट्रीव कर रहे
- 47:59हो। ठीक है? तो इमेजिन कर लीजिए एक यूजर
- 48:02के अगेंस्ट बहुत सारी रेकमेंडेशंस दूसरे
- 48:05यूजर के अगेंस्ट बहुत सारी रिकमेंडेशन 500
- 48:07यूजर लोड कर रहे हो तो डेटाबेस लोड बढ़
- 48:09जाएगा। लेकिन क्या है? अगर आपको पता है कि
- 48:12आप रिकमेंडेशन को एक्सेस करने ही वाले हो
- 48:14तो यह मेक सेंस करता है क्योंकि आपको फेच
- 48:16करना ही है। लेकिन अगर आपको पता है कि आप
- 48:18फेच नहीं आप एक्सेस नहीं करने वाले हो।
- 48:20ठीक है? या आपको आप श्योर नहीं हो तो इस
- 48:23केस में लेज़ रखना बेटर है। ठीक है?
- 48:26क्योंकि इससे क्या है? डेटाबेस पे लोड कम
- 48:28रहता है। ठीक है? तो ये मैंने डिफाइन कर
- 48:29दिया यहां पर इन दो जगह पर। और मुझे लगता
- 48:33है मुझे इसको एक्टिविटी में भी डिफाइन
- 48:36करना चाहिए। तो एक्टिविटी में आ जाता हूं।
- 48:38यहां पर एक्टिविटी में एक है मेनी टू वन।
- 48:40तो यहां पर भी ऐड कर देता हूं। ठीक है? तो
- 48:42यह ऐड हो चुका है। और इसके बारे में आप पढ़
- 48:44भी सकते हो। देखिए, डेटा मे बी फच्ड
- 48:45लेज़ली। ठीक है? और यहां पर जाओगे आप, तो
- 48:48आप देख सकते हो डेटा मे बी फच लेज़ली। डेटा
- 48:50मे बी इगरली फैच्ड। ठीक है? तो, यह देखिए,
- 48:54ईगरली और लेज़ली फैच होता है। ठीक है?
- 48:56उम्मीद करता हूं यह हेल्पफुल रहा। काफी
- 48:58सारा नॉलेज मिला आपको और जो डेटाबेस
- 49:01डिज़ाइन है, वह लगभग कंप्लीट है हमारे एंड
- 49:03पर। यह जो प्रोजेक्ट है, उसका और काफी
- 49:06लर्निंग भी मिली हमें।
- 49:12तो चलिए दोस्तों आगे बढ़ते हैं और बात
- 49:15करते हैं एक बढ़िया से टूल के बारे में।
- 49:17ठीक है? टूल के बारे में बात करने से पहले
- 49:19मैं आपको एक प्रॉब्लम दिखा दूंगा। ठीक है?
- 49:21तो यहां पर देखिए अ ये है मेरी एक्टिविटी
- 49:25की क्लास। तो मान लीजिए यूजर की क्लास है।
- 49:27यूजर की क्लास पे बात करते हैं। तो देखिए
- 49:29यहां पे ये सारे फील्ड्स हैं। अब इन
- 49:30फील्ड्स को इस्तेमाल करने के लिए कोड में
- 49:33ये सारे प्राइवेट हैं। ठीक है? तो
- 49:34इस्तेमाल करने के लिए मुझे गेटर, सेटर्स,
- 49:36कंस्ट्रक्टर्स ये सारी चीजों की जरूरत
- 49:38होगी। तो इसको जनरेट कैसे किया जाए? तो
- 49:40यहां पर आ जाना है। ठीक है? राइट क्लिक
- 49:42करना है। जनरेट करना है। गेटर सेटर करना
- 49:45है। ये गेटर सेटर जनरेट हो गए। ठीक है?
- 49:47फिर यहां पर राइट क्लिक करना है फिर से और
- 49:49यहां पर कंस्ट्रक्टर भी जनरेट हो जाएंगे।
- 49:51सब ऑटोमेटिक जनरेट हो रहा है। ठीक है?
- 49:53आपको जो भी जनरेट करना है वो यहां पर नो
- 49:55आस्क् कंस्ट्रक्टर चाहिए। वो भी जनरेट हो
- 49:57जाएगा। सेलेक्ट नन करोगे तो। ठीक है? तो
- 49:59देखिए क्लास काफी लंबी हो गई। ठीक है?
- 50:01कितनी? 100 लाइन के ऊपर हो गया कोड इसमें।
- 50:04काफी लंबी होगी। काफी हैवी भी लग रही है
- 50:06क्लास। जबकि हो कुछ नहीं रहा है यह क्लास
- 50:08में। ये क्लास में कुछ फील्ड्स डिक्लेअर
- 50:09किए है हमने। ठीक है? ये फील्ड्स है और
- 50:12यहां पर कुछ मैपिंग्स डिक्लेयर्ड है। और
- 50:14बाकी सब कंस्ट्रक्टर्स और यू नो अ गेट
- 50:18सेटर्स ये सारे से क्लास भर गई है। ठीक
- 50:20है? ये सेम रेप्लिककेट होगा सारी क्लासेस
- 50:23में। जितनी भी हमारी क्लासेस हैं जैसे कि
- 50:24एक्टिविटी रिकमेंड रिकमेंडेशंस यह दो जो
- 50:27क्लासेस हैं जैसे कि एंटीटी क्लासेस इनमें
- 50:29रेप्लिकेट होगा। ठीक है? अब क्या है ना
- 50:32जावा डेवलपर्स के पास एक बढ़िया सा टूल
- 50:34है। ठीक है? जिसकी मदद से यह बोईलर प्लेट
- 50:36कोड को हटा सकते हैं। और यह सारा बोईलर
- 50:38प्लेट कोड एक एनोटेशन की मदद से जनरेट हो
- 50:40सकता है। एक नहीं मल्टीपल लगेंगे लेकिन एक
- 50:42एनोटेशन एक चीज जनरेट करने के लिए और जो
- 50:44कोड है वो काफी सिंपलीफाई भी हो जाएगा।
- 50:46ठीक है? तो जो टूल की मैं बात कर रहा हूं
- 50:48उस टूल का नाम है lमbोक। ठीक है? तो LBOK
- 50:51एक ऐसा टूल है जिसकी मदद से आप यह सारा
- 50:54बोईलर प्लेट कोड है उसको हटा सकते हो और
- 50:56ऑटोमेटिकली एनोटेशन की मदद से ये सारा
- 50:58बॉईलर प्लेट कोड ऑटोमेटिकली जनरेट होगा
- 51:00क्लास की कंपाइल टाइम पर। ठीक है? तो यहां
- 51:02पर ब्राउज़र में आ जाता हूं सबसे पहले और
- 51:04यहां पर हम सर्च करेंगे LBK इस तरीके से।
- 51:07तो देखिए अब Lbok को सर्च करेंगे तो यहां
- 51:09पर आपको प्रोजेक्ट LBOK दिखेगा। ठीक है?
- 51:11अच्छा ये तो इंडोनेशियन आइलैंड भी है।
- 51:13मुझे पता नहीं था। ठीक है? Lok Java सर्च
- 51:16कर लीजिएगा। ठीक है? Lok Java अगर आप सर्च
- 51:18करते हैं थोड़ी सा एi जनरेटेड समरी भी मिल
- 51:20जाएगा आपको। देखिए यह एनोटेशन की मदद से
- 51:24बोईलर प्लेट कोड जैसे गेटर सेटर को हटा
- 51:26देता है। ठीक है? और यह कंपाइल टाइम पे
- 51:28जनरेट भी कर देता है। पूरा का पूरा
- 51:29डेफिनेशन जो मैंने कहा वो यहां पर आपको
- 51:32मिल गया। देखिए ये वर्बोसिटी रिड्यूस करता
- 51:34है कोड की। वर्बोसिटी का मतलब है कोड
- 51:36ज्यादा हैवी लगता है। ऐसा लगता है बहुत
- 51:38सारा कोड लिख दिया है। तो जो वर्बोसिटी है
- 51:40उसको हटा देता है और डेवलपर प्रोडक्टिविटी
- 51:42बढ़ा देता है जिससे आप सिर्फ कोड लॉजिक पर
- 51:45फोकस करते हो। आपको बस एनोटेशंस लिख देने
- 51:47हैं। गेट अ से स्टेटस वो वो क्रिएट कर
- 51:49देगा। देखिए यहां पर अगर मैं अब कोई फील्ड
- 51:51ऐड करता हूं तो मुझे उसके लिए गेटर सेटर
- 51:53कंस्ट्रक्टर में उसके लिए जगह बनानी
- 51:55पड़ेगी। सब कुछ करना पड़ेगा। ठीक है? एक
- 51:57फील्ड एडिशन पर लेकिन लॉबक की मदद से क्या
- 52:00है? एनोटेशंस लगे हुए हैं। मैंने वो फील्ड
- 52:02ऐड कर दी। तो कंस्ट्रक्टर में भी
- 52:03ऑटोमेटिकली ऐड हो गया। और गेट स्टेटस भी
- 52:06ऑटोमेटिकली क्रिएट हो गया। आपको कुछ नहीं
- 52:07करना है। एनोटेशंस लगे हुए हैं। वो अपना
- 52:09काम करेंगे। एनोटेशंस आप काम नहीं करोगे।
- 52:11ठीक है? तो ये एक ऐसा टूल है जिसकी मदद से
- 52:14डेवलपर्स जो है वो प्रोडक्टिविटी पर भी
- 52:16फोकस कर सकते हैं। ठीक है? तो यहां पर
- 52:18देखिए यहां पर मैं आऊंगा। ये प्रोजेक्ट
- 52:19लॉबक है। इस पर जाइए और आप यहां पर देख
- 52:22सकते हो लॉबक एक्चुअली है क्या? ये वीडियो
- 52:23वगैरह है। आपको देखना है तो आप देख सकते
- 52:25हो। फीचर्स देख सकते हो थोड़ा इसके साथ।
- 52:27अगर आपको एक्सप्लोर करना है तो इस साइट पर
- 52:29आप एक्सप्लोर कर सकते हो। ठीक है? लेकिन
- 52:31मैं क्या करूंगा? मैं यहां पर आ जाऊंगा
- 52:32सीधे-सीधे स्प्रिंग इनिशलाइजर पर और यहां
- 52:35पर मैं सर्च करूंगा lमbok। तो देखिए lमbok
- 52:38ऑफिशियली स्प्रिंग बूट सपोर्टेड है। ठीक
- 52:41है? क्योंकि ये यहां पर सजेशन में आ रहा
- 52:43है। और यह देखिए java एनोटेशन लाइब्रेरी
- 52:45हेल्प्स टू रिड्यूस बोईलर प्लेट कोड। तो
- 52:47इसका इस्तेमाल करेंगे। एक्सप्लोर पर क्लिक
- 52:49करेंगे और यहां पर आ जाएंगे। और यहां पर
- 52:52देखिए यह जो डिपेंडेंसी है लॉबक की वह ऐड
- 52:54हो चुकी है। तो इसको मैं कॉपी कर लूंगा।
- 52:56सिर्फ लॉबक की डिपेंडेंसी को यहां पर आ
- 52:59जाऊंगा और ये जो pmxl है मेरी वहां पर आकर
- 53:04मैं इसको ऐसे के ऐसे चिपका दूंगा। ठीक है?
- 53:07और इसको मेव इन रीलोड करेंगे तो ये जो lमb
- 53:11की जो डिपेंडेंसी है उसको फैच कर लेगा।
- 53:12देखिए आप कभी भी pmxl फाइल में कुछ भी
- 53:14चेंजेस करते हो कभी भी ठीक है? इसका मतलब
- 53:17आपने प्रोजेक्ट के स्ट्रक्चर के साथ कुछ
- 53:19छेड़खानी की है, कुछ नई डिपेंडेंसीज ऐड की
- 53:21है। तो आपको रीलोड मेवन चेंजेस करना है।
- 53:23तो सारी की सारी जो चेंजेस है वो लोकली
- 53:25आपके सिस्टम पर आ जाएंगी। तो ये मैंने कर
- 53:27लिया। तो लॉबक हमारे सिस्टम पर आ चुका है
- 53:29लोकली। ठीक है? और अब मैं क्या करूंगा?
- 53:32मैं यूजर में जाऊंगा। ठीक है? अब मुझे
- 53:34देखिए गेट, सेटर्स ये सारी चीजें मैंने
- 53:36जनरेट की थी। मुझे अब ये जनरेट करने की
- 53:38जरूरत नहीं है। लॉबक आ चुका है। तो मैं
- 53:40क्या करूंगा पता है? मैं सिर्फ एनोटेशन का
- 53:43इस्तेमाल करूंगा और ये सारी चीजें जो
- 53:45मैंने मैनुअली डिफाइन करी है भले
- 53:47इंटेलिजेंट की मदद से किया है। पहले तो
- 53:49इंटेलिजेंट नहीं होता था तो टाइप करना
- 53:51पड़ता था मैनुअली। इंटेलिजेंट ने थोड़ा
- 53:52आसान किया लेकिन लॉबक ने और ज्यादा आसान
- 53:54कर दिया। तो यहां पर आना है आपको सिर्फ
- 53:56यूज़ करना है यहां पर डेटा एनोटेशन। ठीक
- 54:00है? डेटा एनोटेशन छोड़िए। अगर मैं गेटर
- 54:02लिखता हूं यहां पर गेटर और सेटर तो देखिए
- 54:05गेटर भी ऑटोमेटिकली जनरेट हो जाएगा जितने
- 54:07भी फील्ड्स हैं उसके लिए और सेटर भी
- 54:08ऑटोमेटिकली जनरेट हो जाएगा। लेकिन गेटर
- 54:11सेटर का कॉम्बिनेशन है डेटा एनोटेशन। डाटा
- 54:15एनोटेशन आप लिखते हो तो डाटा एनोटेशन में
- 54:17जाइए आप। देखिए होवर कीजिए। उस पे जाइए इस
- 54:19पे डाउनलोड सोर्सर्सेस कर लीजिए। तो देखिए
- 54:22डेटा एनोटेशन कॉम्बिनेशन है ये सारे
- 54:25एनोटेशंस का। गेट असर्स, सेटर्स,
- 54:27रिक्वायर्ड आस्क् कंस्ट्रक्टर, टू
- 54:29स्ट्रिंग और इक्वल्स एंड हैश कोड। ये सारे
- 54:31जो मेथड्स हैं वो ऑटोमेटिकली कन्वर्ट हो
- 54:33क्रिएट हो जाते हैं। ठीक है? ये
- 54:35ऑटोमेटिकली क्रिएट हो जाते हैं। आपको कुछ
- 54:36करने की जरूरत ही नहीं है। ये सारे
- 54:38एनोटेशन ऑटोमेटिकली अप्लाई हो जाते हैं।
- 54:40तो इसके लिए मैंने गेटर्स एंड सेटर्स को
- 54:41हटा के डेटा डाल दिया। डेटा से सब कुछ हो
- 54:44गया। ठीक है? गेट स्टे सेटर्स भी आ गए। और
- 54:46यहां पर मुझे क्या चाहिए? मुझे एक और
- 54:48चाहिए नो आस्क् कंस्ट्रक्टर चाहिए। नो
- 54:50आस्क् कंस्ट्रक्टर वो भी ऐड कर दिया। और
- 54:52फिर मुझे चाहिए ऑल आस्क् कंस्ट्रक्टर। ऑल
- 54:54आस्क् कंस्ट्रक्टर मतलब सारे जो ये है
- 54:57फील्ड्स वो सारे फील्ड्स के साथ एक
- 55:00आर्गुमेंट कंस्ट्रक्टर। और कोई भी
- 55:02आर्गुमेंट के साथ यानी कि कोई भी अह
- 55:04आर्गुमेंट नहीं होना चाहिए। तो ऐसा वाला
- 55:05कंस्ट्रक्टर चाहिए मुझे। नो आस्क्
- 55:07कंस्ट्रक्टर। ठीक है? और अब क्या है? मुझे
- 55:09यहां पे एरर मिल रहा है। देखिए एरर मिल
- 55:10रहा है। एरर क्या बोल रहा है? ठीक है? एरर
- 55:12कुछ तो बोल रहा है। ओवर करेंगे। अच्छा ओवर
- 55:15करता हूं तो ये बोल रहा है देखिए सेव
- 55:17डिलीट यूजर। तो ये कंस्ट्रक्टर विदाउट
- 55:19पैरामीटर इज़ ऑलरेडी डिफाइंड। तो नहीं
- 55:20डिफाइन करना चाहिए। एक्चुअली ऑलरेडी
- 55:22डिफाइंड है। तो हम क्या करेंगे? यहां से
- 55:24लेकर जो हमने सारा कोड जनरेट किए थे
- 55:25गेटर्स, सेटर्स ये सब ये सब ऐसे सेलेक्ट
- 55:28करके हटा देंगे। ठीक है? तो देखिए ये
- 55:31क्लास कितनी सिंपल हो गई। अभी सिर्फ
- 55:32एनोटेशन की मदद से ठीक है? सीधा 1/4 हो गई
- 55:36क्लास। ठीक है? सिर्फ एनोटेशन ऐड किया
- 55:38आपने। तीन दो तीन चार ऐड किए एनोटेशंस और
- 55:41सब कुछ क्रिएट हो गया। ठीक है? अब इन
- 55:42एनोटेशंस को मैं कॉपी करूंगा। और मेरी
- 55:44जितनी भी क्लासेस हैं जैसे कि यहां पर
- 55:47एक्टिविटी और रेकमेंडेशन जितनी भी यानी
- 55:49सभी क्लासेस में नहीं ऐड करना है। जो
- 55:51डेटाबेस रिलेटेड क्लासेस है उसमें ही मैं
- 55:53ये एनोटेशन ऐड कर दूंगा। ठीक है? और यह
- 55:55देखिए एनोटेशन आ भी कहां से रहे हैं? लॉबक
- 55:57पैकेज से आ रहा है। ठीक है? लॉबक पैकेज।
- 56:00लॉबक क्या है? जो डिपेंडेंसी है वो हमने
- 56:01ऐड करी है वो। ठीक है? और अब आप इसे कहीं
- 56:04पर भी यूज करते हो जैसे एक्टिविटी का मैं
- 56:06ऑब्जेक्ट कहीं पर भी बनाता हूं तो उसकी
- 56:08गेटर सेटर ऑटोमेटिकली एक्सेसिबल रहेगी
- 56:10मुझे। ठीक है? अगर आप देखना चाहो तो मैं
- 56:13आपको दिखा भी सकता हूं। तो यहां पर कोई
- 56:15क्लास में आ जाता हूं। वैसे कोई क्लास
- 56:16बनाई तो नहीं है हमने। फिटनेस यहां पर आ
- 56:19जाते हैं। ठीक है? और यहां पर देखिए मैं
- 56:21लिख देता हूं। अह यहां पर लिखूंगा
- 56:24एक्टिविटी।
- 56:26एक्टिविटी = न्यू एक्टिविटी। एक नई
- 56:29एक्टिविटी बना ली मैंने। ठीक है? और फिर
- 56:31एक्टिविटी डॉट देखिए सारे गेटर्स आ गए।
- 56:34देख रहे हो आप? सारे गेटर्स आ गए। और सारे
- 56:36सेटर्स भी आ गए। देखिए सारे सेटर्स सेट
- 56:39सेट आईडी सेट ड्यूरेशन। ठीक है? मैंने
- 56:41क्रिएट किया। जी नहीं ऑटोमेटिकली क्रिएट
- 56:43हो गया। ठीक है? और यहां पर देखिए ऑल
- 56:45आस्क् कंस्ट्रक्टर भी है यहां पर। तो अगर
- 56:47मैं यहां पर आता हूं और ऐसे टाइप करता
- 56:49हूं। तो देखिए ऑल आस्क् कंस्ट्रक्टर और ये
- 56:51सॉरी ये नॉर्मल कंस्ट्रक्टर है। ठीक है?
- 56:53ये ऑल आस्क् कंस्ट्रक्टर शायद नहीं बना
- 56:55है। 1 मिनट मैंने ऑल आस्क् कंस्ट्रक्टर ऐड
- 56:57किया है एक्टिविटी में। 1 मिनट मुझे दिख
- 56:59लेने दीजिए। ऑल आस्क् कंस्ट्रक्टर तो ऐडेड
- 57:01है तो आना तो चाहिए था यहां पर। ठीक है?
- 57:04तो दिखाई क्यों नहीं दे रहा है? एक्टिविटी
- 57:06एक्टिविटी। अच्छा ये दिखाई नहीं दे रहा है
- 57:08शायद।
- 57:15अच्छा यहां पर आप पैरामीटर्स पास भी कर
- 57:17सकते हो। देखिए ये ये अभी सजेशन दे रहा है
- 57:18पैरामीटर्स। मुझे पता नहीं ऑटो सजेस्ट में
- 57:20क्यों नहीं आ रहा है लेकिन यहां पर सजेशन
- 57:21भी दे रहा है पैरामीटर्स का इन ऑर्डर में
- 57:23पास करना है आपको ठीक है तो ये चल रहा है
- 57:25और इसको मैं यहां से हटा देता हूं अब
- 57:27क्योंकि यहां पर आइडली कोड लिखना नहीं
- 57:28चाहिए और इंपोर्ट स्टेटमेंट्स को भी हटा
- 57:31देता हूं ऑप्टिमाइज इंपोर्ट्स कर देता हूं
- 57:32ठीक है तो ये बात थी लॉबक के बारे में है
- 57:36ना जबरदस्त टूल कैसा टूल है ये मुझे बताइए
- 57:38आप ठीक है मुझे तो काफी जबरदस्त लगता है
- 57:40और मैं हर प्रोजेक्ट में मेरा एक सेटअप
- 57:42होता है जैसे कि वेब ऐड कर दिया जेपीए ऐड
- 57:45कर दिया डेटाबेस मेरे चॉइस का ऐड कर दिया
- 57:47डिपेंडेंसी में और लॉन्ग तो होता ही है
- 57:49बाय डिफ़ॉल्ट क्योंकि मुझे पता है मैं
- 57:50इस्तेमाल करने ही वाला हूं। क्लासेस
- 57:51बनेंगी। गेट सेटर्स बनाने हैं। ऑल आस्क्
- 57:54कंस्ट्रक्टर्स बनाने हैं। काफी सारा बोलब
- 57:55प्लेट कोड जो है वो हट जाता है। तो देखिए
- 57:57अब मैं यहां पर अगर कोई नई फील्ड ऐड करता
- 57:59हूं। एनोटेशंस ऐडेड है। करेक्ट। नो आस्क्
- 58:01कंस्ट्रक्टर में तो चलो कुछ होना नहीं है।
- 58:04ऑल आस्क् कंस्ट्रक्टर में वो पैरामीटर ऐड
- 58:06हो जाएगा। ठीक है? और जो गेट सेटर्स जनरेट
- 58:08हो रहे हैं डेटा की मदद से डेटा एनोटेशन
- 58:10की मदद से वो भी जनरेट हो जाएंगे। ठीक है?
- 58:12उसके लिए ऑटोमेटिकली। तो मुझे ध्यान में
- 58:15रखना नहीं है कि अच्छा मैंने नई फील्ड ऐड
- 58:16की है तो अभी इसको कंस्ट्रक्टर में ऐड
- 58:18करना है। इसके लिए गेटर सेटर ऐड करना है।
- 58:19ये ध्यान में रखने की जरूरत नहीं है।
- 58:21फील्ड ऐड कर दो और बिज़नेस लॉजिक पे फोकस
- 58:23करो। यही काम है लॉबक का। उम्मीद करता हूं
- 58:25ये हेल्पफुल रहा और मुझे बताइए आप आप इस
- 58:30टूल को अपने हर प्रोजेक्ट में इस्तेमाल
- 58:31करेंगे या नहीं। तो दोस्तों, एक चीज मैं
- 58:34बताना भूल गया कि अगर लॉन्ग कॉन्फ़िगरेशन
- 58:37के बाद प्रोजेक्ट रन करने में कोई मदद कोई
- 58:39दिक्कत आती है। ठीक है? तो जनरली आपको
- 58:41क्या करना है? यहां पर आना है और यहां पर
- 58:44सेटिंग्स में जाना है। ठीक है? सेटिंग्स
- 58:46में लॉबक यहां पे प्लगिंस में आप जाओगे ना
- 58:49तो आपको लॉबक का एक प्लगइन दिखेगा। आपको
- 58:52कहां पे दिखना है? यहां पे मार्केट प्लेस
- 58:54पे सेलेक्ट करना है और यहां पर सर्च करना
- 58:56है LBK। तो ये प्लगइन जो है ये आपको
- 58:58इंस्टॉल करना होगा। ठीक है? इसके बिना Lok
- 59:01थोड़ा फंक्शन नहीं करेगा। तो आपको यह
- 59:02प्लगइन इंस्टॉल करना है। ठीक है? ये
- 59:05इंस्टॉल करने के बाद अ आपको फिर से
- 59:08सेटिंग्स में ही रहना है। अच्छा मैंने
- 59:10क्लोज़ कर दिया। तो इंस्टॉल करने के बाद
- 59:12आपको फिर बिल्ड एग्जीक्यूशन डिप्लॉयमेंट
- 59:15में आना है और यहां पर कंपाइलर में
- 59:17एनोटेशन प्रोसेसिंग है। ठीक है? तो
- 59:20एनोटेशन प्रोसेसिंग में आपको मेक श्योर
- 59:21करना है कि ये इनेबल एनोटेशन प्रोसेसिंग
- 59:23इनेबल्ड है। टिक है। और ये फिटनेस मोनोलथ
- 59:26पे अगर आप सेलेक्ट करते हो तो ये ऑब्टेन
- 59:28प्रोसेसर्स फ्रॉम क्लास पाथ प्रोजेक्ट
- 59:29क्लास पाथ ये सिलेक्टेड है। अगर आप ये दो
- 59:32चीज का ध्यान रखते हो तो लॉन्ग इशू कभी
- 59:35नहीं देगा आपको। और हां ये करने के बाद या
- 59:37इनेबल करने के बाद ओके नहीं करना है।
- 59:39अप्लाई करके ओके करना है। अप्लाई नहीं
- 59:42करोगे तो चेंजेस अप्लाई नहीं होंगे। ठीक
- 59:43है? अप्लाई करके ओके करना है। ठीक है? तो
- 59:46इन चीजों का ध्यान रखिएगा। ये प्लगइन भी
- 59:47इंस्टॉल कर लीजिएगा। यह काम का है। मैंने
- 59:50काफी और भी प्लगइिंस इंस्टॉल कर रखे हैं।
- 59:53डॉकर वगैरह जैसे कि मैं कोड करता रहता
- 59:55हूं। तो लॉबक जरूरी है। इंस्टॉल कर
- 59:58लीजिएगा।
- 1:00:05तो दोस्तों बात करते हैं एपीआई के बारे
- 1:00:08में। अब इस वीडियो में हम क्या करने वाले
- 1:00:10हैं? हम हमारा जो एप्लीकेशन है उसमें एक
- 1:00:13यूजर की रजिस्ट्रेशन एपीआई बनाएंगे। ठीक
- 1:00:15है? जहां पर हम एंड पॉइंट की मदद से एक
- 1:00:18एंड पॉइंट की मदद से एक यूजर को क्रिएट
- 1:00:20करेंगे हमारे सिस्टम में यानी कि हमारी
- 1:00:22एप्लीकेशन में। ठीक है? तो यहां पर देखिए
- 1:00:25हमने मॉडल्स डिफाइन किए हैं सिर्फ। हमें
- 1:00:27एपीआई बनाने के लिए हमें चाहिए रिपॉज़िटरी
- 1:00:30लेयर। हमें चाहिए सर्विस लेयर। ठीक है? तो
- 1:00:33एक रिकैप के तौर पे आपको बता दूं। देखिए
- 1:00:36हमारे पास जो है हमारे पास होता है एक
- 1:00:39डेटाबेस। ठीक है? तो डेटाबेस को मैं थोड़ा
- 1:00:41नीचे बना लेता हूं। ठीक है? ये है हमारे
- 1:00:43पास डेटाबेस। ठीक है? डेटाबेस के साथ बात
- 1:00:47करने वाला है
- 1:00:50हमारी अ रेपोज़िटरीज़। ठीक है? रिपॉज़िटरी
- 1:00:53लेयर है। ठीक है? तो जो भी रिपॉज़िटरीज़ हम
- 1:00:56डिफाइन करेंगे वो बात करेंगी डेटाबेस से।
- 1:00:59ठीक है? फिर उसके ऊपर आएगा हमारे पास जो
- 1:01:02होगा वो है सर्विस लेयर। ठीक है? सर्विस
- 1:01:06लेयर और फिर उसके ऊपर होंगे हमारे
- 1:01:09कंट्रोलर्स। ठीक है? तो ये समझना जरूरी है
- 1:01:11ये स्ट्रक्चर। ठीक है? उसके बाद ही आप
- 1:01:13एपीआई बना पाओगे। ठीक है? तो देखिए
- 1:01:16कंट्रोलर्स क्या है? कंट्रोलर्स डिफाइन
- 1:01:18करेंगे एपीआई। एपीआई कौन यूज़ करेगा? यूजर
- 1:01:22यूज़ करेगा। ठीक है? सर्विस लेयर क्या है?
- 1:01:24सर्विस लेयर डिफाइन करेगा बिज़नेस लॉजिक।
- 1:01:28ठीक है? किस तरीके से बिज़नेस लॉजिक डिफाइन
- 1:01:30करेगा? तो उसमें क्लासेस होगी जहां पर हम
- 1:01:32बिनेस लॉजिक्स डिफाइन करेंगे और ये सर्विस
- 1:01:34लेयर जो इसमें जो मेथड्स होंगे यानी कि जो
- 1:01:37भी लॉजिक होगा वो कॉल होगा कंट्रोलर से।
- 1:01:40तो मान लीजिए आप कोई भी एपीआई कॉल करते हो
- 1:01:42जैसे कि यूजर क्रिएशन की एपीआई आपने कुछ
- 1:01:46यू नो लॉगिन की एपीआई कॉल की तो उसका
- 1:01:48बिज़नेस लॉजिक लिखा होगा सर्विस लेयर पर।
- 1:01:50तो डिपेंडिंग ऑन कि आप कौन सा एपीआई कॉल
- 1:01:53कर रहे हो। एप्रोप्रियट लॉजिक कॉल होगा
- 1:01:55सर्विस लेयर से। ठीक है? इतनी बात समझ में
- 1:01:57आ गई? और फिर हमारे पास है रिपॉज़िटरी
- 1:02:00लेयर। रिपॉज़िटरी लेयर क्या करेगी? इंटरफ़ेस
- 1:02:03है यानी कि इंटरेक्ट करेगी
- 1:02:06डेटाबेस से विद डीबी। ठीक है? डीबी का
- 1:02:10मतलब है डेटाबेस। तो इंटर ये एक तरीके से
- 1:02:13कम्युनिकेशन लेयर है जिसके जरिए सर्विस
- 1:02:16लेयर डेटाबेस से बात करता है। देखिए
- 1:02:19सर्विस लेयर में बिज़नेस लॉजिक डिफाइंड है।
- 1:02:21ठीक है? अभी मान लीजिए आप यूजर
- 1:02:23रजिस्ट्रेशन की एपीआई बना रहे हो।
- 1:02:24एग्जांपल दे रहा हूं। ठीक है? यूजर
- 1:02:26रजिस्ट्रेशन की एपीआई बना रहे हो तो लॉजिक
- 1:02:28कहां लिखा होगा? एंड पॉइंट कहां डिफाइंड
- 1:02:30होगी? पहले तो एंड पॉइंट डिफाइंड होगी
- 1:02:32कंट्रोलर में। ठीक है? बिज़नेस लॉजिक कहां
- 1:02:35लिखा होगा? बिज़नेस लॉजिक लिखा होगा सर्विस
- 1:02:37लेयर पर। यानी कि एक यूजर है उसको उसमें
- 1:02:40वैलिडेशंस आएंगी। वो देखना है आपको ईमेल
- 1:02:42चेक करना है सही से है कि नहीं? सारी
- 1:02:44डिटेल्स आई कि नहीं प्रॉपर्ली और फिर उसको
- 1:02:46लेकर डेटाबेस में स्टोर करना है। ठीक है?
- 1:02:48तो ये होगा सर्विस लेयर पर। अब डेटाबेस
- 1:02:51में स्टोर करना है। यह सर्विस लेयर करेगा
- 1:02:53क्योंकि वो बिज़नेस लॉजिक है। लेकिन इस ये
- 1:02:56डेटाबेस में स्टोर करने के लिए उसे जरूरत
- 1:02:58पड़ेगी डेटाबेस से बात करने के लिए। ठीक
- 1:03:01है? डेटाबेस से बात करना चाहेगा सर्विस
- 1:03:03लेयर। वो कैसे करेगा? सर्विस लेयर तो
- 1:03:04बोलेगा मेरे पास एबिलिटी नहीं है। तो
- 1:03:06रिपॉज़िटरी की मदद से वो डेटाबेस लेयर से
- 1:03:09बात करेगा। ठीक है? और डेटाबेस जो है यहां
- 1:03:12पर हमारा जो डेटा है वो स्टोर होगा। तो
- 1:03:15यहां पर डेटा इज़ स्टर्ड। ठीक है? इस तरीके
- 1:03:18से। तो इस तरीके से ये जो पूरा सिस्टम है
- 1:03:21वो काम करता है। कंट्रोलर से रिक्वेस्ट
- 1:03:23जाती है सर्विस लेयर के पास। सर्विस लेयर
- 1:03:24से जाती है रिपॉजिटरीज के पास और फिर
- 1:03:27रिपोज़िटरीज से जाती है डेटाबेस के पास।
- 1:03:30ठीक है? और फिर यहां से फिर से डेटा ऐसे
- 1:03:33ही रिवर्स जाता है पूरा के पूरा। और फिर
- 1:03:35कंट्रोलर के थ्रू ये रिटर्न किया जाता है
- 1:03:37यूजर को। ठीक है? उम्मीद करता हूं इतना
- 1:03:40समझ में आया। यह किस तरीके से रिक्वेस्ट
- 1:03:42फ्लो होती है स्प्रिंग बूट एप्लीकेशन में।
- 1:03:44ठीक है? और ये सारे लेयर्स बनाना जरूरी
- 1:03:45है। तो अभी हमारे पास डेटाबेस सेटअप है।
- 1:03:47हमारे जो करंट प्रोजेक्ट है उसमें डेटाबेस
- 1:03:49सेटअप है। हमने रिपॉज़िटरीज सेटअप नहीं की
- 1:03:51है। ठीक है? हमने सर्विस नहीं सेटअप किया
- 1:03:53है। हमने कंट्रोलर सेटअप नहीं किया है। तो
- 1:03:55मैं क्या करूंगा? जल्दी से आ जाऊंगा हमारी
- 1:03:57एप्लीकेशन में। यहां पर क्विकली हम
- 1:03:59पैकेजेस बना देंगे। ठीक है? और यहां पर
- 1:04:01मैं सबसे पहले बनाऊंगा कंट्रोलर। ठीक है?
- 1:04:04और फिर एक और पैकेज बनाऊंगा। इस पैकेज का
- 1:04:07नाम मैं लिख दूंगा अ सर्विस ऐसे। और फिर
- 1:04:11एक और पैकेज मुझे बनानी पड़ेगी जिसका नाम
- 1:04:14है रिपॉज़िटरी।
- 1:04:18ठीक है? ये रिपॉज़िटरी। तो रिपॉज़िटरी में
- 1:04:21अब देखिए हम जो एंड बंड बना रहे हैं वो
- 1:04:22यूजर रिपॉज़िटरी बना रहे हैं। ठीक है? तो
- 1:04:24यहां पर मैं आऊंगा एक इंटरफ़ेस बनाऊंगा और
- 1:04:27यहां पर कहूंगा यूजर रिपॉज़िटरी इस तरीके
- 1:04:30से। ठीक है? तो यूजर रिपॉज़िटरी बन गई। अब
- 1:04:33इसको एनोटेट कर देंगे यहां पर रिपॉज़िटरी
- 1:04:35इस तरीके से और यहां पर कर देंगे
- 1:04:37एक्सटेंड्स। ठीक है? और जेपीए रिपॉज़िटरी
- 1:04:40को एक्सटेंड कर देंगे। यहां पर यहां पर
- 1:04:42लिख देंगे ये एंटिटी जो है जिसको जिसके
- 1:04:45लिए बना रहे हैं हम वो यूजर है। ठीक है?
- 1:04:47और यहां पर जो उसकी प्राइमरी की जो टाइप
- 1:04:50है देखिए यूजर में जो प्राइमरी की है वो
- 1:04:53है आईडी फील्ड और उसकी जो टाइप है
- 1:04:55स्ट्रिंग है। तो उसको यहां पर मेंशन कर
- 1:04:57देना है। ठीक है? बस ये रिपॉज़िटरी लेयर
- 1:05:00सेट हो गया। ठीक है? स्ट्रिंग बूट बाकी का
- 1:05:02काम कर लेगा। ठीक है? तो हमने ये डिफाइन
- 1:05:04कर दिया है। अब हमें सर्विस बनाने की
- 1:05:07जरूरत है। ठीक है? सर्विस तो बनी नहीं है
- 1:05:09तो सर्विस बना लेते हैं। चलिए तो ये भी एक
- 1:05:11जावा क्लास होगी और यहां पर हम कहेंगे
- 1:05:13यूजर सर्विस। ठीक है? यूजर सर्विस बन चुकी
- 1:05:16है और यहां पर मैं लिख दूंगा सर्विस इस
- 1:05:19तरीके से। ठीक है? अब यहां पर कुछ लिखते
- 1:05:21नहीं है। ठीक है? बाद में लिखेंगे जब
- 1:05:23जरूरत हो लेकिन कंट्रोलर बना लेते हैं। तो
- 1:05:26यूजर कंट्रोलर। ठीक है? ठीक है? कंट्रोलर
- 1:05:29इस तरीके से। ठीक है? अ तो मुझे लगता है
- 1:05:33थोड़ी सी इंप्रूवमेंट की जरूरत है यहां
- 1:05:35पर। मैं एक चीज आपको बता दूं। तो ये जो
- 1:05:37कंट्रोलर है उसको यूजर कंट्रोलर कहने के
- 1:05:39बजाय ऑथ कंट्रोलर कहते हैं क्योंकि यूजर
- 1:05:41क्रिएशन करने वाले हैं हम। करेक्ट? तो
- 1:05:43इसको मैं थोड़ा रिफैक्टर कर देता हूं।
- 1:05:45यूजर कंट्रोलर भी कह सकते हो लेकिन मुझे
- 1:05:46थोड़ा यूजर कंट्रोलर थोड़ा इतना बढ़िया
- 1:05:48नहीं लग रहा है। ठीक है? सच्ची बोलूं तो
- 1:05:50ऑथ कंट्रोलर मुझे थोड़ा बढ़िया लग रहा है।
- 1:05:52तो इसको मैं कर दूंगा ऑथ कंट्रोल। ऑथ
- 1:05:54कंट्रोलर मतलब यहां पे लॉग इन रजिस्ट्रेशन
- 1:05:56रिलेटेड सारी जो फंक्शनैलिटीज़ हम बनाने
- 1:05:58वाले हैं वो सारी फंक्शनैलिटीज़ यहां पर
- 1:06:00रहेंगी। तो इसको मैं कर दूंगा ऑथ कंट्रोलर
- 1:06:03इस तरीके से। ठीक है? तो यह हो चुका है ऑथ
- 1:06:06कंट्रोलर क्रिएट। ऑथ कंट्रोलर यूजर सर्विस
- 1:06:08की मदद से यूजर रिपॉजिटरी की मदद से यूजर
- 1:06:11रजिस्ट्रेशन, लॉग इन वगैरह वो सब में
- 1:06:13हेल्प करेगा हमें। ठीक है? इतना तो सेट हो
- 1:06:15गया। अब ऑथ कंट्रोलर में आ जाते हैं। ऑथ
- 1:06:17कंट्रोलर से हम एंड पॉइंट्स को डिफाइन
- 1:06:19करेंगे। ठीक है? एंड पॉइंट्स डिफाइन करने
- 1:06:22के बाद जो बिज़नेस लॉजिक है उसको डिफाइन
- 1:06:24करेंगे। ठीक है? और फिर अह डेटाबेस की मदद
- 1:06:27से हम डेटा स्टोर करेंगे डेटाबेस में। ठीक
- 1:06:30है? यहां पर अब देखिए यह रेस्ट कंट्रोलर
- 1:06:32है तो सबसे पहले तो रेस्ट जीpआई बना रहे
- 1:06:34हैं हम तो रेस्ट कंट्रोलर का एनोटेशन ऐड
- 1:06:36कर देंगे। ठीक है? फिर यहां पर आ जाएंगे।
- 1:06:38अब यहां पर मुझे एक चीज की जरूरत पड़ेगी।
- 1:06:41क्या है वो एक चीज़? सर्विस लेयर का जो
- 1:06:44ऑब्जेक्ट है उसकी जरूरत पड़ेगी। ठीक है?
- 1:06:46लेकिन अभी जरूरत नहीं है। तो जब जरूरत
- 1:06:47पड़ेगी तब मैं उसे बनाऊंगा। लेकिन मुझे
- 1:06:49पता है जरूरत पड़ने वाली है। ठीक है? तो
- 1:06:51यहां पर सबसे पहले तो पोस्ट मैपिंग की मदद
- 1:06:53से हम एक एंड पॉइंट बनाना स्टार्ट कर देते
- 1:06:55हैं। देखिए यह जो एंड पॉइंट मैं बना रहा
- 1:06:57हूं वो होने वाला है रजिस्टर।
- 1:07:00ठीक है? रजिस्टर एंड पॉइंट होने वाला है।
- 1:07:02ठीक है? और इस एंड पॉइंट का पूरा यूआरएल
- 1:07:04होने वाला है सश एपीआई
- 1:07:07यूजर सैश एपीआई स्लैश यूजर स्लैश रजिस्टर।
- 1:07:11ठीक है? अब इस कंट्रोलर में जितने भी एंड
- 1:07:13पॉइंट्स आने वाले हैं वो इस लोकेशन पे
- 1:07:16होने वाले हैं। स्लैश एपीआई स्लैश यूज़र्स।
- 1:07:18तो मैं क्या करूंगा? इसको कट कर लेता हूं।
- 1:07:20और यहां पर कंट्रोलर लेवल पे लिख दूंगा
- 1:07:22रिक्वेस्ट मैपिंग। और यहां पर मैं लिख
- 1:07:24दूंगा स्लैश एपीआई स्लैश यूज़र्स। इस तरीके
- 1:07:27से। अब रिक्वेस्ट मैपिंग एक ऐसा एनोटेशन
- 1:07:29है जिसकी मदद से आप क्या कर सकते हो? आप
- 1:07:31मेंशन कर सकते हो कि इस कंट्रोलर में
- 1:07:34जितने भी एंड पॉइंट्स बने उसके आगे ये
- 1:07:37लगाना है स्लैश एपीआई स्लैश यूज़र्स। तो कल
- 1:07:39को अगर आप लॉग इन एंड पॉइंट बनाते हो यहां
- 1:07:41पर एक लॉग इन एंड पॉइंट बनाते हो। ठीक है?
- 1:07:42ऐसे तो वो लॉग इन स्लैश लॉगिन एंड पॉइंट
- 1:07:45नहीं होगा। वो होगा स्लैश एपीआई स्लैश
- 1:07:47यूज़र्स स्लैश लॉग इन। ठीक है? इस तरीके से
- 1:07:49ऑर्गेनाइजेशन हो जाती है थोड़ी कोड में।
- 1:07:51ठीक है? और एपीआई में ऑर्गेनाइजेशन होना
- 1:07:53काफी जरूरी है। ठीक है? और बार-बार ये मैं
- 1:07:56रिपीट भी नहीं करना चाहूंगा। स्लैश एपीi
- 1:07:57यूज़र अभी 10 एपीआई मैं बना रहा हूं तो
- 1:07:59स्लैश एपीआई स्लैश यूज़र्स स्लैश एपीआई
- 1:08:01स्लैश यूज़र्स हर एपीआई में कहीं कुछ टाइप
- 1:08:03हो गया तो प्रॉब्लम हो जाएगी ना और कल को
- 1:08:05मुझे अगर ये स्लैश एपीआई स्लैश यूज़र्स
- 1:08:07करके स्लैश ऑथ चेंज करना है तो मुझे सब
- 1:08:10जगह पर चेंज करना पड़ेगा तो रिक्वेस्ट
- 1:08:12मैपिंग एनोटेशन का बेनिफिट ये है कि ये
- 1:08:13कंट्रोलर लेवल पे लिख दिया आपने फ्यूचर
- 1:08:15में आपको मॉडिफाई करना है ये कॉमन पार्ट
- 1:08:18जो है एंड पॉइंट का उसको आपने कंट्रोलर
- 1:08:19लेवल पे लिख दिया कल को आपको कुछ मॉडिफाई
- 1:08:22करना है एक जगह पर करो और सब जगह मॉडिफाई
- 1:08:24हो जाएगा ठीक है ईजी टू मैनेज है और कोई
- 1:08:26अगर पढ़ रहा है यह कंट्रोलर को आगे चलके
- 1:08:29आपका टीममेट उसको समझ जाएगा अच्छा तो यह
- 1:08:32कंट्रोलर जो है वह इस एंड पॉइंट पर सारी
- 1:08:35एपीआई जो भी है इस इस एंड पॉइंट पर जितनी
- 1:08:39भी रिक्वेस्ट आती है इस एंड पॉइंट से
- 1:08:41स्टार्ट होने वाली जितनी भी रिक्वेस्ट है
- 1:08:43वो ये कंट्रोलर मैनेज कर रहा है। ठीक है?
- 1:08:45ये ये सारे बेनिफिट्स हैं रिक्वेस्ट
- 1:08:46मैपिंग एनोटेशंस के। तो रिक्वेस्ट मैपिंग
- 1:08:48मैंने ऐड कर दी है। रिक्वेस्ट मैपिंग का
- 1:08:50उम्मीद करता हूं आपको बेनिफिट समझ में
- 1:08:52आया। अगर आपको चाहिए तो कंट्रोल को होल्ड
- 1:08:54कीजिए और मैक पर हो तो कमांड को होल्ड
- 1:08:55कीजिए और इस पर हो कीजिए तो यह लिंक बन
- 1:08:57जाएगा। अंदर जाइए और यहां पर डाउनलोड
- 1:08:59सोर्सर्सेस कर लीजिए। ठीक है? डाउनलोड
- 1:09:01सोर्सेस आप करोगे तो देखिए रिक्वेस्ट
- 1:09:03मैपिंग का मतलब क्या है? यहां पर पूरा
- 1:09:05लिखा हुआ है। देखिए यहां पर एनोटेशन फॉर
- 1:09:07मैपिंग वेब रिक्वेस्ट ऑन टू मेथड्स इन ए
- 1:09:10रिक्वेस्ट हैंडलिंग क्लासेस विद
- 1:09:12फ्लैक्सिबल मेथड सिग्नेचर्स। अच्छा काफी
- 1:09:14ज्यादा तगड़ी अंग्रेजी में लिखा हुआ है।
- 1:09:16शायद समझ में ना आए बट ठीक है। इसका मतलब
- 1:09:18मैंने समझा दिया है आपको। ठीक है? तो यहां
- 1:09:21पर मैंने लिख दिया है ये कैसे यूज़ करना
- 1:09:23है। ठीक है? तो ये मैंने मेंशन कर दिया
- 1:09:24है। अब यहां पर मैं लिखूंगा पब्लिक और
- 1:09:27यहां पर मैं लिखूंगा यूजर रिस्पांस। ठीक
- 1:09:30है? अ सॉरी यूजर लिखूंगा मैं यहां पर।
- 1:09:33क्योंकि मेरा मेरा जो डेटा है वो रिटर्न
- 1:09:35होना है एज अ यूजर। ठीक है? और फिर यहां
- 1:09:37पर लिखूंगा रजिस्टर। ठीक है? और यहां पर
- 1:09:40मैं एक्सेप्ट करूंगा यूजर का ऑब्जेक्ट।
- 1:09:43ठीक है? यूजर का ऑब्जेक्ट ही एक्सेप्ट कर
- 1:09:45रहा हूं। ठीक है? और यहां पर मैं कहूंगा
- 1:09:48रिटर्न और फिर यहां पर कहूंगा यूजर सर्विस
- 1:09:55डॉट रजिस्टर। अब यूजर सर्विस का ऑब्जेक्ट
- 1:09:58तो मैंने बनाया नहीं है तो बनानी पड़ेगी।
- 1:10:00ठीक है? वो बनाते हैं हम। ठीक है? तो मैं
- 1:10:03क्या कर रहा हूं? यहां से यूजर को अ यूजर
- 1:10:06का एक पैरामीटर ले रहा हूं। ठीक है? इस
- 1:10:08तरीके से और यह कहां पे ले रहा हूं? यह
- 1:10:10मैं ले रहा हूं रिक्वेस्ट बॉडी में। ठीक
- 1:10:12है? रिक्वेस्ट बॉडी में इस तरीके से ले
- 1:10:14रहा हूं। और फिर इसको पास कर रहे हैं
- 1:10:16रजिस्टर में। और फिर जो आउटपुट आ रहा है
- 1:10:19वह हम रिटर्न कर रहे हैं यहां पर। ठीक है?
- 1:10:21तो सेव्ड यूजर का जो ऑब्जेक्ट है जो हमें
- 1:10:23सर्विस लेयर देगा वो हम रिटर्न कर रहे हैं
- 1:10:26यहां पे। ये रिटर्न करने की जरूरत नहीं
- 1:10:27है। आप चाहो तो कुछ स्ट्रिंग भी रिटर्न कर
- 1:10:29सकते हो कि यूजर सेव्ड सक्सेसफुली ऐसे
- 1:10:31करके। लेकिन मैं यूजर ही रिटर्न कर रहा
- 1:10:33हूं। क्योंकि क्या है? देखिए आप जब
- 1:10:34रिक्वेस्ट करोगे तब आपके पास आईडी नहीं
- 1:10:36होगी यूजर की। रजिस्टर होने के बाद आईडी
- 1:10:39जनरेट होगी। और अगर आप सेव्ड ऑब्जेक्ट को
- 1:10:41रिटर्न करते हो तो यूजर जो है जिसने एपीआई
- 1:10:44कॉल करी थी उसको आईडी मिल जाएगी कि अच्छा
- 1:10:46यह यूजर का डिटेल्स मैंने भेजी थी और यह
- 1:10:48सेव हो चुका है और ये अब सेव्ड यूजर की
- 1:10:51आईडी है। इसके लिए रिटर्न कर रहे हैं हम।
- 1:10:54ठीक है? तो यहां पर देखिए अभी सबसे पहले
- 1:10:56यूजर सर्विस पे रेड मार्क आ रहा है। सारे
- 1:10:58रेड मार्क्स को सॉल्व करते हैं। तो यहां
- 1:10:59पर मैं लिखूंगा प्राइवेट यूजर सर्विस।
- 1:11:03प्राइवेट फाइनल लिख देता हूं। यूजर सर्विस
- 1:11:06ऐसे और यूजर सर्विस लिख देता हूं यहां पर।
- 1:11:09ठीक है? ये मैंने कर लिया है। अब यहां पर
- 1:11:11मुझे एक कंस्ट्रक्टर बनाना पड़ेगा। तो ये
- 1:11:14कंस्ट्रक्टर मैं क्यों बनाऊंगा? क्योंकि
- 1:11:15मुझे इसका जो देखिए ये स्प्रिंग मैनेज्ड
- 1:11:18कंपोनेंट है यूजर सर्विस। और मैं चाहता
- 1:11:21हूं कि यूजर सर्विस का एक इंस्टेंस यहां
- 1:11:23पे प्रोवाइड किया जाए ऑथ कंट्रोलर में। तो
- 1:11:26मैंने क्या किया? यहां पर एक अ
- 1:11:28कंस्ट्रक्टर बना दिया और स्प्रिंग मैनेज
- 1:11:31कंपोनेंट है तो स्प्रिंग दिखेगा। अच्छा ये
- 1:11:33क्लास में अ यूजर सर्विस का एक इंस्टेंस
- 1:11:35नीडेड है। तो एक इंस्टेंस वो खुद ब खुद
- 1:11:37पास कर देगा। ठीक है? ये स्प्रिंग
- 1:11:38फ्रेमवर्क की खासियत है। ठीक है? और
- 1:11:41स्प्रिंग बूट जो है वो बना है स्प्रिंग
- 1:11:42फ्रेमवर्क पर। ठीक है? तो यहां पर वो
- 1:11:45इनिशियल इनिशियलाइजेशन जो है यूजर सर्विस
- 1:11:47का वो टेकन केयर हो जाएगा यहां पर। ठीक
- 1:11:49है? अब देखिए हम लॉबक का इस्तेमाल कर रहे
- 1:11:51हैं। तो मैं नहीं चाहता मैं कंस्ट्रक्टर
- 1:11:53लिखूं। ठीक है? आदत बिगड़ गई है लॉबक का
- 1:11:56इस्तेमाल करने के बाद। ठीक है? तो यहां पर
- 1:11:58मैं लिख दूंगा रिक्वायर्ड आर्क
- 1:12:01कंस्ट्रक्टर। रिक्वायर्ड आस्क्
- 1:12:02कंस्ट्रक्टर का मतलब क्या है? यहां पर अगर
- 1:12:04मैं ऐसे लिखता हूं रिक्वायर्ड आस्क्
- 1:12:05कंस्ट्रक्टर। तो ये उन्हीं उन्हीं फील्ड्स
- 1:12:09का कंस्ट्रक्टर बनाएगा जो फाइनल है। तो
- 1:12:12देखिए जो फाइनल है उन्हीं का कंस्ट्रक्टर
- 1:12:14बनाएगा। ठीक है? जनरली होता क्या है? अगर
- 1:12:17मैं एक और फील्ड जनर डिफाइन कर दूं यहां
- 1:12:19पर प्राइवेट और स्ट्रिंग डिफाइन कर दूं ए
- 1:12:22बी सी। तो अगर मैं ऑल आस्क् कंस्ट्रक्टर
- 1:12:25लिखता हूं यहां पर तो वो क्या करेगा? इसको
- 1:12:27भी इंक्लूड कर देगा कंस्ट्रक्टर में। ठीक
- 1:12:29है? लेकिन ये स्ट्रिंग मैनेजर ऑब्जेक्ट है
- 1:12:31क्या? नहीं है स्प्रिंग मैनेजर ऑब्जेक्ट।
- 1:12:32तो मैं नहीं चाहता इसका ऑब्जेक्ट बने। तो
- 1:12:34मैं क्या करूंगा? मैं यूजर सर्विस को
- 1:12:35फाइनल मार्क कर देता हूं और यहां पर लिख
- 1:12:37देता हूं रिक्वायर्ड आस्क् कंस्ट्रक्टर।
- 1:12:39तो जो रिक्वायर्ड आर्गुमेंट्स हैं जैसे कि
- 1:12:40फाइनल है वो जो उन्हीं का कंस्ट्रक्टर
- 1:12:43बनेगा। ठीक है? अब ये एरर दे रहा है
- 1:12:44क्योंकि कंस्ट्रक्टर ऑलरेडी एग्ज़िस्ट करता
- 1:12:46है। तो इसको मैं डिलीट कर देता हूं यहां
- 1:12:47से। इसको भी डिलीट कर देता हूं। जरूरत
- 1:12:49जरूरत नहीं है। ठीक है? तो ये यूजर सर्विस
- 1:12:52का इंस्टेंस मिल गया। कंस्ट्रक्टर भी हट
- 1:12:53गया। कंस्ट्रक्टर लेकिन एक्चुअली कंपाइल
- 1:12:55टाइम पे क्रिएट हो रहा है रिक्वायर्ड आस्क
- 1:12:57कंस्ट्रक्टर की मदद से। ठीक है? और यहां
- 1:12:59पर रजिस्टर भी आ चुकी है। ठीक है? तो
- 1:13:02रजिस्टर में एरर आ रहा है तो मैं क्या
- 1:13:04करूंगा? क्रिएट कर दूंगा ये मेथड रजिस्टर।
- 1:13:06ठीक है? और ये देखिए यूजर का इंस्टेंस को
- 1:13:09एक्सेप्ट कर रहा है यहां पर। अब यहां पर
- 1:13:11मुझे क्या करना है? मुझे
- 1:13:14तो अब हम यहां पर क्या करेंगे? यहां पर
- 1:13:16मैं रिपॉज़िटरी का इस्तेमाल करूंगा। ठीक
- 1:13:18है? मुझे रिपॉजिटरी का इस्तेमाल करने की
- 1:13:19जरूरत पड़ेगी। क्योंकि इसको मुझे डेटाबेस
- 1:13:21में सेव करना है। तो मैं क्या करूंगा?
- 1:13:23यहां पर आ जाऊंगा और यहां पर प्राइवेट
- 1:13:25फाइनल और यूजर रिपॉज़िटरी और यूजर
- 1:13:28रिपॉज़िटरी ऐसे मैं क्रिएट कर दूंगा। और
- 1:13:31यहां पर देखिए ये बोल रहा है ओवर करोगे ना
- 1:13:33रेडम मार्क आ रहा है कि वेरिएबल यूजर
- 1:13:35रिपॉजिटरी माइट नॉट हैव बीन इनिशलाइज्ड।
- 1:13:36तो यहां पर आपको बोलना है रिक्वायर्ड आस्क
- 1:13:39कंस्ट्रक्टर। ठीक है? रिक्वायर्ड आस्क
- 1:13:40कंस्ट्रक्टर करोगे तो इसका कंस्ट्रक्टर
- 1:13:42ऑटोमेटिकली जनरेट हो जाएगा और ये
- 1:13:43इनिशियलाइज़ भी हो जाएगा। ठीक है? अब यहां
- 1:13:46पर आओगे आप तो आपको कहना है यूजर
- 1:13:47रिपॉज़िटरी
- 1:13:49डॉट सेव। ठीक है? और यहां पर यूजर को पास
- 1:13:52करना है। अब सेव मेथड क्या करता है? जो
- 1:13:55सेव्ड इंस्टेंस है उसको रिटर्न करता है।
- 1:13:57तो आप देखिए यहां पर अगर आप जाओगे डाउनलोड
- 1:14:00सोर्सेस करोगे तो यह देखिए यह पैरामीटर
- 1:14:05एंटिटी लेता है और रिटर्न्स द सेव्ड
- 1:14:08एंटिटी जो एंटिटी सेव हो चुकी है विद आईडी
- 1:14:10वो रिटर्न करता है। ठीक है? तो मैं क्या
- 1:14:12कर सकता हूं? इसका जो रिटर्न है उसी को
- 1:14:14रिटर्न कर सकता हूं ऐसे। ठीक है? इसका जो
- 1:14:16आउटपुट है वो रिटर्न हो जाएगा। ठीक है? और
- 1:14:18फिर उसका आउटपुट कंट्रोलर के पास आ जाएगा।
- 1:14:20ठीक है? इतना हो गया। अब हम क्या करेंगे?
- 1:14:23इतनी चीज हो चुकी है। ठीक है? इसको अब रन
- 1:14:28करके देखते हैं। ठीक है? तो
- 1:14:31तो एक काम करते हैं। इसको रन कर लेते हैं।
- 1:14:33ठीक है? रन करते हैं और इसको सीधे-सीधे
- 1:14:36कोशिश करते हैं। अच्छा मुझे देखिए प्र्ट आ
- 1:14:38गया कि इनेबल एनोडेशन प्रोसेसिंग। तो अगर
- 1:14:42आप एनोटेशंस का फर्स्ट टाइम इस्तेमाल करते
- 1:14:43हो। ठीक है? तो आपको एनोटेशन प्रोसेसिंग
- 1:14:46को इनेबल करना है। ये मैंने नहीं किया हुआ
- 1:14:48था। ठीक है? तो आपको यहां पर आना है। इस
- 1:14:51पर भी क्लिक कर दोगे तो काम हो जाएगा। ठीक
- 1:14:53है? इनेबल हो चुका है। लेकिन अगर यह नहीं
- 1:14:57चलता है तो आपको सेटिंग्स में आना है। और
- 1:15:00यहां पर एनोटेशन प्रोसेसिंग को सर्च करना
- 1:15:02है। एनोटेशन प्रोसेसिंग तो देखिए एनोटेशन
- 1:15:05प्रोसेसिंग और यहां पर जो है ये इनेबल
- 1:15:08होना चाहिए। ठीक है? और ऑब्टेन प्रोसेसर्स
- 1:15:11फ्रॉम क्लास पाथ होना चाहिए। ठीक है? कोई
- 1:15:13भी इशू आता है तो ये करना है आपको और फिर
- 1:15:15रन करना है प्रोजेक्ट तो लॉन्ग बॉक्स
- 1:15:17चलेगा। अच्छा यहां पर फिर से आ गया पंगा।
- 1:15:20तो ये इशू क्यों आ रहा है? इज़ ऑलरेडी
- 1:15:23डिफाइंड।
- 1:15:24अच्छा यहां पर कुछ दिक्कत हो गई है। तो ऑथ
- 1:15:27कंट्रोलर
- 1:15:29ऑथ कंट्रोलर में यह बोल रहा है
- 1:15:31कंस्ट्रक्टर
- 1:15:33अच्छा क्या हो गया है यहां पर इज ऑलरेडी
- 1:15:35डिफाइंड ठीक है रिक्वायर्ड आस्क्
- 1:15:38कंस्ट्रक्टर ऑल आस्क् कंस्ट्रक्टर अच्छा
- 1:15:41शायद यह डुप्लीकेट हो चुका है ऑल आस्क्
- 1:15:44कंस्ट्रक्टर भी लिखा है मैंने और
- 1:15:46रिक्वायर्ड आस्क् लिखा है तो ऑल आस्क् को
- 1:15:48हटा देता हूं फिलहाल ठीक है और फिर यहां
- 1:15:52पर आ जाता हूं और रिक्वायर्ड आस्क् तो सही
- 1:15:54है इसको रन करता हूं देखता हूं क्या
- 1:15:56दिक्कत हो रही है
- 1:15:58ठीक है? अब ऐप चल गई। ठीक है? तो वह एक
- 1:16:00डुप्लीकेट एनोटेशन था जिसको मैंने हटा
- 1:16:03दिया वहां से। ठीक है? तो देखिए एप्लीकेशन
- 1:16:06तो चल गई है। अब यहां पर आ जाते हैं। यहां
- 1:16:08पर मैंने ऑलरेडी पोस्टमैन कलेक्शन एक बना
- 1:16:10ली है। ठीक है? ये फिटनेस ऐप मोनोलिथ
- 1:16:12पोस्टमैन में आइए और आप यहां पे प्लस बटन
- 1:16:15पे क्लिक करके बना सकते हो कलेक्शन। और
- 1:16:16यहां पर ऐड अ न्यू रिक्वेस्ट कर दीजिए।
- 1:16:18ठीक है? इसको कोलैप्स कर देता हूं। अब
- 1:16:20यहां पर लोकल होस्ट ऐसे टाइप कर लीजिए।
- 1:16:23ठीक है? और आपकी जो भी एंड पॉइंट यूआरएल
- 1:16:25थी तो मेरी थी एपीआई ऑथ रजिस्टर तो यहां
- 1:16:28पर आइए ठीक है यहां पर लोकल होस्ट एटी80
- 1:16:31लिखिए स्लश एपीआई
- 1:16:34सॉरी एपीआई
- 1:16:37ऑथ स रजिस्टर ऐसे टाइप कीजिए बॉडी में आइए
- 1:16:41रॉ jसन ठीक है अब यहां पर रॉ jसन को हम
- 1:16:45पास करेंगे यहां पर बॉडी में ठीक है तो
- 1:16:47यहां पर jसन पहले बना लूंगा ऐसे और
- 1:16:49क्या-क्या फील्ड्स चाहिए हमें हमें चाहिए
- 1:16:51ईमेल ठीक है ईमेल को ऐसे ऐसे लिखना है। तो
- 1:16:53ये json का सिंटेक्स है। ईमेल फिर लिखना
- 1:16:56है पासवर्ड ऐसे।
- 1:16:59ठीक है? पासवर्ड और फिर हमें लिखना है
- 1:17:03फर्स्ट नेम ऐसे। तो देखिए ये जो आप कीज़
- 1:17:06लिख रहे हो JSN कैसा है? की है और फिर
- 1:17:09यहां पर कोलन के बाद वैल्यू है। करेक्ट?
- 1:17:11वैल्यू अभी एम्प्टी है। की और वैल्यू है।
- 1:17:13तो जो की लिख रहे हो ना आप ये डेटाबेस में
- 1:17:16आपने जो की डिफाइन की है वैसे होना चाहिए।
- 1:17:18डेटाबेस मतलब ये जो यूजर मॉडल में जो की
- 1:17:20आपने डिफाइन किया है जैसे फर्स्ट ऑफ़ एन
- 1:17:22कैपिटल ऐसे लिखना है आपको। ये सेम नेम
- 1:17:25फॉलो होना चाहिए। ठीक है? क्यों ये सेम
- 1:17:27नेम फॉलो होना चाहिए? क्यों? क्योंकि ऑथ
- 1:17:30कंट्रोलर में आप यूजर का इंस्टेंस
- 1:17:32एक्सेप्ट कर रहे हो। यूजर इंस्टेंस क्या
- 1:17:34है? ये। तो इसमें जो फील्ड्स है वो सेम टू
- 1:17:37सेम दिखनी चाहिए आपको। ठीक है? तो ये आपको
- 1:17:40लिखना है। ठीक है? यह आपने लिख दिया
- 1:17:42फर्स्ट नेम और फिर यहां पर आपको आना है और
- 1:17:45फिर यहां पर लिखना है लास्ट नेम। ठीक है?
- 1:17:48ऐसे इसको आपने लिख दिया और फिर यहां पर
- 1:17:53आपको क्रिएटेड एट क्रिएटेड एट को लिखना
- 1:17:57है। ठीक है? और इसको कोलन और फिर ऐसे और
- 1:18:01फिर आएगा अपडेटेड एट अपडेटेड एट। देखिए
- 1:18:04दोस्तों, एक चीज़ मैं आपको बता दूं।
- 1:18:06क्रिएटेड एट और अपडेटेड एट ये जो डेट्स
- 1:18:08है, यह ऑटो पॉपुलेट होनी चाहिए। लेकिन,
- 1:18:10अभी फिलहाल कैसे ऑटो पॉपुलेट करनी है, उस
- 1:18:13पर मैं आता नहीं हूं। ठीक है? स्टेप बाय
- 1:18:14स्टेप जाना है हमें। ठीक है? तो ईमेल में
- 1:18:16लिख दूंगा। ईमेल में हम लिखेंगे
- 1:18:18[email protected]
- 1:18:20पासवर्ड आप दे दीजिए abc@ 1 2 3
- 1:18:254 5 6 जो भी देना है आपको। फर्स्ट नेम आप
- 1:18:28लिख सकते हो अ जॉन और फिर लास्ट नेम आप
- 1:18:31लिख सकते हो डो इस तरीके से। देखिए
- 1:18:33क्रिएटेड एट और अपडेटेड एट ना यह एक
- 1:18:36पर्टिकुलर फॉर्मेट में जाना है। जैसे कि
- 1:18:38लोकल डेट टाइम। ठीक है? तो आप इस पर क्लिक
- 1:18:40कर सकते हो। यहां पर अगर आपको कुछ फॉर्मेट
- 1:18:42दिखता है। अच्छा लकीली यहां पर एक
- 1:18:46प्रीडफाइंड ये देखिए ये ये फॉर्मेट में
- 1:18:49डेटा चाहिए होता है। डेट टाइम में अगर आप
- 1:18:51डेट टाइम स्टोर करते हो डेटाबेस में तो ये
- 1:18:53फॉर्मेट में चाहिए होता है ISO 8601
- 1:18:55कैलेंडर सिस्टम। ठीक है? तो यहां पर देखिए
- 1:18:58ये एक डेट एग्जांपल बनी हुई है। ये कॉपी
- 1:19:00कर सकते हो आप। अगर आपको ये नहीं मिलता
- 1:19:02है। ठीक है? तो आप क्या कर सकते हो? टाइम
- 1:19:05स्टैंप हफन कन्व्टर पे आ सकते हो। और यहां
- 1:19:07पर थोड़े प्रीपॉपुलेटेड वैल्यूज़ आपको दिख
- 1:19:09जाएंगी। ठीक है? तो ये वाला जो है ISO
- 1:19:118601 इसको कॉपी कर लेना है और मैं इसको
- 1:19:15यहां पर पेस्ट कर दूंगा ऐसे ही। ठीक है?
- 1:19:18ये हो गया और इसको गेट से पोस्ट जरूर कर
- 1:19:20लीजिएगा। ठीक है? यह भूलिएगा नहीं तो गलत
- 1:19:22रिक्वेस्ट टाइप हो जाएगा। तो देखिए पोस्ट
- 1:19:24रिक्वेस्ट है। ये एंड पॉइंट है। ये बॉडी
- 1:19:27है उसकी रॉ jसin। ठीक है? इसको सेंड करके
- 1:19:29देखते हैं। होता क्या है? एक्चुअली क्रैश
- 1:19:31ना करे तो बेहतर है। अच्छा क्रिएट हो गया।
- 1:19:33चलो मुझे लगा कुछ एरर आएगी। कुछ डिबवक का
- 1:19:36चांस मिलेगा। लेकिन कोई बात नहीं। चलो
- 1:19:37क्रिएट हो चुकी है। देखिए डेटा क्रिएट हो
- 1:19:40चुका है। ठीक है? और ये है डेट टाइम का
- 1:19:43फॉर्मेट जिस जो सेव हो चुका है डेटाबेस
- 1:19:45में। ठीक है? और यहां पर आप देख सकते हो
- 1:19:47आईडी भी आपको मिली है यहां पर। ठीक है?
- 1:19:51आईडी भी मिली है। क्यों मिली है आईडी?
- 1:19:53क्योंकि आप सेव्ड यूजर का जो ऑब्जेक्ट है
- 1:19:55उसको रिटर्न कर रहे हो। और उसमें सेव होने
- 1:19:58के बाद आईडी ऑटोमेटिकली पॉपुलेट हो रही है
- 1:20:00क्योंकि डेटाबेस लेवल पर आपने ऑटोमेटिकली
- 1:20:02आईडी जो है उसे ऑटो जनरेट किया है। तो
- 1:20:05इसीलिए आपको ये मिल रहा है डेटा। ठीक है?
- 1:20:07तो उम्मीद करता हूं ये आपको समझ में आया।
- 1:20:09आप चाहे तो यहां पर डेटाबेस में जाकर ठीक
- 1:20:12है? अब यहां पर जाइए। अ यूजर टेबल कहां
- 1:20:15चली गई? अ ये रही यूजर टेबल। इसको ऐसे
- 1:20:17क्लिक कीजिए। और यहां पर आप देख सकते हो
- 1:20:19एक यूजर की एंट्री भी मिल जाएगी आपको। यही
- 1:20:21यूजर है जो आपको आपने रिक्वेस्ट की थी
- 1:20:24उसकी और यहां पर आपको सेव्ड मिल रहा है
- 1:20:26डेटाबेस में देख सकते हैं आप। ठीक है? तो
- 1:20:29फ्रॉम एपीआई एपीआई से लेकर पोस्टमैन से
- 1:20:33लेकर आपने डेटाबेस तक का सफर किया है आपके
- 1:20:35डेटा ने और आपका एप्लीकेशन बिल्कुल सही
- 1:20:37तरीके से वर्क कर रहा है। ठीक है? इसको और
- 1:20:39इंप्रूव करिएगा। जैसे कि देखिए इसमें ये
- 1:20:42ये जो क्रिएटेड अपडेटेड है ये ऐसा आपको
- 1:20:45सेंड नहीं करना है एपीआई में। ये ऑटो
- 1:20:47जनरेट होना चाहिए। करेक्ट? ये कैसे होगा
- 1:20:48ऑटो जनरेट? ये सारी चीजें हम स्टेप बाय
- 1:20:50स्टेप सीखेंगे। एक-एक करके जाएंगे। एक-एक
- 1:20:52करके समझेंगे चीजों को। ठीक है? बड़ा मजा
- 1:20:55आने वाला है। ठीक है? लेकिन अगर आप यहां
- 1:20:57तक पहुंच चुके हो, तो मुझे प्लीज बताइए
- 1:21:00आप। ठीक है? उम्मीद करता हूं ये हेल्पफुल
- 1:21:01रहा।
- 1:21:07तो दोस्तों, बात कर लेते हैं और समझ लेते
- 1:21:10हैं डीटीओ पैटर्न क्या होता है। ठीक है?
- 1:21:13तो देखिए डीटीओ। तो यह डीटीओ का मतलब क्या
- 1:21:16है? डीटीओ। टीटीओ का मतलब है डेटा
- 1:21:19ट्रांसफर ऑब्जेक्ट। ये मतलब नहीं है। ये
- 1:21:22एक्चुअली एक हिसाब से फुल फॉर्म है। ठीक
- 1:21:23है? मतलब मैं अभी समझा रहा हूं। ठीक है?
- 1:21:25तो देखिए अभी ऐप में हो क्या रहा है?
- 1:21:28हमारे पास एक कंट्रोलर है। ठीक है? तो ये
- 1:21:31हो गई कंट्रोलर। ठीक है? और कंट्रोलर। तो
- 1:21:35इस कंट्रोलर को जो रिक्वेस्ट आ रही है वो
- 1:21:37एक्सटर्नल वर्ल्ड से आ रही है। तो
- 1:21:38एक्सटर्नल वर्ल्ड से कोई भी हो सकता है।
- 1:21:40मान लीजिए आपने एपीआई किसके साथ शेयर करी
- 1:21:42है। फ्रंट एंड टीम यूज़ कर सकती है। एपीआई
- 1:21:44इसका काफी इस्तेमाल होता है। जैसे कि
- 1:21:46फ्रंट एंड टीम इस्तेमाल कर सकती है। बैक
- 1:21:47एंड टीम कोई दूसरी बैक एंड टीम इसका
- 1:21:49इस्तेमाल कर सकती है। कुछ काम के लिए कोई
- 1:21:53मोबाइल ऐप की टीम इस्तेमाल कर सकती है।
- 1:21:55ठीक है? तो ये एपीआई कोई भी यूज़ कर सकता
- 1:21:57है। ठीक है? अब देखिए यहां पर अगर आप इस
- 1:22:00कंट्रोलर में देखेंगे तो हमने क्या किया
- 1:22:02हुआ है? हमने यहां पर यूजर का जो मॉडल है
- 1:22:05उसको एक्सेप्ट किया है। यूजर का जो मॉडल
- 1:22:09है उसको एक्सेप्ट किया है अ एज अ
- 1:22:11पैरामीटर। ठीक है? और रिस्पांस में भी
- 1:22:14यूजर के मॉडल को रिटर्न किया है। तो मैं
- 1:22:16आपको दिखा देता हूं सोर्स कोड अगर आप यहां
- 1:22:17पर आएंगे। ठीक है? ये मैं सोर्स कोड बता
- 1:22:19रहा हूं। यहां पर आपको ये यूजर का जो अह
- 1:22:22ऑब्जेक्ट है, इसे ऐज़ अ रिक्वेस्ट एक्सेप्ट
- 1:22:25किया जा रहा है। और इसी को ऐज़ अ रिस्पांस
- 1:22:27रिटर्न किया जा रहा है। आप देख सकते हो।
- 1:22:29ठीक है? लेकिन, यह यूजर है क्या? ये एक
- 1:22:31हिसाब से मॉडल है। मॉडल है। इसका मतलब ये
- 1:22:33एंटिटी है जो डेटाबेस में पर्सिस्ट होनी
- 1:22:36है। ठीक है? तो देखिए यहां पर आते हैं। ये
- 1:22:40यूजर है। ठीक है? ये डेटाबेस में भी जाना
- 1:22:43है। ठीक है? ये डेटाबेस में जाएगी। ठीक
- 1:22:45है? यहां पर मैं बना देता हूं इस तरीके से
- 1:22:47डेटाबेस। ठीक है? ठीक है? ऐसा। और ये एरो
- 1:22:51पता नहीं बाहर चले गया। तो यहां से एक नया
- 1:22:53एरो बना लेता हूं। ठीक है? तो देखिए ये जो
- 1:22:56अ एंटिटी है ये पर्सिस्ट है डेटाबेस में।
- 1:22:59अब होता क्या है देखिए यह एंटीटी को
- 1:23:02डिज़ाइन किया गया था डेटाबेस पर्सिस्टेंस
- 1:23:04को ध्यान में रखते हुए ठीक है यूजर को
- 1:23:05हमें किस तरीके से हमारे एप्लीकेशन में
- 1:23:07रिप्रेजेंट करना है ठीक है हम इस यूजर
- 1:23:09क्लास को अक्रॉस दी एप्लीकेशन इस्तेमाल कर
- 1:23:11सकते हैं और इसी क्लास को हम डेटाबेस में
- 1:23:14परचेस भी कर रहे हैं तो ये एक हिसाब से
- 1:23:16डेटाबेस का स्ट्रक्चर यानी टेबल का
- 1:23:18स्ट्रक्चर कि किस तरीके से यूजर टेबल में
- 1:23:20भी डेटाबेस में रिप्रेजेंट होगी वो भी
- 1:23:22डिफाइन कर रहा है और इसको हम एक्सटर्नल
- 1:23:25वर्ल्ड से भी एक्सपोज़ कर रहे हैं। तो एक
- 1:23:27हिसाब से अगर हम कंट्रोलर लेयर में अगर
- 1:23:29इसको एज अ पैरामीटर लेते हैं और इसको एज ए
- 1:23:33रिस्पांस भी देते हैं तो यह एक हिसाब से
- 1:23:36आप समझ सकते हो ये एक हिसाब से एक्सपोज्ड
- 1:23:40है एक्सटर्नल वर्ल्ड को। ठीक है? तो
- 1:23:41एक्सटर्नल वर्ल्ड को पता है अच्छा ये ये
- 1:23:43सारी पैराटर्स इनपुट देने हैं। अब होता
- 1:23:46क्या है? देखिए फ्यूचर में मान लीजिए
- 1:23:47डेटाबेस का स्ट्रक्चर चेंज हो गया। मैंने
- 1:23:49कुछ ऐसी फील्ड्स को ऐड किया है जिसका मुझे
- 1:23:52ट्रैक रखना है डेटाबेस में इंटरनली। कहां
- 1:23:54ट्रैक रखना है डेटाबेस में? इंटरनली। ठीक
- 1:23:56है? तो मान लीजिए मैंने कुछ फील्ड्स को ऐड
- 1:23:58किया। अब होगा क्या? क्योंकि ये यूजर का
- 1:24:01जो ऑब्जेक्ट है वो यहां पर कंट्रोलर में
- 1:24:03इस्तेमाल हो रहा है और उसी का अ उसी का जो
- 1:24:07उसी को एक्सेप्ट किया जा रहा है रिक्वेस्ट
- 1:24:09और रिस्पांस बॉडी में। ठीक है? तो होगा
- 1:24:11क्या? जो एक्सटर्नल वर्ल्ड है इनको भी ये
- 1:24:13चेंजेस करनी होगी और उनको भी वो पैरामीटर
- 1:24:15पास करना होगा। तो देखिए यहां पर हम जो अ
- 1:24:18पास कर रहे हैं वो बिल्कुल यूजर का जो
- 1:24:20ऑब्जेक्ट है उसे पास कर रहे हैं। ठीक है?
- 1:24:22तो ये एक हिसाब से सही नहीं है। सही क्यों
- 1:24:25नहीं है? क्योंकि अगर आप कोई ऐसी फील्ड ऐड
- 1:24:27करते हो जिसका आपको इंटरनली ट्रैक रखना है
- 1:24:29डेटाबेस में तो आप कहां पर मॉडिफाई करोगे?
- 1:24:31आप मॉडिफाई करोगे यूजर मॉडल में। लेकिन
- 1:24:33यूजर मॉडल तो कंट्रोलर पे इस्तेमाल हो रखा
- 1:24:35है। ठीक है? आप उसको रिक्वेस्ट और
- 1:24:38रिस्पांस में इस्तेमाल कर रहे हो। तो
- 1:24:40रिक्वेस्ट और रिस्पांस में इस्तेमाल कर
- 1:24:41रहे हो तो जो अ इस एपीआई को यूज़ कर रहा है
- 1:24:46उन सभी को भी ये चेंज एडप्ट करना होगा। तो
- 1:24:49यहां पर प्रॉब्लम ये आती है कि बस डेटाबेस
- 1:24:51में आप कुछ चेंज करना चाह रहे हो। इंटरनल
- 1:24:53होना चाहिए। ये ये आउटसाइड द वर्ल्ड भी
- 1:24:55एक्सपोज हो रहा है। ठीक है? तो जनरली क्या
- 1:24:57किया जाता है? जो प्र जो कंट्रोलर ले लेयर
- 1:25:00है जो जहां पर हमने एपीआई डिफाइन करी है
- 1:25:03वहां पर मॉडल को इस्तेमाल नहीं किया जाता।
- 1:25:05जनरली मॉडल को इस्तेमाल नहीं किया जाता।
- 1:25:08वहां पर एक सेपरेट क्लास बनाई जाती है और
- 1:25:11उस क्लास का काम है ये रिप्रेजेंट करना कि
- 1:25:14किस तरीके से डेटा आउटसाइड द सिस्टम
- 1:25:16ट्रांसफर होना है। ठीक है? तो मैं क्या
- 1:25:18करूंगा? मैं एक हिसाब से यहां पर एक दूसरी
- 1:25:20क्लास बना लूंगा। यूजर को हटा दूंगा और
- 1:25:21दूसरी एक क्लास बना लूंगा और उसे कहूंगा अ
- 1:25:25यूजर रिक्वेस्ट। अच्छा यहां पर इस तरीके
- 1:25:27से नहीं लिखता हूं। यहां पर लिखता हूं।
- 1:25:28ठीक है? यूजर रिक्वेस्ट ऐसे मैं लिखूंगा
- 1:25:31इस क्लास को। ठीक है? तो यूजर रिक्वेस्ट
- 1:25:33की क्लास का काम क्या होगा कि वो कंट्रोलर
- 1:25:36में ये डिफाइन करेगा कि किस तरीके से यूजर
- 1:25:38की रिक्वेस्ट आनी है। और एक और क्लास मैं
- 1:25:41बना सकता हूं यूजर रिस्पांस जो कि ये
- 1:25:43डिक्टेट करेगा कि किस तरीके का रिस्पांस
- 1:25:45जाना है। ठीक है? तो उसको बेटर है मैं
- 1:25:47यहां पर लिख लेता हूं। तो अ तो देखिए यहां
- 1:25:50से रिक्वेस्ट आएगी इस तरीके से। ठीक है?
- 1:25:53और यूजर रिस्पांस क्या करेगा? यूजर
- 1:25:55रिस्पांस एक हिसाब से मैं इसको डुप्लीकेट
- 1:25:58कर लेता हूं। ठीक है? यहां पर यूजर
- 1:26:00रिस्पांस।
- 1:26:04तो ये दो क्लासेस आप बना सकते हो। ठीक है?
- 1:26:06तो यहां से जो भी रिस्पांस जाएगा वो इस
- 1:26:08फॉर्म में जाएगा। कंट्रोलर से जो भी
- 1:26:10रिस्पांस जाएगा वो इस फॉर्म में जाएगा।
- 1:26:12ठीक है? तो उम्मीद करता हूं ये समझ में आ
- 1:26:14रहा है आपको कि ये डीकपलिंग जो है यानी कि
- 1:26:16हमने डेटाबेस लेयर पे जो एंटिटी हम
- 1:26:20इस्तेमाल कर रहे हैं उसको हम कंट्रोलर में
- 1:26:22एज अ रिक्वेस्ट रिस्पांस ऑब्जेक्ट क्यों
- 1:26:24इस्तेमाल नहीं करते ठीक है इस्तेमाल कर
- 1:26:26सकते हो देखिए अभी हमने वैसे ही कोड किया
- 1:26:28हुआ है आप इस्तेमाल कर सकते हो कोई दिक्कत
- 1:26:30इसमें नहीं आई लेकिन आगे चलकर इसमें
- 1:26:32दिक्कत आएगी अगर आप कुछ प्राइवेट फील्ड्स
- 1:26:34ऐड करते हो कुछ ऐसी चीजें ऐड करते हो
- 1:26:36डेटाबेस लेवल पे जिसको आप आउटसाइड द
- 1:26:38सिस्टम एक्सपोज नहीं करना चाहते कि आप
- 1:26:40इसको ट्रैक कर रहे हो ठीक है तो वो दिक्कत
- 1:26:42आ जाएगी और एक चेंज अगर आप डेटाबेस लेवल
- 1:26:44पे करते हो तो सब जगह पे जहां-जहां एपीआई
- 1:26:46यूज़ हो रही है वहां पे सब जगह चेंज होगा।
- 1:26:48ठीक है? तो ये अच्छी बात नहीं है। तो इसके
- 1:26:51लिए एक सेपरेट क्लासेस को बनाया जाता है।
- 1:26:53एक और इन क्लासेस को कहा जाता है डीटीओस।
- 1:26:57ठीक है? तो ये दो जो क्लासेस हैं यूजर
- 1:26:59रिक्वेस्ट और यूजर रिस्पांस इसे कहा जाता
- 1:27:01है डीटीओस। क्योंकि ये क्या कर रहे हैं?
- 1:27:02ये डेटा को ट्रांसफर कर रहे हैं आउटसाइड द
- 1:27:04सिस्टम और डेटा किस तरीके से ट्रांसफर
- 1:27:06होना है उसको डिक्टेट कर रहे हैं। ठीक है?
- 1:27:09क्योंकि देखिए यहां पर क्रिएटेड एट जो
- 1:27:11रिक्वेस्ट और रिस्पांस है उसमें क्रिएटेड
- 1:27:14ऐड, अपडेटेड ऐड ये सब मैं एक्सेप्ट नहीं
- 1:27:16करना चाहता। लेकिन अभी फिलहाल क्योंकि मैं
- 1:27:18मॉडल यूज़ कर रहा हूं यहां पर रिक्वेस्ट और
- 1:27:20रिस्पांस में मैं नाम भी नहीं बोल सकता।
- 1:27:23करेक्ट? क्योंकि ये यूजर जो मॉडल है उसका
- 1:27:26पार्ट है। अगर यहां से हटाना है तो यूजर
- 1:27:28मॉडल से हटाना होगा। इसका मतलब डेटाबेस से
- 1:27:30हट जाएगा। तो सब इंटरलिंक्ड है। तो मैं
- 1:27:32नहीं चाहता। मैं सिर्फ चाहता ये चार
- 1:27:33फील्ड्स ही आए रिक्वेस्ट में और रिस्पांस
- 1:27:35में और यूजर को ये चार फील्ड्स ही दिखे।
- 1:27:37ये दो फील्ड्स मैं इंटरनल रखना चाहता हूं
- 1:27:39ऑडिट पर्पस के लिए। ठीक है? ठीक है? मैं
- 1:27:40अगर आगे चलके कुछ ऑडिट करना चाहता हूं कि
- 1:27:42ये यूजर की इनेशन कब अ चेंज हुई है, कब
- 1:27:45क्रिएट हुआ है ये यूजर? तो वो सारी चीजें
- 1:27:47मैं कर पाऊं इसकी मदद से। ठीक है? इसके
- 1:27:49लिए मैं इन दो फील्ड्स को इंटरनली ट्रैक
- 1:27:51करना चाहता हूं। तो मैं एक्सपोज नहीं करना
- 1:27:53चाहता। तो अगर वैसा करना है तो मुझे डीटीओ
- 1:27:56पैटर्न का इस्तेमाल करना होगा। ये डीटीओ
- 1:27:58पैटर्न एक तरीके का डिज़ाइन पैटर्न है।
- 1:28:00जहां पर आप अलग क्लासेस की मदद से
- 1:28:02रिक्वेस्ट का क्या ऑब्जेक्ट होना चाहिए और
- 1:28:04रिस्पांस का क्या ऑब्जेक्ट होना चाहिए।
- 1:28:06उसको आप डिक्टेट करते हो। और डिक्टेट
- 1:28:08क्यों करते हो? ये भी मैंने आपको बता
- 1:28:10दिया। ठीक है? तो ये यही रीज़न है कि डीटीओ
- 1:28:14नाम का ये चीज़ एक्सिस्ट करता है। तो हम
- 1:28:16हमारे जो डीटीओस है उसको थोड़ा बढ़िया सा
- 1:28:18नाम भी दे सकते हैं। जैसे कि अ रजिस्टर
- 1:28:21रिक्वेस्ट। ठीक है? रजिस्टर रिक्वेस्ट और
- 1:28:24यहां पर जो रिस्पांस है उसको यूजर
- 1:28:25रिस्पांस रख सकते हैं। ठीक है? तो उम्मीद
- 1:28:28करता हूं यह समझ में आ गया आपको कि किस
- 1:28:30तरीके से अ डीटीओस को इस्तेमाल किया जाता
- 1:28:33है। क्यों इस्तेमाल किया जाता है? क्या
- 1:28:34प्रॉब्लम्स हैं। देखिए मैं डीटीओ चाहता तो
- 1:28:36पहले ही इंट्रोड्यूस करवा सकता था। लेकिन
- 1:28:39जानबूझ के मैंने थोड़ा लेटर स्टेज पे
- 1:28:40इंट्रोड्यूस किया है ताकि मॉडल्स भी
- 1:28:42इस्तेमाल कर सकते हो। देखिए आपको यह पता
- 1:28:44होना चाहिए कि मॉडल्स को आप इस्तेमाल कर
- 1:28:46सकते हो यहां पर प्रेजेंटेशन लेयर पे कर
- 1:28:48रहे हैं हम लोग। करेक्ट? हम लोग यहां पे
- 1:28:50कर रहे हैं मॉडल्स का इस्तेमाल। लेकिन
- 1:28:52क्यों नहीं करना चाहिए? ठीक है? आप कर
- 1:28:54सकते हो। काफी सारी चीजें कर सकते हो। बट
- 1:28:56क्यों नहीं करना चाहिए? ये समझना जरूरी
- 1:28:58है। तो उसके लिए आपको पहले तो करके दिखाना
- 1:29:01होगा और फिर क्यों नहीं करना चाहिए वो भी
- 1:29:03जरूरी है समझना। तो उम्मीद करता हूं ये
- 1:29:06समझ में आ गया हो। देखिए अब ये दोनों
- 1:29:08क्लासेस अगर हम बना लेते हैं और इसको
- 1:29:09कंट्रोलर में इस्तेमाल करते हैं रिक्वेस्ट
- 1:29:11और रिस्पांस के लिए तो आपके पास कितना
- 1:29:14कंट्रोल आ जाएगा रिक्वेस्ट और रिस्पांस
- 1:29:16का। अगर आपको कोई फील्ड फ्यूचर में ऐड
- 1:29:17करनी है, कोई कैलकुलेटेड फील्ड ऐड करनी है
- 1:29:19जो डेटाबेस लेवल पे नहीं है तो आप उसे भी
- 1:29:21ऐड कर सकते हो रिक्वेस्ट और रिस्पांस
- 1:29:23ऑब्जेक्ट में। ठीक है? ये डेटाबेस लेयर से
- 1:29:25काफी अलग हो गया। और जो डिपेंडेंसी दी
- 1:29:28डेटाबेस लेयर पे वो काफी सेपरेट हो गई।
- 1:29:31ठीक है? तो उम्मीद करता हूं ये हेल्पफुल
- 1:29:33रहा। अब हम क्या करेंगे? अ हम आएंगे जल्दी
- 1:29:36से हमारे सोर्स कोड की ओर। ठीक है? तो
- 1:29:39सोर्स कोड में आ जाते हैं। और यहां पर
- 1:29:41जैसे कि मैंने आपको बताया डीटीओ का
- 1:29:42इस्तेमाल करना चाहिए हमें। तो मैं क्या
- 1:29:44करूंगा? मैं यहां पर एक नई क्लास बना
- 1:29:46लूंगा न्यू क्लास। और इसको बनाऊंगा मैं
- 1:29:48डीटीओ पैकेज के अंदर। तो डीटीओ डॉट डीटीओ
- 1:29:50डॉट लिखते हो तो ये पैकेज भी बना लेगा और
- 1:29:52क्लास भी बना लेगा। तो रजिस्टर रिक्वेस्ट
- 1:29:54नहीं तो आप सेपरेटली पहले पैकेज बना सकते
- 1:29:56हो और फिर उसके अंदर क्लास भी क्रिएट कर
- 1:29:58सकते हो। तो रजिस्टर रिक्वेस्ट नाम की ये
- 1:30:00क्लास बना ली है मैंने। ठीक है? और यहां
- 1:30:03पर अभी मैं मेंशन करूंगा प्राइवेट
- 1:30:05स्ट्रिंग ईमेल। तो अभी मुझे क्या-क्या
- 1:30:07फील्ड चाहिए रजिस्ट्रेशन रिक्वेस्ट में वो
- 1:30:09मैं मेंशन करूंगा। प्राइवेट स्ट्रिंग ईमेल
- 1:30:12प्राइवेट स्ट्रिंग
- 1:30:15उप्स प्राइवेट स्ट्रिंग पासवर्ड। ठीक है?
- 1:30:18फिर उसके बाद मुझे चाहिए इसको मैं
- 1:30:20डुप्लीकेट कर लेता हूं कंट्रोल डी से।
- 1:30:22उसके बाद मुझे चाहिए फर्स्ट नेम और फिर
- 1:30:25यहां पर चाहिए लास्ट नेम इस तरीके से। ठीक
- 1:30:28है? तो इतना मैंने मेंशन कर दिया यहां पर
- 1:30:30और इतना तो हो चुका है। चलिए तो रजिस्टर
- 1:30:33रिक्वेस्ट आ चुकी है यहां पर और यहां पर आ
- 1:30:35जाऊंगा यहां पर रिक्वेस्ट बॉडी में यूजर
- 1:30:37की बजाय मैं कहूंगा अ रजिस्टर रिक्वेस्ट
- 1:30:40तो मुझे यहां पे यूजर को हटा देना चाहिए।
- 1:30:43ठीक है? और यहां पर कहना चाहिए रजिस्टर
- 1:30:45रिक्वेस्ट। ठीक है? और यहां पर रजिस्टर
- 1:30:47रिक्वेस्ट इस तरीके से और यहां पर रजिस्टर
- 1:30:50रिक्वेस्ट को पास भी कर देना चाहिए। ठीक
- 1:30:51है? ठीक है? तो ये रजिस्टर रिक्वेस्ट पास
- 1:30:53हो चुका है। अब यहां पर अगर आप अंदर आते
- 1:30:55हो तो यहां पर सर्विस लेयर पर एरर आएगी
- 1:30:57क्योंकि आप मॉडल को एक्सेप्ट कर रहे हो
- 1:30:58यहां पर। तो यहां पर भी रजिस्टर रिक्वेस्ट
- 1:31:00को एक्सेप्ट करना है। ठीक है? और
- 1:31:02रिक्वेस्ट को ऐड कर दूंगा यहां पर इस
- 1:31:04तरीके से और यहां पर देखिए यहां पर अब
- 1:31:07प्रॉब्लम होगी। प्रॉब्लम नहीं कहूंगा। एक
- 1:31:09छोटी सी चीज है। यहां पर आप यूजर को सेव
- 1:31:12करना चाह रहे हो। यूजर का ऑब्जेक्ट है
- 1:31:14उसको सेव करना है डेटाबेस लेयर पर। ठीक
- 1:31:16है? लेकिन यूजर का ऑब्जेक्ट ही नहीं है
- 1:31:18अभी आपके पास। करेक्ट? क्योंकि आपने
- 1:31:19प्रेजेंटेशन लेयर जो कंट्रोलर है वहां से
- 1:31:21इसको हटा दिया है। कंट्रोलर से आपने यूजर
- 1:31:23के ऑब्जेक्ट को हटा दिया। तो अब यूजर का
- 1:31:24ऑब्जेक्ट जो है वो आपको क्रिएट करना
- 1:31:26पड़ेगा। ठीक है? तो क्रिएट करने के लिए हम
- 1:31:29क्या करेंगे? यूजर यूजर इज़ इक्वल टू न्यू
- 1:31:32यूजर इस तरीके से। और यहां पर अ देखिए
- 1:31:36सारी फील्ड्स आपको पास करनी होगी। तो जैसे
- 1:31:38कि आईडी ठीक है? स्ट्रिंग ईमेल आईडी ईमेल
- 1:31:42पासवर्ड फर्स्ट नेम लास्ट नेम ये सारी
- 1:31:45चीजें आपको पास करनी होगी एक-एक करके ठीक
- 1:31:49है तो आईडी तो अभी फिलहाल हमारे पास है
- 1:31:52नहीं मैं एक और चीज यहां पर बता देता हूं
- 1:31:55कि यहां पर हम कंस्ट्रक्टर का इस्तेमाल
- 1:31:56करेंगे यूजर ऑब्जेक्ट को क्रिएट करने के
- 1:31:58लिए लेकिन आगे चलकर इसको भी एनहांस
- 1:32:00करेंगे। तो अभी के लिए मैं यहां पर एक डमी
- 1:32:01आईडी लिख देता हूं। x01 ठीक है? ऐसे एक
- 1:32:05डमी आईडी। उसके बाद में ईमेल की जरूरत है
- 1:32:07तो यहां पर रिक्वेस्ट डॉट गेट अच्छा गेटर
- 1:32:11है नहीं देखिए यहां पर गेटर है नहीं तो
- 1:32:13हमको हमें क्या करना है यहां पर अ थोड़ा
- 1:32:15डेटा यहां पर डेटा एनोटेशन का इस्तेमाल
- 1:32:18करेंगे और फिर हम इस्तेमाल करेंगे नो
- 1:32:21आस्क् कंस्ट्रक्टर और फिर ऑल आस्क्
- 1:32:23कंस्ट्रक्टर इस तरीके से और यहां पर अगर
- 1:32:25आप आते हो तो गेट ईमेल इस तरीके से आएगा
- 1:32:28ठीक है अच्छा और अब पासवर्ड की जरूरत है
- 1:32:31तो रिक्वेस्ट डॉट गेट पासवर्ड देखिए किस
- 1:32:34ऑर्डर में पास करना है यहां यहां पर आपको
- 1:32:36सजेशन आ रहा है। अब आप पासवर्ड भरो।
- 1:32:37पासवर्ड थोड़ा बोल्ड है। अब आपको फर्स्ट
- 1:32:39नेम भी ऐड करना है। ठीक है? तो रिक्वेस्ट
- 1:32:42डॉट गेट फर्स्ट नेम। ठीक है? उसके बाद
- 1:32:44लास्ट नेम आएगा। तो रिक्वेस्ट डॉट गेट
- 1:32:47लास्ट नेम यहां पर। फिर उसके बाद लोकल डेट
- 1:32:49एंड टाइम क्रिएटेड एट और लोकल डेट एंड
- 1:32:52टाइम अपडेटेड एट। ये दोनों चीजें आपको पास
- 1:32:56करनी होगी। ठीक है? तो ये दोनों चीजों के
- 1:32:58लिए मैं क्या करूंगा? अ यहां पर आऊंगा और
- 1:33:03यहां पर अ डेट एंड टाइम यह क्रिएटेड एट और
- 1:33:06फिर उसके बाद अपडेटेड एट ये दोनों ऐसे
- 1:33:08मैनुअली पास कर दूंगा मैं ठीक है लोकल डेट
- 1:33:11एंड टाइम तो देखिए मैंने जो सिंटेक्स है
- 1:33:13उसको पूरा कर लिया है यहां पर ठीक है तो
- 1:33:15कुछ क्लासेस का इस्तेमाल किया है जो कि
- 1:33:17शायद नहीं लगेगी आपको ठीक है तो देखिए
- 1:33:19मेरे पास क्या था यहां पर स्ट्रिंग में
- 1:33:22डेट टाइम था करेक्ट स्ट्रिंग में था जो कि
- 1:33:24हम रिक्वेस्ट में पास कर रहे थे मैंने
- 1:33:26क्या किया उसको इंस्टेंट क्लास का
- 1:33:28इस्तेमाल किया है ठीक है इंस्टेंट एक
- 1:33:30क्लास है जिसमें आपको काफी सारे मेथड
- 1:33:32मिलते हैं। तो इंस्टेंट डॉट पार्स और फिर
- 1:33:34मैंने स्ट्रिंग में टेक्स्ट लिखा है इसको
- 1:33:36और फिर मैंने ऐड ज़ोन ज़ोन ऑफसेट यूटीसी और
- 1:33:38फिर उसको लोकल डेट टाइम में कन्वर्ट किया
- 1:33:40है। तो इतनी तीन मेथड्स को चेंज करके मुझे
- 1:33:44ये मिला है। ठीक है? और फिर अपडेटेड टाइम
- 1:33:46के लिए भी मैंने ये किया है। और फिर लिस्ट
- 1:33:48ऑफ के लिए एंप्टी लिस्ट ये एक्टिविटीज़ और
- 1:33:50रिकमेंडेशन की एम्प्टी लिस्ट है जिसे
- 1:33:52मैंने क्रिएट कर ली है। एक्टिविटीज़ और
- 1:33:54रिकमेंडेशन। अभी इसको एम्प्टी रखा है
- 1:33:55मैंने। ठीक है? और ये जो अप्रोच है इसको
- 1:33:58हम अपडेट करेंगे आगे चलकर। इससे सिंपलर
- 1:34:00अप्रोच भी है मैं उस पर भी आऊंगा। लेकिन
- 1:34:01फिलहाल वो एक अलग कांसेप्ट है। ठीक है? तो
- 1:34:04फिलहाल इसके थ्रू जाएंगे। और देखिए हमारे
- 1:34:05पास यूजर का एक ऑब्जेक्ट है वो बन चुका
- 1:34:07है। यहां पर कंस्ट्रक्टर का इस्तेमाल किया
- 1:34:09है। ठीक है? और इस अ इस कंस्ट्रक्टर का
- 1:34:13इस्तेमाल करने का ड्रॉबैक भी है जो कि मैं
- 1:34:14आपको बता देता हूं। यहां पर आपको आईडी
- 1:34:16मैनुअली हार्डकोड करनी है। और सारे जो
- 1:34:19पैरामीटर्स हैं वो आपको ऑर्डर में लिखने
- 1:34:21हैं। जैसे कि अगर कंस्ट्रक्टर आपका ईमेल
- 1:34:23पहले एक्सेप्ट कर रहा है तो आपको ईमेल
- 1:34:24पहले लिखना है और पासवर्ड बाद में। अगर आप
- 1:34:26पासवर्ड पहले लिखोगे और ईमेल बाद में तो
- 1:34:28गड़बड़ हो जाएगी। ठीक है? ईमेल की जगह
- 1:34:30पासवर्ड सेव होगा और पासवर्ड की जगह ईमेल
- 1:34:32सेव होगा। तो ये सारी चीजें हैं। इस मेथड
- 1:34:34का ड्रॉबैक है। ठीक है? लेकिन अभी के लिए
- 1:34:36फिलहाल हम डीटीओस पे फोकस करते हैं। इसको
- 1:34:38रन करता हूं मैं। ठीक है? इसको रन करके
- 1:34:40देखते हैं कि किस तरीके से आपको जो
- 1:34:43एप्लीकेशन है वो दिखाई देती है। तो देखिए
- 1:34:47ये एप्लीकेशन तो रन हो गई है। अच्छा सॉरी
- 1:34:49मैंने कहीं क्लिक कर दिया। लेकिन यहां पर
- 1:34:51देखिए अभी रजिस्टर रिक्वेस्ट में आप
- 1:34:52देखोगे तो ईमेल फर्स्ट पासवर्ड फर्स्ट नेम
- 1:34:55लास्ट नेम है। ठीक है? आप यहां पर आ जाइए।
- 1:34:58यहां पर अब आपको ये दो चीजें पास करने की
- 1:35:00जरूरत ही नहीं है। ठीक है? मैंने इसको हटा
- 1:35:03दिया। इसको करूंगा इस तरीके से रन।
- 1:35:07अच्छा एरर आ गई। क्या एरर आ गई? एरर देख
- 1:35:10लेते हैं। तो एरर यहां पर आई है। ठीक है?
- 1:35:14देखिए एरर आती है ना आपको जब भी यहां पर
- 1:35:16यहां पर एरर आती है। यहां पर एरर का आपको
- 1:35:19डिटेल्ड इनेशन नहीं मिलेगा। तो आपको यहां
- 1:35:21पर आना है और यहां पर देखिए यहां पर आपको
- 1:35:24ये दिखाई देगा। ठीक है? और ये आपको बोलेगा
- 1:35:27कि रो वाज़ ऑलरेडी अपडेटेड और डिलीटेड बाय
- 1:35:31अनदर ट्रांजैक्शन। अच्छा तो आईडी के बिना
- 1:35:35आईडी के बिना वाला कंस्ट्रक्टर
- 1:35:37कंस्ट्रक्टर चाहिए यहां पर। तो यहां पर यह
- 1:35:39कह रहा है कि आईडी को पास नहीं करना है
- 1:35:41आपको। तो यहां पर मैं क्या करता हूं? यहां
- 1:35:43पर इसके बजाय एक आईडी सेट करने के बजाय
- 1:35:46यहां पर नल लिख देता हूं। ठीक है? तो आईडी
- 1:35:48है ही नहीं। ठीक है? इसको रन करके देखते
- 1:35:50हैं। आईडी नल है अभी फिलहाल। तो आईडी
- 1:35:53जनरेट करना है स्प्रिंग बूट को। ठीक है?
- 1:35:56तो ये रन हो चुका है। ठीक है? और यहां पर
- 1:35:58आ जाते हैं। यहां पर इसको फिर से रन करते
- 1:36:00हैं। तो देखिए अब रन हो गया। और आईडी भी
- 1:36:02ऑटो जनरेट हो गई और सारी की सारी इनेशन जो
- 1:36:04है डेटाबेस में स्टोर भी हो गई। ठीक है?
- 1:36:06यहां पर जो डेट मैंने ली है 2025 के लिए
- 1:36:08है। ठीक है? थोड़ी पहले की डेट है। आपको
- 1:36:10चाहिए तो आप 2026, 2027 जो डेट चाहिए आप
- 1:36:13ले सकते हो। ठीक है? यहां पर हार्ड कोड कर
- 1:36:15सकते हो। मैंने यहां पर 2025 की डेट ली
- 1:36:17है। ठीक है? 2026 ले सकते हो, कुछ भी ले
- 1:36:19सकते हो। ठीक है? लेकिन ये हो चुका है
- 1:36:21यहां पर और जो डेटा है वो सेव हो रहा है।
- 1:36:24अब देखिए मैं इस डीटीओ अप्रोच का एक
- 1:36:27बेनिफिट बताता हूं आपको। अगर मुझे आगे
- 1:36:29चलकर यहां पर कोई कैलकुलेटेड फील्ड ऐड
- 1:36:31करनी है। कोई भी कैलकुलेटेड फील्ड जैसे कि
- 1:36:33यूजर की ऐज ऐड करनी है। और मान लीजिए मैं
- 1:36:36डेटाबेस में यूजर की एज स्टोर नहीं कर रहा
- 1:36:38हूं। मैं डेट ऑफ़ बर्थ स्टोर कर रहा हूं।
- 1:36:40ठीक है? यहां पर मैं स्टोर कर रहा हूं डेट
- 1:36:42ऑफ़ बर्थ। एज नहीं स्टोर कर रहा हूं। लेकिन
- 1:36:45जो रिस्पांस है, ठीक है? जो रिस्पांस है,
- 1:36:48तो रिस्पांस अभी हमने बनाया नहीं है।
- 1:36:49अच्छा, एक दिक्कत हो गई है। हमने यहां पर
- 1:36:51अभी तक रिस्पांस नहीं बनाया। ये यूजर को
- 1:36:52भी हटाना है यहां पर। तो रिस्पांस में मैं
- 1:36:56डेट ऑफ़ बर्थ नहीं दिखाना चाहता। मैं
- 1:36:58डायरेक्ट एज कैलकुलेट करके दिखाना था। तो
- 1:36:59मैं वो कर्स अप कर सकता हूं क्योंकि मेरे
- 1:37:01पास अब ये सेपरेट क्लास है। डेटाबेस पर
- 1:37:04डिपेंडेंट नहीं है। ये सिर्फ कंट्रोलर में
- 1:37:06इस्तेमाल हो रही है और ये सिर्फ डेटा
- 1:37:07ट्रांसफर के लिए इस्तेमाल हो रही है। तो
- 1:37:08मैं जो चाहूं वहां पर मॉडिफाई कर सकता
- 1:37:10हूं। ठीक है? फ्यूचर में अगर आगे चलके कोई
- 1:37:12फील्ड यहां पर आती है डेटाबेस लेवल पर तो
- 1:37:15वो रजिस्टर रिक्वेस्ट को इंपैक्ट नहीं
- 1:37:17करेगी। अनलेस एंड अंटिल मैं आकर उस फील्ड
- 1:37:19को मैनुअली यहां पर ऐड करता हूं। ठीक है?
- 1:37:21तो जनरली एपीआई जब भी चेंज होती है ना ये
- 1:37:23ऐसे ही ऑन द फ्लाई चेंज नहीं होती है। ठीक
- 1:37:25है? उसको प्लान किया जाता है। तो अगर आपकी
- 1:37:27ईपीआई काफी सारे सिस्टम्स में इस्तेमाल हो
- 1:37:29रही है जैसे कि मोबाइल एप्स, वेब एप्स और
- 1:37:31आपने एक्सटर्नली भी शेयर कर रखी है एपीआई
- 1:37:34को तो इसके लिए पहले कम्युनिकेशन सर्कुलेट
- 1:37:36होता है कि ये पैरामीटर्स चेंज हो गए और
- 1:37:38ईपीआई की नई वर्जन बनती है। काफी सारी
- 1:37:41चीजें रहती है और चीजों को एक तरीके से
- 1:37:42माइग्रेट किया जाता है क्योंकि एक नया
- 1:37:44पैरामीटर ऐड हो रहा है। और आपको बैकवर्ड
- 1:37:46कंपैटिबिलिटी भी देखनी होती है। क्योंकि
- 1:37:48अगर आपने कोई नया पैरामीटर ऐड किया है,
- 1:37:50कोई पैरामीटर को निकाला है, मॉडिफाई किया
- 1:37:51है, कुछ रूल्स चेंजेस किए हैं, तो आपको ये
- 1:37:54भी मेक श्योर करना है कि जो जो पुरानी
- 1:37:56एपीआई को यूज़ कर रहे हैं सिस्टम्स वो चलने
- 1:37:59चाहिए बिना किसी इशू के। ठीक है? तो इस
- 1:38:02तरीके से चीजें प्लान की जाती है
- 1:38:03प्रोडक्शन लेवल पर अगर काफी सारे लोग
- 1:38:05एपीआई को इस्तेमाल कर रहे हैं। लेकिन लोकल
- 1:38:08लेवल पे क्या है? आप तो कभी भी कुछ भी
- 1:38:10चेंज कर सकते हो वैसे भी। ठीक है? तो इतना
- 1:38:13मैंने कर दिया यहां पर। अब हमें क्या करना
- 1:38:15है? ये जो रिस्पांस है उसको बनाना है तो
- 1:38:17मैं क्या करूंगा यहां पर आऊंगा और यहां पर
- 1:38:19अ रजिस्टर रिक्वेस्ट की बजाय ठीक है तो ये
- 1:38:23है ऑथ कंट्रोलर और रजिस्टर रिक्वेस्ट की
- 1:38:26बजाय मैं यहां पर बनाऊंगा इसको डुप्लीकेट
- 1:38:29कर लेता हूं रजिस्टर रिक्वेस्ट की बजाय
- 1:38:31यूजर रिस्पांस
- 1:38:34ऐसे बना दूंगा ठीक है और यहां पर देखिए ये
- 1:38:37यूजर रिस्पांस है स्ट्रिंग ईमेल वगैरह ये
- 1:38:40सब लिख दिया मैंने और यहां पर लिख दूंगा
- 1:38:42प्राइवेट
- 1:38:44स्ट्रिंग लिंक आईडी
- 1:38:48ठीक है ईमेल फर्स्ट नेम ये सारी चीजें तो
- 1:38:50मैंने लिख दी है और फिर यहां पर लिख दूंगा
- 1:38:52प्राइवेट लोकल डेट टाइम
- 1:38:56ठीक है इस तरीके से और क्रिएटेड एट ऐसा
- 1:38:59लिख दिया मैंने और इसको डुप्लीकेट कर लेता
- 1:39:01हूं और यहां पर लिख दूंगा अपडेटेड एट
- 1:39:04ठीक है इस तरीके से तो मुझे रिस्पांस का
- 1:39:07स्ट्रक्चर यही रखना है आईडी भी पास करनी
- 1:39:09है सब कुछ पास करना है और यह जो यूजर
- 1:39:10रिस्पांस है इसको अब मैं इस्तेमाल करूंगा
- 1:39:12कंट्रोलर में तो यहां पर यूजर की बजाय
- 1:39:15यूजर रिस्पांस लिख दूंगा। ठीक है? लेकिन
- 1:39:17अब यहां पर दिक्कत क्या है? देखिए, अब अगर
- 1:39:19आप यहां पर यूजर रिस्पांस का इस्तेमाल कर
- 1:39:22रहे हो। ठीक है? यूजर रिस्पांस का
- 1:39:24इस्तेमाल कर रहे हो। लेकिन रिटर्न आप यूजर
- 1:39:25कर रहे हो। ठीक है? रिटर्न आप यूजर कर रहे
- 1:39:28हो। क्यों? क्योंकि रजिस्टर जो है ये यूजर
- 1:39:31को रिटर्न कर रही है। तो यहां पर प्रॉब्लम
- 1:39:32हो गई ना? तो यहां पर अब क्या करना होगा?
- 1:39:34आपके पास ये जो है सेव मेथड ये यूजर को
- 1:39:38रिटर्न करती है। तो आपको अब इस यूजर को
- 1:39:41कन्वर्ट करना होगा यूजर रिस्पांस के
- 1:39:44स्ट्रक्चर में। ठीक है? और फिर आपको
- 1:39:46रिटर्न करना होगा इसको। तो मैं क्या
- 1:39:48करूंगा? इसको यहां पर ले लेता हूं। और
- 1:39:49यहां पर एक दूसरा ऑब्जेक्ट बनाता हूं।
- 1:39:51यूजर सेव्ड यूजर इज़ इक्वल टू यूजर इस
- 1:39:56तरीके से। और फिर यहां पर मैप टू अ
- 1:40:00रिस्पांस ऐसे एक मेथड बना दूंगा। तो यह
- 1:40:02मेथड का काम सिर्फ यह रहेगा कि यह जो यूजर
- 1:40:05के ऑब्जेक्ट है उसको रिस्पांस स्ट्रक्चर
- 1:40:06में सिर्फ मैप करेगा। ठीक है? और यहां पर
- 1:40:09यूजर के बजाय रजिस्टर अ सॉरी रजिस्टर नहीं
- 1:40:13यूजर रिस्पांस इस तरीके से मैं इसको
- 1:40:15क्रिएट कर दूंगा। और यहां पर आ जाऊंगा और
- 1:40:17यह मेथड को क्रिएट कर दूंगा यहां पर। ठीक
- 1:40:19है? तो देखिए ये मेथड क्रिएट हो चुकी है।
- 1:40:21अब मैं क्या करूंगा? यहां पर यूजर
- 1:40:22रिस्पांस का ऑब्जेक्ट बनाऊंगा। यूजर
- 1:40:24रिस्पांस रिस्पांस इज़ इक्वल टू न्यू यूजर
- 1:40:27रिस्पांस इस तरीके से। अच्छा सॉरी यूजर
- 1:40:30नेम यूजर रिस्पांस ऐसे बना दूंगा और फिर
- 1:40:34यहां पर रिस्पांस डॉट सेट आईडी और यहां पर
- 1:40:38यूजर डॉट गेट आईडी ऐसे सेव्ड यूजर डॉट गेट
- 1:40:42आईडी ठीक है यहां पर रिस्पांस डॉट सेट
- 1:40:47ईमेल और फिर यहां पर यूजर डॉट गेट ईमेल
- 1:40:50इसे कर दूंगा ठीक है और फिर यहां पर आएगा
- 1:40:54रिस्पांस डॉट सेट पासवर्ड और फिर यहां पर
- 1:40:58आ जाएगा
- 1:40:59गेट पासवर्ड ठीक है रिस्पांस डॉट गेट
- 1:41:04फर्स्ट नेम ठीक है तो हर फील्ड को आपको
- 1:41:06मैप करना है और सही तरीके से मैप करना है
- 1:41:08ये ध्यान रखिएगा कि यहां पर अगर फर्स्ट
- 1:41:10नेम का सेटर कॉल कर रहे हो तो यहां पर
- 1:41:12फर्स्ट नेम का ही गेटर कॉल होना है फर्स्ट
- 1:41:14नेम का सेटर कॉल कर रहे हो और लास्ट नेम
- 1:41:16का गेटर अगर कॉल कर रहे हो तो फर्स्ट नेम
- 1:41:18की बजाय क्या सेट होगा लास्ट नेम करेक्ट
- 1:41:21तो ये सारी चीजें छोटी-छोटी चीजें हैं जो
- 1:41:23अक्सर लोग गलतियां कर देते हैं ठीक है तो
- 1:41:26टेस्टिंग काफी जरूरी हो जाती है यहां
- 1:41:28ठीक है? अब यहां पर देखिए क्रिएटेड डेट
- 1:41:31क्रिएटेड सेट क्रिएटेड एट और यहां पर गेट
- 1:41:35क्रिएटेड एट ऐसे फिर इसको सेव कर देना है
- 1:41:40और फिर गेट अपडेटेड
- 1:41:43एट ऐसे और फिर यहां पर आएगा सेट अपडेटेड
- 1:41:47एट
- 1:41:49इस तरीके से। ठीक है? और यहां पर रिटर्न
- 1:41:51कर देना है इसको। तो रिटर्न करूंगा मैं
- 1:41:53रिस्पांस।
- 1:41:55ठीक है? ऐसा तो ये मैप टू रिस्पांस तो
- 1:41:57यहां पर मैं क्या कर रहा हूं? यह मेथड
- 1:41:58क्या कर रहा है? यूजर का जो टाइप है, यूजर
- 1:42:02क्लास का जो टाइप उसको एक्सेप्ट करेगा और
- 1:42:04यूजर रिस्पांस में कन्वर्ट करके रिटर्न कर
- 1:42:06देगा बस। क्योंकि यहां पर जो जरूरत है
- 1:42:08हमें वो यूजर रिस्पांस की जरूरत है रिटर्न
- 1:42:10टाइप में। ठीक है? तो इसको रन कर देते हैं
- 1:42:12अब और रन करके देखते हैं ये ठीक से रन
- 1:42:14होता है या नहीं। ठीक है? तो रन तो होना
- 1:42:17ही है क्योंकि हमने लॉजिक में कुछ चेंज
- 1:42:20नहीं किया है। सिर्फ जो कंट्रोलर पे जो
- 1:42:22क्लासेस यूज़ हो रही थी और जो मॉडल है
- 1:42:24हमारा उसमें डीकप्लिंग कर दी है हमने।
- 1:42:26यहां पर आओगे आप। अब फिर से क्रिएट करोगे
- 1:42:28इसको तो देखिए ये रिस्पांस और रिक्वेस्ट
- 1:42:30में कुछ चेंज नहीं हुआ है। ठीक है? चेंज
- 1:42:33विज़िबल नहीं है लेकिन चेंज काफी कुछ हुआ
- 1:42:35है। आपने जो डेटाबेस लेयर है और जो
- 1:42:38प्रेजेंटेशन लेयर है यानी कि जो कंट्रोलर
- 1:42:40है जो आउटसाइड वर्ल्ड को दिखाई दे रहा है
- 1:42:42उन दोनों को डीकपल कर दिया। इसका मतलब
- 1:42:44दोनों अब एक दूसरे पे डिपेंडेंट नहीं है।
- 1:42:45अगर आप डेटाबेस लेवल पे कुछ चेंज करते हो,
- 1:42:47कुछ फील्ड ऐड करते हो यहां पर। ठीक है?
- 1:42:50मान लीजिए मैंने जैसे कि मैंने पहले
- 1:42:51एग्जांपल दिया, मैं यहां पर डेट ऑफ़ बर्थ
- 1:42:53ऐड कर देता हूं। लेकिन यहां पे यूजर
- 1:42:55रिस्पांस में ठीक है? यहां पर रजिस्टर्ड
- 1:42:57यूजर में आएगा डेट ऑफ़ बर्थ। डेट ऑफ़ बर्थ
- 1:42:59एक्सेप्ट कर रहा हूं। लेकिन यूजर रिस्पांस
- 1:43:00में मैं एज रिटर्न कर सकता हूं कैलकुलेट
- 1:43:02करके। कैलकुलेट कहां करूंगा उसको? बिज़नेस
- 1:43:05लॉजिक है वह। तो, वह होगा यहां पर अ जो
- 1:43:09क्या बोलते हैं? यूजर सर्विस में। तो,
- 1:43:11यहां पर जब मैप कर रहा हूं मैं ठीक है?
- 1:43:13यूजर रिस्पांस में तो मैं एज को लेके सॉरी
- 1:43:17डेट ऑफ बर्थ को लेके एज में कन्वर्ट करके
- 1:43:18सेट करूंगा यहां पर। ठीक है? तो इस तरीके
- 1:43:20से आप कंट्रोल कर सकते हो चीजों पे।
- 1:43:22डेटाबेस लेवल पे कुछ चीजें हैं और जो
- 1:43:25लोगों को दिख रही है एपीआई के थ्रू वो अलग
- 1:43:27चीज है। ठीक है? तो ये है कॉनंसेप्ट ऑफ
- 1:43:30डीटीओ। डीडीओ देखिए डीडीओ पैटर्न काफी
- 1:43:33इंपॉर्टेंट है। ठीक है? और अगर आप
- 1:43:35प्रोडक्शन लेवल एप्लीकेशनेशंस पर काम करते
- 1:43:37हैं तो डीडीओ पैटर्न का काफी इस्तेमाल
- 1:43:39होगा। इंटरव्यू फेवरेट भी है यह। अगर आप
- 1:43:42इंटरव्यूज़ के लिए अपीयर करते हो, तो आपको
- 1:43:44इंटरव्यू में काफ़ी अह ग्रिल किया जा सकता
- 1:43:46है कि डीटीओ पैटर्न क्यों इस्तेमाल करते
- 1:43:48हैं। हां, बट आप मॉडल्स को भी तो इस्तेमाल
- 1:43:51कर सकते हो और मॉडल्स को इस्तेमाल करोगे
- 1:43:52तो अलग क्लासेस आपको मेंटेन करने की जरूरत
- 1:43:54नहीं है। यहां पर दो अलग क्लासेस मेंटेन
- 1:43:56करने की जरूरत आ रही है यहां पर। ठीक है?
- 1:43:58तो फ्यूचर प्रूफ बना रहे हैं हम सिस्टम
- 1:44:01को। देखिए, अभी ऐसी कोई क्लास, ऐसी कोई
- 1:44:03फील्ड्स हमने ऐड नहीं की है हमारे रजिस्टर
- 1:44:05रिक्वेस्ट और यूजर रिस्पांस में जो
- 1:44:08डेटाबेस से अलव हो। अभी हमने नहीं की है।
- 1:44:10अभी आपने की है क्या? अभी नहीं की है।
- 1:44:12क्योंकि अभी तो यह जो यूजर रिस्पांस की
- 1:44:14क्लास है, डेटाबेस की तरह ही दिख रही है।
- 1:44:16लेकिन, हमने अभी से इसको इंट्रोड्यूस कर
- 1:44:18दिया है क्योंकि फ्यूचर प्रूफ बनाना चाहते
- 1:44:19हैं हम सिस्टम। ठीक है? आगे चलके अगर आप
- 1:44:23कोई डेटाबेस में चेंज करते हो जो कि होने
- 1:44:26ही वाला है। ठीक है? आप कोई भी एप्लीकेशन
- 1:44:28पर काम करो, कोई भी प्रोडक्शन ग्रिड
- 1:44:30एप्लीकेशन पर काम करो। हर डेवलपमेंट
- 1:44:32साइकिल के साथ कुछ चेंजेस आती है जिसमें
- 1:44:34डेटाबेस स्ट्रक्चर भी चेंज हो सकता है। हर
- 1:44:37इसमें चेंज नहीं होगा लेकिन हो सकता है।
- 1:44:39ठीक है? तो चेंज को आप रोक नहीं सकते हो।
- 1:44:42ठीक है? इंप्रूवमेंट्स है वो। अगर आप चेंज
- 1:44:44कर रहे हो और अगर आपने ये डीकपलिंग नहीं
- 1:44:47कर रखा है। डीडीओ पैटर्न का इस्तेमाल नहीं
- 1:44:48किया है तो आपने डेटाबेस पे चेंज किया तो
- 1:44:50वो सारी एपीआई में भी चेंज हो गया। और
- 1:44:52ईपीएस जहां-जहां यूज हो रही है, मान लीजिए
- 1:44:54आपके मोबाइल एप्स में यूज हो रही है,
- 1:44:56फ्रंट एंड वेब एप्लीकेशन पर यूज हो रही
- 1:44:58है, 1 2 मिलियन यूज़र्स यूज़ कर रहे हैं
- 1:44:59एप्लीकेशन को। सब ब्रेक होने लग जाएगा।
- 1:45:01ब्रेक होने लग जाएगा, तो दिक्कत आने लग
- 1:45:03जाएगी। ठीक है? तो ये बेसिकली फ्यू आप
- 1:45:07फ्यूचर प्रूफ बना रहे हो। ठीक है? अपनी
- 1:45:08ईपीआई को तो ऐसा क्वेश्चंस भी लोग पूछते
- 1:45:11हैं इंटरव्यू्यूज में कि अच्छा बट इनिशियल
- 1:45:14स्टेज पे आपने तो आपका जो अ कंट्रोलर में
- 1:45:18आप जो यूज़ कर रहे हो डेटा जो दिखा रहे हो
- 1:45:19कंट्रोलर में वो डेटाबेस में आपने जो
- 1:45:22स्टोर किया हुआ है उससे तो अलग नहीं है।
- 1:45:24तो क्यों क्यों इस्तेमाल करना है आपको
- 1:45:26डीटीओ पैटर्न? तो इसका आंसर यह है कि आप
- 1:45:29फ्यूचर प्रूफ बना रहे हो। ये प्रोजेक्ट
- 1:45:30ग्रो ही होगा। आगे चलकर आप यह सब चेंजेस
- 1:45:32करने जाओगे तो काफी दिक्कत हो सकती है।
- 1:45:34इसका इसका बेस्ट वे है कि स्टार्टिंग से
- 1:45:37ही डे वन से ही आप बेस्ट प्रैक्टिससेस को
- 1:45:39फॉलो कीजिए। इतना एफर्ट टेकिंग भी है नहीं
- 1:45:41है। ठीक है? तो उम्मीद करता हूं डीटीओ
- 1:45:43पैटर्न आपको समझ में आया कि क्या है डीटीओ
- 1:45:45पैटर्न? क्यों इस्तेमाल करते हैं हम डीटीओ
- 1:45:47पैटर्न और क्या प्रॉब्लम सॉल्व करता है
- 1:45:49डीटीओ पैटर्न? और डीटीओ पैटर्न का जो फुल
- 1:45:51फॉर्म है उसे जरूर याद रखना। डेटा
- 1:45:53ट्रांसफर ऑब्जेक्ट। और हमारे प्रोजेक्ट
- 1:45:55में क्या है डेटा ट्रांसफर ऑब्जेक्ट?
- 1:45:57रजिस्टर रिक्वेस्ट और यूजर रिस्पांस दोनों
- 1:45:59डेटा ट्रांसफर ऑब्जेक्ट है। रजिस्टर
- 1:46:01रिक्वेस्ट का काम है जो इनकमिंग रिक्वेस्ट
- 1:46:03है उसका स्ट्रक्चर डिफाइन करना। तो वो
- 1:46:05इनकमिंग डेटा का जो ट्रांसफर ऑब्जेक्ट है
- 1:46:08उसको डिफाइन करता है और यूजर रिस्पांस का
- 1:46:10काम है आउटगोइंग जो डेटा है यूजर जो
- 1:46:13आउटगोइंग डेटा है उसका जो स्ट्रक्चर है
- 1:46:15उसको डिफाइन करता है। जो यूजर को रिस्पांस
- 1:46:17दिखता है उसको डिफाइन करता है। उम्मीद
- 1:46:19करता हूं यह हेल्पफुल रहा और क्लियर भी।
- 1:46:26तो देखिए दोस्तों, बात करते हैं अब बिल्डर
- 1:46:29पैटर्न के बारे में और समझते हैं यह हमारी
- 1:46:31जो लाइफ है उसको किस तरीके से आसान कर
- 1:46:34देता है। ठीक है? ये काफी बढ़िया अ तरीके
- 1:46:37से मैं डेमोंस्ट्रेट करने वाला हूं। ठीक
- 1:46:38है? तो यहां पर देखिए यूजर सर्विस में आ
- 1:46:40जाते हैं और यहां पर मैं एक आपको प्रॉब्लम
- 1:46:42बताता हूं। ठीक है? तो यूजर सर्विस में
- 1:46:45अगर आप आते हो यहां पर आप देखोगे यहां पर
- 1:46:47हम यूजर का ऑब्जेक्ट बना रहे हैं। इस
- 1:46:48तरीके से काफी अ काफी लंबा या काफी लें्थी
- 1:46:54कंस्ट्रक्टर लिखा है हमने ये कंस्ट्रक्टर
- 1:46:56का इस्तेमाल किया है। ठीक है? और यहां पर
- 1:46:58प्रॉब्लम क्या है? देखिए कंस्ट्रक्टर
- 1:46:59इस्तेमाल करना ऐसी कोई बुरी बात नहीं है।
- 1:47:01ठीक है? कंस्ट्रक्टर इस्तेमाल करते हो।
- 1:47:02लेकिन अगर आपका जो कंस्ट्रक्टर है वो काफी
- 1:47:05सारे पैरामीटर्स को एक्सेप्ट करता है। ठीक
- 1:47:07है? तो कंस्ट्रक्टर का इस्तेमाल करना
- 1:47:09थोड़ा सा प्रॉ प्रॉब्लमेटिक हो जाता है।
- 1:47:11मैं आपको बताता हूं कैसे। यहां पे सबसे
- 1:47:12पहली प्रॉब्लम तो ये है कि आपको हर फील्ड
- 1:47:15को पास करना है। आपके पास उसकी वैल्यू हो
- 1:47:17या ना हो। अगर नहीं है उसकी उसकी वैल्यू
- 1:47:19आपके पास तो आपको नल लिख देना है। ठीक है?
- 1:47:21तो यहां पर देखिए मैं इसको भी नल लिख सकता
- 1:47:23हूं। ये इतना बड़ा कोड लिखने की जरूरत
- 1:47:24नहीं है। इसको नल लिख सकता हूं। ठीक है?
- 1:47:26ये सारी चीजों को भी नल लिख सकता हूं। ठीक
- 1:47:28है? लेकिन नल लिख दिया तो रीडेबिलिटी हट
- 1:47:30जाती है। देखिए यहां पर अगर मैं नल लिख
- 1:47:31दूं इस तरीके से यह रीडेबिलिटी हट गई। ठीक
- 1:47:34है? यहां पर मैं अगर नल लिख दूं तो यह
- 1:47:36रीडेबिलिटी हट गई। यह क्या नल डाला है
- 1:47:38मैंने? कौन सा फील्ड है? यह सब। चलो आईडी
- 1:47:40तो हाईलाइट कर रहा है लेकिन मतलब ये सही
- 1:47:44बात नहीं है। ठीक है? तो यहां पर आ जाता
- 1:47:47है बिल्डर पैटर्न। बिल्डर पैटर्न का
- 1:47:48बेनिफिट ये है कि आप आपका जो कोड है ये जो
- 1:47:52कोड था उसको क्लियर और रीडेबल बना देता है
- 1:47:54सबसे पहले तो और आपको पैरामीटर की जो
- 1:47:58ऑर्डर है उसको रिमेंबर करने की कोई जरूरत
- 1:48:00नहीं है। तो देखिए यहां पर क्या है? एक
- 1:48:01दूसरी दिक्कत मैं आपको बता दूं। यहां पर
- 1:48:02पैरामीटर का ऑर्डर है ना वह अह सही सही
- 1:48:06होना चाहिए। ठीक है? तो यहां पर अगर आप
- 1:48:08ईमेल लिख रहे हो पहले ठीक है और अगर आपका
- 1:48:12कंस्ट्रक्टर एक्सेप्ट करता है ईमेल यहां
- 1:48:13पर तो आपको पहले ईमेल लिखना है पासवर्ड
- 1:48:15नहीं अगर आप पासवर्ड पहले लिखते हो तो
- 1:48:16ईमेल की जगह पासवर्ड चले जाएगा ठीक है ये
- 1:48:19दिक्कत है तो आपको कंस्ट्रक्टर में आप किस
- 1:48:21ऑर्डर से पैरामीटर आप एक्सेप्ट कर रहे हो
- 1:48:23वो सारी चीजें मालूम होनी चाहिए ठीक है वो
- 1:48:25एक दिक्कत है तो यहां पर देखिए बिल्डर
- 1:48:27पैटर्न में हम क्या करेंगे यहां पर हम
- 1:48:29ऑब्जेक्ट तो बनाएंगे ऑब्जेक्ट वही बनेगा
- 1:48:32लेकिन एक अलग सिंटेक्स की मदद से बनेगा
- 1:48:34ठीक है और इसके लिए हमें एक एन एनोटेशन का
- 1:48:36इस्तेमाल करना पड़ेगा जो कि लॉन्ग बॉक्स
- 1:48:38हमें आसानी से प्रोवाइड करता है। तो मैं
- 1:48:41यहां पर आ जाऊंगा और यहां पर एक एनोटेशन
- 1:48:43का इस्तेमाल करूंगा। मैं यहां पर बोलूंगा
- 1:48:44बिल्डर।
- 1:48:45ठीक है? और यहां पर आ जाऊंगा फिर अ यूजर
- 1:48:48सर्विस में और यहां पर अ इसे मैं कमेंट कर
- 1:48:52देता हूं फिलहाल के लिए। ठीक है? ऐसे और
- 1:48:55यहां पर मैं क्या करूंगा? यहां पर लिखूंगा
- 1:48:56यूजर यूजर इज़ इक्वल टू। ठीक है? और यहां
- 1:49:00पर मैं लिखूंगा यूजर क्लास डॉट देखिए
- 1:49:03बिल्डर डॉट बिल्ड। ठीक है? तो, यह जो है
- 1:49:07हमें ऑब्जेक्ट बिल्ड करने में मदद करने
- 1:49:09वाला है। ठीक है? और इसकी मदद से हम काफी
- 1:49:12आसानी से हमारा जो ऑब्जेक्ट है उसे हम बना
- 1:49:15सकते हैं। ठीक है? तो मैं आपको देखिए
- 1:49:16एग्जांपल दे देता हूं। तो यहां पर अ मैं आ
- 1:49:19जाता हूं और यहां पर मैं लिखूंगा डॉट और
- 1:49:22देखिए अ सॉरी डॉट ऐसे लिखूंगा तो मुझे
- 1:49:24सारे मेथड्स का एक्सेस मिल जाता है। तो जो
- 1:49:25भी फील्ड नेम्स हैं वो मेथड के एक उसका
- 1:49:28मेथड्स हमें मिल जाता है। ठीक है? तो अगर
- 1:49:30मुझे मान लीजिए ईमेल सेट करना है। ठीक है?
- 1:49:32तो मुझे मेथड को बुलाना है और फिर यहां पर
- 1:49:34अ रिक्वेस्ट डॉट गेट ईमेल ईमेल को पास कर
- 1:49:37देना है। ठीक है? मुझे फर्स्ट नेम पास
- 1:49:39करना है तो मुझे लिखना है फर्स्ट नेम और
- 1:49:41फिर रिक्वेस्ट डॉट गेट फर्स्ट नेम इस
- 1:49:43तरीके से। ठीक है? फिर मुझे लास्ट नेम
- 1:49:46लिखना है यहां पर और फिर लिखना है
- 1:49:47रिक्वेस्ट डॉट गेट लास्ट नेम। ठीक है? तो
- 1:49:49इस तरीके से हम ऑब्जेक्ट क्रिएट करते जा
- 1:49:51रहे हैं। ठीक है? और यहां पर कोई कंफ्यूजन
- 1:49:53नहीं है कि कौन सा पैरामीटर पहले डालना
- 1:49:55है, कौन सा पैरामीटर सेकंड डालना है। कोई
- 1:49:57कंफ्यूजन नहीं है। क्यों? क्योंकि हम
- 1:49:58बिल्डर पैटर्न का इस्तेमाल कर रहे हैं। हम
- 1:50:00कंस्ट्रक्टर का नहीं कर रहे हैं। आपको अगर
- 1:50:02फर्स्ट नेम पहले डालना है, आप फर्स्ट नेम
- 1:50:03पहले डालिए। आपको अगर लास्ट नेम पहले
- 1:50:05डालना है, आप लास्ट नेम पहले डालें। यह
- 1:50:06पूरा आपका डिसीजन है, आपका चॉइस है। तो
- 1:50:09काफी बढ़िया है जैसा आपको समझ में आ रहा
- 1:50:11है। ठीक है? और यहां पर फर्स्ट नेम लिख
- 1:50:12दिया मैंने। लास्ट नेम लिख दिया। और
- 1:50:14रजिस्टर रिक्वेस्ट में और क्या आ रहा है?
- 1:50:15ईमेल, पासवर्ड, फर्स्ट नेम, लास्ट नेम। बस
- 1:50:17ये चार ही चीज़ आ रही है। तो मैं क्या
- 1:50:18करूंगा? ईमेल, फर्स्ट नेम, लास्ट नेम और
- 1:50:21यहां पर मुझे पासवर्ड ऐड करना है। तो मैं
- 1:50:23पासवर्ड ऐड कर दूंगा। और फिर मैं कहूंगा
- 1:50:25अच्छा मैं कहूंगा रिक्वेस्ट डॉट गेट
- 1:50:28पासवर्ड। ऐसे। ठीक है? और बिल्ड कॉल कर
- 1:50:30दूंगा। बस इतना ही करना है मुझे। और बाकी
- 1:50:32की जो सारी फील्ड्स है वो नल सेट हो
- 1:50:34जाएगी। ठीक है? नल सेट हो जाएगी। तो मुझे
- 1:50:36सारी फील्ड्स में ऐसा नल नल लिखने की
- 1:50:38जरूरत है नहीं। अगर नल पास करना है तो ये
- 1:50:40बेनिफिट है बिल्डर पैटर्न का। ठीक है?
- 1:50:42देखिए कंस्ट्रक्टर से भी आप क्रिएट कर
- 1:50:44सकते हो। लेकिन कंस्ट्रक्टर्स इतना
- 1:50:45कन्वीनिएंट नहीं है। कल को अगर आप यहां पर
- 1:50:47एक और फील्ड ऐड करते हो तो कंस्ट्रक्टर
- 1:50:49आपको एरर देने लग जाएगा। क्योंकि
- 1:50:51कंस्ट्रक्टर में वो पैरामीटर ऐड हो जाएगी।
- 1:50:52क्योंकि कंस्ट्रक्टर आप ऑटो जनरेट कर रहे
- 1:50:54हो। ऑल आस्क् कंस्ट्रक्टर। करेक्ट? तो एक
- 1:50:56नई फील्ड ऐड करी तो कंस्ट्रक्टर एरर देने
- 1:50:58लग जाएगा। अब ये सेम कंस्ट्रक्टर आपने 20
- 1:51:00जगह इस्तेमाल कर रखा है अक्रॉस द
- 1:51:02प्रोजेक्ट। सब जगह रेड मार्क्स आएंगे और
- 1:51:04सब जगह आपको जाके मॉडिफाई करना है। बिल्डर
- 1:51:06पैटर्न में क्या है? आपको आपने यहां पर
- 1:51:09फील्ड ऐड करी। अब यहां पर एरर नहीं आने
- 1:51:10वाली आपको। नहीं आने वाली है। आपको अगर
- 1:51:13पास करना है वो फील्ड की वैल्यू तो यहां
- 1:51:15पर आके मैनुअली पास करना है। आपको एरर
- 1:51:17नहीं आएगी। जो चल रहा है वो चलता रहेगा।
- 1:51:19ठीक है? तो यह बेनिफिट है बिल्डर पैटर्न
- 1:51:22का और उम्मीद करता हूं यह आपको समझ में आ
- 1:51:24रहा है कि किस तरीके से ये आपकी जो चीजें
- 1:51:27हैं यानी कि जो डेवलपमेंट का जो फ्लो है
- 1:51:30उसको किस तरीके से एनहांस कर देता है और
- 1:51:32इसको मैं रन करता हूं। देखिए रन भी सिंपल
- 1:51:34तरीके से होगा जैसे पहले हो रहा था। ठीक
- 1:51:36है? अगर आप चाहते हो क्रिएटेड डेट और ये
- 1:51:39सब भी पास करो तो यहां पर देखिए क्रिएटेड
- 1:51:41एट यह सब भी आप पास कर सकते हो। ऐसी कोई
- 1:51:42दिक्कत वाली बात नहीं है। आप जितने
- 1:51:44फील्ड्स चाहो पास कर सकते हो। एप्लीकेशन
- 1:51:46रन हो चुकी है। मैं फिर से एप्लीकेशन
- 1:51:47क्रिएट करूंगा। देखिए एप्लीकेशन क्रिएट हो
- 1:51:49चुकी है। ये यूजर क्रिएट हो चुका है और
- 1:51:51यहां पर देखिए क्रिएटेड ऐड और अपडेटेड ऐड
- 1:51:53नल सेट हो गए क्योंकि हमने उसको उसकी
- 1:51:55वैल्यू पास नहीं करी है। ठीक है? आईडी भी
- 1:51:58जनरेट हो चुकी है। तो देखिए इस तरीके से
- 1:52:00आप बिल्डर पैटर्न का इस्तेमाल कर सकते हो
- 1:52:02और बिल्डर पैटर्न आपको आपके जो प्रोडक्शन
- 1:52:04ग्रेड प्रोजेक्ट्स है उसमें काफी इस्तेमाल
- 1:52:06होता दिखेगा। क्योंकि जनरली क्या होता है?
- 1:52:08प्रोडक्शन ग्रेड जो प्रोजेक्ट्स होते हैं
- 1:52:10उसमें जो मॉडल्स होते हैं, क्लासेस होती
- 1:52:11है उसमें बहुत सारे फील्ड्स होते हैं। ठीक
- 1:52:14है? 50 फील्ड ऐसे फील्ड्स ज्यादा होते
- 1:52:16हैं। तो अभी उतने फील्ड्स वाला
- 1:52:19कंस्ट्रक्टर आप इस्तेमाल करने लग जाओगे तो
- 1:52:21बैंड बज जाएगी। ठीक है? तो काफी आसान
- 1:52:23तरीके से आपको इस्तेमाल करना है इसको। और
- 1:52:25काफी सिंपल कांसेप्ट है। ये ऐसा कुछ
- 1:52:27डिफिकल्ट कांसेप्ट नहीं है। इसका एक
- 1:52:28सिंटेक्स है जो आपको ध्यान रखना है। ठीक
- 1:52:30है? और बिल्डर बिल्डर पैटर्न का यूज़ केस
- 1:52:32क्या है? अगर आपको कोई यूज़ केस पूछे तो
- 1:52:34बिल्डर पैटर्न हेल्प करता है कॉम्प्लेक्स
- 1:52:37ऑब्जेक्ट्स क्रिएट करने में। ठीक है? और
- 1:52:40वो ऑब्जेक्ट को आप क्रिएट कर सकते हो एक
- 1:52:42रीडेबल तरीके से, फ्लैक्सिबल तरीके से और
- 1:52:44सेफ तरीके से। ठीक है? आपको लंबे लेंथी
- 1:52:48कंस्ट्रक्टर्स इस्तेमाल करने की जरूरत
- 1:52:50नहीं है और आपको कंफ्यूज होने की भी जरूरत
- 1:52:52नहीं है। आप आसानी से बिल्डर पैटर्न की
- 1:52:54मदद से कितनी भी बड़ी क्लास हो आप उसको
- 1:52:57डील कर सकते हो, मैनेज कर सकते हो। तो ये
- 1:52:59है बिल्डर पैटर्न। उम्मीद करता हूं
- 1:53:01हेल्पफुल रहा और आप इसको फॉलो कर पाए।
- 1:53:08तो अब हमारी एप्लीकेशन में हो क्या रहा
- 1:53:10है? देखिए यह जो क्रिएटेड ऐट और अपडेटेड
- 1:53:13ऐट है इसको हम मैनुअली पास कर रहे थे। ठीक
- 1:53:15है? और अब पास नहीं कर रहे तो नल आ रही
- 1:53:17है। तो मैं आपको एक ऐसा तरीका दिखाऊंगा
- 1:53:19जिसकी मदद से आप जो क्रिएटेड ऐट, अपडेटेड
- 1:53:22ऐट ये जो फील्ड्स है इसको ऑटो जनरेट कर
- 1:53:25सकते हो। ऑटो जनरेशन का मतलब क्या है? जब
- 1:53:28कभी भी आप कोई रिकॉर्ड क्रिएट करते हो
- 1:53:30डेटाबेस में तो ये क्रिएटेड ऐड और अपडेटेड
- 1:53:32ऐड ऑटोमेटिकली जनरेट हो जाएंगे। उस टाइम
- 1:53:34स्टैंप को सेव कर लेगा यह फील्ड में जेपीए
- 1:53:37ठीक है इतना हो जाएगा और अगर आप फ्यूचर
- 1:53:39में कोई अपडेट करते हो उस रिकॉर्ड में
- 1:53:41यानी कि आपने यूजर का नाम चेंज कर दिया तो
- 1:53:43क्रिएटेड एट चेंज नहीं होगा क्रिएटेड एट
- 1:53:44फिक्स है एक ही बार जनरेट होगा वो अपडेटेड
- 1:53:47एट अपडेट होगा हर फील्ड अपडेट पे या हर
- 1:53:50रिकॉर्ड अपडेट पे ठीक है उम्मीद करता हूं
- 1:53:52ये समझ में आ रहा है आपको तो ये हम कैसे
- 1:53:54कर सकते हैं हमें मैनुअली मैनेज नहीं करना
- 1:53:56और हाइबनेट का इस्तेमाल कर रहा है जेपीए
- 1:53:58तो करेक्ट इंटरनली तो हबनेट में बढ़िया से
- 1:54:01एनोटेशंस है जिसकी मदद से ये काफी काफी
- 1:54:03आसानी से डील कर सकते हो आप इस चीज से।
- 1:54:06ठीक है? तो मैं आपको बताता हूं। यहां पर आ
- 1:54:08जाइए आप। ठीक है? यहां पर अपने सोर्स कोड
- 1:54:11पर आ जाइए और मॉडल में चले जाइए। अब देखिए
- 1:54:13मॉडल में यहां पर आपको एक एनोटेशन लगाना
- 1:54:16है। ठीक है? एनोटेशन पे यहां पे @ लिखना
- 1:54:19है ये फील्ड के ऊपर और यहां पर लिखना है
- 1:54:20क्रिएटेड या क्रिएशन टाइम स्टैंप। तो
- 1:54:23देखिए ये जो एनोटेशन है वो आपको कहां से आ
- 1:54:26रहा है? वो आ रहा है आपको हबनेट से। ये
- 1:54:28हबनेट प्रोवाइड कर रहा है। ठीक है? और
- 1:54:31यहां पर आप एंटर कर दीजिए। तो ये जो
- 1:54:33टाइम्स ये जो एनोटेशन है ये क्या करेगा?
- 1:54:35अगर आप यहां पर जाते हो डाउनलोड
- 1:54:36सोर्सर्सेस करोगे। ठीक है? तो अच्छा
- 1:54:39सोर्सर्सेस डाउनलोड होने में थोड़ा टाइम
- 1:54:41लग रहा है। लेकिन अगर आप इस एनोटेशन के
- 1:54:43अंदर जाते हो तो देखिए क्रिएशन टाइम
- 1:54:45स्टैंप। ठीक है? तो देखिए स्पेसिफाई दैट द
- 1:54:48एनोटेटेड फील्ड ऑफ़ प्रॉपर्टी इज़ जनरेटेड
- 1:54:52क्रिएशन टाइम स्टैंप। द टाइम स्टैंप इज़
- 1:54:54जनरेटेड जस्ट वंस व्हेन द एंटिटी इंस्टेंस
- 1:54:57इज़ इंसर्टेड इन द डेटाबेस। इसका मतलब यह
- 1:54:59है कि हम कहना चाह रहे हैं कि इस फील्ड का
- 1:55:03इस फील्ड में जो क्रिएशन टाइम स्टैंप है
- 1:55:05उसको ऑटोमेटिकली जनरेट किया जाए और वो कब
- 1:55:08जनरेट होगा? जब एंटिटी को पहली बार
- 1:55:12डेटाबेस में सेव किया जा रहा है। तो अगर
- 1:55:14आप कोई रिकॉर्ड को सेव करते हो पहली बार
- 1:55:17डेटाबेस में तब उसका एक क्रिएटेड टाइम
- 1:55:19स्टैंप जनरेट होगा। ठीक है? और यह इन
- 1:55:22मेमोरी जनरेट होता है और फिर यह डेटाबेस
- 1:55:25में स्टोर किया जाता है। ठीक है? और यहां
- 1:55:27पर आप देख सकते हो यहां पर। ठीक है? तो ये
- 1:55:30सारी चीजें हैं। यह क्रिएशन टाइम स्टैंप
- 1:55:32और अपडेशन के लिए भी एक एनोटेशन आता है।
- 1:55:35तो यहां पर एक अपडेट
- 1:55:37टाइम स्टैंप। ये आप देख पा रहे हो। ये भी
- 1:55:39हाइबनेट से आ रहा है। ठीक है? इसमें भी
- 1:55:40जाकर आप मैं आपको दिखा देता हूं। देखिए
- 1:55:42अपडेट टाइम स्टैंप। यह भी सिमिलर है।
- 1:55:45स्पेसिफाई दैट एनोटेटेड फील्ड ऑफ़ द
- 1:55:47प्रॉपर्टी इज़ अ जनरेटेड अपडेटेड टाइम
- 1:55:49स्टैंप। द टाइम स्टैंप इज़ रीजनरेटेड एव्री
- 1:55:52टाइम एन इंस्टेंस इज़ अपडेटेड इन द
- 1:55:54डेटाबेस। तो यह जो टाइम स्टैंप है यह वाला
- 1:55:56अपडेटेड एट यह हर बार रीजेनरेट होगा जब
- 1:55:59कभी भी आप कोई अपडेट करते हो कोई भी
- 1:56:01रिकॉर्ड में। तो अगर मान लीजिए आपके पास
- 1:56:04एक रिकॉर्ड है। ठीक है? यहां पर मैं आ
- 1:56:06जाता हूं। ठीक है? तो यहां पर मान लीजिए
- 1:56:08मेरे पास ये यूजर की जो टेबल है मैं मान
- 1:56:12लीजिए इस इसका ईमेल चेंज करता हूं। ये जो
- 1:56:14यूजर है पहला यूजर इसका ईमेल चेंज करता
- 1:56:16हूं। ठीक है? अगर मैं ईमेल चेंज करता हूं
- 1:56:18तो क्रिएटेड एट चेंज नहीं होगा। क्रिएटेड
- 1:56:20एट का मतलब है ये एंटिटी कब क्रिएट हुआ?
- 1:56:22ये रिकॉर्ड जो है ये कब क्रिएट हुआ है? यह
- 1:56:24अपडेट नहीं होगा। क्रिएटेड ऐड क्या अपडेट
- 1:56:26होगा? अपडेटेड ऐड अपडेट होगा। ठीक है?
- 1:56:29दोनों के दोनों जब आप पहली बार इंसर्ट
- 1:56:31करते हो तब क्रिएट हो जाएंगे। दोनों के
- 1:56:33दोनों टाइम स्टैंप क्रिएट हो जाएंगे। और
- 1:56:35क्रिए पहली बार जब आप इंसर्ट करते हो तो
- 1:56:37ये दोनों टाइम स्टैंप सेम रहेंगे। लेकिन
- 1:56:39जब आप कोई अपडेट करते हो यानी कि कोई भी
- 1:56:42फर्स्ट नेम, लास्ट नेम, पासवर्ड, ईमेल जो
- 1:56:44भी अपडेट करो आप। ठीक है? तो ये जो
- 1:56:46अपडेटेड है ये अपडेट हो जाएगा। ठीक है?
- 1:56:49उम्मीद करता हूं ये हेल्पफुल रह रहा है और
- 1:56:51इसको अब थोड़ा एक्शन में देखते हैं। इसको
- 1:56:53रन करता हूं मैं। ठीक है? तो रन करने के
- 1:56:56पहले तो देखिए यहां पर नल आ रहा था जब मैं
- 1:56:57यूजर क्रिएट करता था। लेकिन अब ये रन होने
- 1:57:00के बाद नल तो आना नहीं चाहिए क्योंकि हमने
- 1:57:02वो दो टाइम स्टैंप ऐड कर दिए। ये दोनों
- 1:57:04हाइबनेट दे रहा है हमें टाइम स्टैंप अ
- 1:57:06सॉरी एनोटेशन जो है वो हाइबनेट दे रहा है।
- 1:57:08तो यहां पर आ जाता हूं। फिर से यूजर
- 1:57:09क्रिएट करता हूं। और यहां पर देखिए ऑटो
- 1:57:12जनरेट हो चुकी है। ऑटो जनरेट है कि नहीं
- 1:57:15मैजिक? ठीक है? पहले हम लोग खुद से क्रिएट
- 1:57:17कर रहे थे। अब यह ऑटो क्रिएट हो रहा है।
- 1:57:19अब आप इसमें कोई अपडेट करते हो, कुछ भी
- 1:57:21करते हो। देखिए यह जो भी डेट रहेगी आपकी
- 1:57:232026, 27, 28 आप जब भी यह वीडियो देख रहे
- 1:57:25हो, ठीक है? ये एनोटेशन का इस्तेमाल कीजिए
- 1:57:28और ये एनोटेशन चलेगा उसी तरह से। ठीक है?
- 1:57:31तो देखिए ये कैसे और यहां पर डेटाबेस में
- 1:57:32भी अगर आप आते हो इसको रन करोगे आप। रन
- 1:57:36कीजिए तो देखिए आपको यहां पर ये जो एंट्री
- 1:57:38दिखाई दी है वो है एंट्री। ठीक है? तो जी
- 1:57:42हां। तो इस तरीके से काम करता है। ये ये
- 1:57:44वाली एंट्री सॉरी। तो इस तरीके से काम
- 1:57:47करता है यह वाला एनोटेशन। ये वाले एनोटेशन
- 1:57:49की मदद से ये जो टाइम स्टैंप की जो
- 1:57:51मैनेजमेंट है उससे आप बच सकते हो। ठीक है?
- 1:57:54आपको अभी टाइम स्टैंप खुद से जनरेट नहीं
- 1:57:56करना है। आपको डील नहीं करना है। आपने बस
- 1:57:57एक एनोटेशन लगा दिया और काम बन गया। ठीक
- 1:57:59है? और कौन प्रोवाइड कर रहा है हमें ये
- 1:58:01एनोटेशन? कहां से आ रही है एनोटेशन? हबनेट
- 1:58:04से आ रही है। ठीक है? और जनरली मैं आपको
- 1:58:07एक चीज़ बता दूं। आप कभी भी प्रोडक्शन लेवल
- 1:58:09पे काम करते हो ना, तो यह क्रिएटेड एट,
- 1:58:11अपडेटेड एट या रिकॉर्ड कब क्रिएट हुआ है?
- 1:58:13कब अपडेट हुआ है? यह जनरली ट्रैक रखते ही
- 1:58:16है हर एंटिटी में इसका। ठीक है? क्योंकि
- 1:58:19अगर कुछ चेक करना है, पेमेंट की डिटेल चेक
- 1:58:21करनी है तो पेमेंट का अगर एक टेबल है, आप
- 1:58:23पेमेंट की इनेशन स्टोर कर रहे हो तो
- 1:58:24पेमेंट कब हुई है वो आपको इससे पता चल
- 1:58:26जाएगा और पेमेंट होने के बाद कुछ अपडेट
- 1:58:29हुआ है या नहीं वो इससे पता चल जाएगा। ठीक
- 1:58:31है? तो ये काफी स्टैंडर्ड है और ऑडिटिंग
- 1:58:34वगैरह अगर कुछ होता है, आपको देखना है कि
- 1:58:36क्या हुआ है, क्या नहीं, डेटा कैसे अपडेट
- 1:58:38हुआ है, तो ये चीजें काफी हेल्प करती है
- 1:58:41अगर आप ट्रैक कर रहे हो तो। ठीक है?
- 1:58:43उम्मीद करता हूं यह दोनों के दोनों चीजें
- 1:58:45जो है वह काफी हेल्पफुल रही।
- 1:58:54तो दोस्तों अब हम क्या करने वाले हैं?
- 1:58:56यहां पर आप जो एंड पॉइंट देखोगे तो यहां
- 1:58:58पर आपको एक चीज़ रियलाइज़ होगी कि हमने ये
- 1:59:01जो अ रिस्पांस है उसको रिस्पांस एंटिटी
- 1:59:04में रैप नहीं किया है। ठीक है? तो
- 1:59:06रिस्पांस एंटिटी में मेरे हिसाब से रैप
- 1:59:09करना जरूरी है ताकि हमें बेटर कंट्रोल मिल
- 1:59:11पाए स्टेटस कोड्स वगैरह पर। ठीक है? तो
- 1:59:14रिस्पांस एंटिटी का इस्तेमाल करेंगे हम
- 1:59:16यहां पर रिस्पांस एंटिटी। इस तरीके से
- 1:59:19ज्यादा कुछ करना नहीं है। यहां पर बस इसको
- 1:59:21इस तरीके से रिस्पांस एंटिटी में रैप कर
- 1:59:23देना है और यहां पर आपको कहना है रिस्पांस
- 1:59:26एंटिटी
- 1:59:27डॉट ओके और इसके अंदर यहां पर आपको पास कर
- 1:59:32देना है ऐसे। ठीक है? ठीक है? ओके? का
- 1:59:34मतलब है स्टेटस कोड 200 चला जाएगा। ठीक
- 1:59:36है? अगर आपको कुछ और पास करना है जैसे कि
- 1:59:39एरर या वगैरह 404 तो वो सारी चीजें आप
- 1:59:42रिस्पांस एंटिटी को अगर इस्तेमाल कर रहे
- 1:59:44हो तो वो सारी चीजें भी आप कर सकते हो।
- 1:59:47ठीक है? तो रिस्पांस एंटिटी का हेल्पफुल
- 1:59:48हेल्प ये रहता है और अब आप इसको स्टार्ट
- 1:59:51करोगे तो रिस्पांस में तो वैसे कुछ चेंज
- 1:59:53नहीं होगा लेकिन यह बेटर प्रैक्टिस है
- 1:59:56जिसकी मदद से आप चीज़ों को कर सकते हो
- 1:59:58कंट्रोल। ठीक है? तो आप यहां पर भेजोगे
- 2:00:00डेटा तो देखिए ये उसी तरीके से डाटा आपको
- 2:00:02मिले मिलेगा। ठीक है? तो इतना हो चुका है।
- 2:00:06ठीक है? अब हम क्या करेंगे? अब हम यहां पर
- 2:00:08आ जाते हैं। ठीक है? और हम
- 2:00:11अब एक्टिविटी कंट्रोलर पे काम करेंगे। ठीक
- 2:00:14है? एक्टिविटी कंट्रोलर में हम कुछ एपीआई
- 2:00:16बनाएंगे। ठीक है? पहली एपीआई है स्लैश
- 2:00:18एपीआई स्लश एक्टिविटीज़ इस तरीके से। ठीक
- 2:00:22है? ये है और यह पहली एपीआई है। ठीक है?
- 2:00:26तो यहां पर क्या करने वाले हैं? हम पोस्ट
- 2:00:28रिक्वेस्ट को एक्सेप्ट करेंगे। ठीक है? तो
- 2:00:30यह रहने वाला है पोस्ट रिक्वेस्ट और इस
- 2:00:32एक्टिविटी का काम यह है कि यह जो है सॉरी
- 2:00:36इस एपीआई का काम यह है यह ट्रैक करेगा।
- 2:00:38ट्रैक एक्टिविटी। ठीक है? ये एक्टिविटीज़
- 2:00:40को ट्रैक करेगा। इसका मतलब आपको अगर कोई
- 2:00:42एक्टिविटी एप्लीकेशन में सेव करनी है किसी
- 2:00:45यूजर के अगेंस्ट, तो आप इस एपीआई का
- 2:00:47इस्तेमाल कर सकते हो। ठीक है? तो, यह हो
- 2:00:50गई पहली एपीआई। दूसरी एपीआई जो है वो होगी
- 2:00:52गेट रिक्वेस्ट सेम एंड पॉइंट पर। ठीक है?
- 2:00:55यह सेम एंड पॉइंट है। और इसी एंड पॉइंट पर
- 2:00:57अगर आपको यूजर की सारी जो एक्टिविटीज है
- 2:01:00उसको आपको रिट्रीव करना है तो आप इस एपीआई
- 2:01:05का इस्तेमाल कर सकते हो। रिट्रीव
- 2:01:07एक्टिविटीज़।
- 2:01:09ठीक है? तो ये यूजर की यानी कि आप जो भी
- 2:01:11यूजर आईडी पास कर रहे हो इस एंड पॉइंट
- 2:01:13में। ठीक है? यूजर स्पेसिफिक एंड पॉइंट है
- 2:01:15ये। जो भी यूजर आईडी आप पास कर रहे हो
- 2:01:17हेडर में। ठीक है? उस यूजर के लिए तो वो
- 2:01:21यूजर की सारी एक्टिविटीज़ यानी कि उसने
- 2:01:23रनिंग करा है, वॉकिंग करा है, जॉगिंग करा
- 2:01:25है, साइकिलिंग, स्विमिंग जो भी करा है वो
- 2:01:27सारी चीजें आपको इस एंड पॉइंट की मदद से
- 2:01:29रिट्रीव हो जाएगी। और ये वाली एंड पॉइंट
- 2:01:30क्या करेगी? ये वाली एंड पॉइंट किसी एक
- 2:01:32यूजर के अगेंस्ट जो भी एक्टिविटी है उसको
- 2:01:34सेव करने में मदद करेंगी। ठीक है? तो ये
- 2:01:36दो एंड पॉइंट्स पे हम काम करेंगे। तो
- 2:01:38देखिए यहां पर मैं एक रेकमेंडेशन दे दूंगा
- 2:01:40आपको। आप ये दोनों एंड पॉइंट्स को बनाने
- 2:01:43का जो काम है उसको एज अ चैलेंज लीजिए। ठीक
- 2:01:45है? ठीक है? उसको एज अ चैलेंज लीजिए और आप
- 2:01:47कोशिश कीजिए कि इन दोनों एंड पॉइंट्स को
- 2:01:49आप बना पाऊं। ठीक है? बनाने के बाद आप
- 2:01:53मुझको बताइए कि आप सक्सेसफुल हुए या नहीं।
- 2:01:56नहीं होते तो कोई बात नहीं। कोशिश करना
- 2:01:59जरूरी है। देखिए ट्राई करना जरूरी है।
- 2:02:01आपको खुद से कोड लिखना ये अटेम्प्ट करना।
- 2:02:04कोड लिखना ये काफी जरूरी है। क्योंकि अगर
- 2:02:07आप देखते रहोगे ट्यूटोरियल्स देख के कर
- 2:02:09रहे हो, देख के कर रहे हो। ठीक है? लेकिन
- 2:02:10एक पॉइंट पर आपको खुद से भी सोचना है, खुद
- 2:02:13से भी एंड पॉइंट्स बनाने हैं। खुद से
- 2:02:14चीजें करनी है। अगर आप वो नहीं करोगे तो
- 2:02:16बस देखते ही रह जाओगे ट्यूटोरियल्स। ठीक
- 2:02:18है? खुद से कोड कभी लिख ही नहीं पाओगे। तो
- 2:02:21लिखना जरूरी है कोड। देखिए ट्यूटोरियल्स
- 2:02:23तो आप देखते रहोगे। बहुत ट्यूटोरियल्स
- 2:02:24हैं। आप देखते रहो ट्यूटोरियल्स। कोई
- 2:02:26दिक्कत नहीं है। आप नई चीजें सीखते हो।
- 2:02:28लेकिन आपको यहां पर देखिए ये एक
- 2:02:30अपॉर्चुनिटी है। ये एंड पॉइंट्स में आप जो
- 2:02:32भी कांसेप्ट यूज़ करने वाले हो वो
- 2:02:33कांसेप्ट्स आपको पता है। अगर आप यहां तक
- 2:02:35देख रहे हो वीडियोस तो। ठीक है? वो
- 2:02:37कांसेप्ट्स आपको पता है तो आप उन
- 2:02:39कांसेप्ट्स को यूज़ करके कोई नई एपीआई
- 2:02:41बनाना। मैंने आपको बता भी दिया कि आप ये
- 2:02:43एंड पॉइंट्स क्या होने वाले हैं। ठीक है?
- 2:02:46और आप डेटा को स्टोर करने वाले हो इस एंड
- 2:02:48पॉइंट की मदद से और यहां पर डेटा को
- 2:02:49रिट्रीव कर रहे हो। ठीक है? एक यूजर के
- 2:02:52अगेंस्ट मल्टीपल एक्टिविटी स्टोर हो सकती
- 2:02:54है। करेक्ट? एक एक्टिविटी तो नहीं होगी।
- 2:02:57एक यूजर मल्टीपल एक्टिविटीज़ करेगा। तो ये
- 2:02:59बेसिकली लिस्ट रिटर्न करेगा। गेट एंड
- 2:03:00पॉइंट और ये एक टाइम पे एक ही एक्टिविटी
- 2:03:02को एक्सेप्ट करके स्टोर करेगा। बस इतना सा
- 2:03:05काम है। तो सारे कॉन्सप्ट्स को इस्तेमाल
- 2:03:06करके इसको अटेम्प्ट कीजिए। सारे
- 2:03:09कांसेप्ट्स को देखिए। आप कर पा रहे हो
- 2:03:11नहीं कर पा रहे हो। और फिर यहां पर वीडियो
- 2:03:13को आकर प्ले कीजिए और देखिए कि आपने जो
- 2:03:16बनाया है सॉल्यूशन। ठीक है? आप अगर बना भी
- 2:03:18नहीं पाते हो तो भी कोई बात नहीं। देखिए
- 2:03:19अटेम्प्ट करना जरूरी है। ये जो चैलेंजेस
- 2:03:21मैं बीच में देता हूं ना ये चैलेंजेस का
- 2:03:23मकसद ये होता है कि आप एटलीस्ट वाचिंग मोड
- 2:03:26से डूइंग मोड में आइए। ठीक है? डूइंग मोड
- 2:03:29में अगर आप आते हो तो क्या है? आप चीजों
- 2:03:32को इस्तेमाल करना सीखते हो। ठीक है? आप
- 2:03:34खुद को चैलेंज करते हो और एक नेक्स्ट लेवल
- 2:03:36पर जाते हो आप। आप जो भी लेवल पर अभी हो
- 2:03:38उस लेवल से नेक्स्ट लेवल पर जाते हो। तो
- 2:03:40सही गलत यह जरूरी नहीं है। देखिए आप आप
- 2:03:44अगर कर पाए तो काफी बढ़िया है। नहीं कर
- 2:03:46पाए तो बुरा नहीं मानना है। डीमोटिवेट
- 2:03:48नहीं होना है। आपको फिर वीडियो को आकर
- 2:03:50प्ले करना है और स्यूशन देखना है। आप कर
- 2:03:51भी पाए हो अगर तो भी स्यूशन जरूर देखिएगा
- 2:03:54और मेरे स्यूशन और आपके सॉल्यूशन को
- 2:03:55कंपेयर कीजिएगा। ठीक है? आपने एक चीज एक
- 2:03:58इस तरीके से क्यों की और मैंने ये चीज
- 2:04:00दूसरी तरीके से क्यों की? इसको समझिएगा।
- 2:04:03ठीक है? लर्निंग्स हर जगह पर होगी। ठीक
- 2:04:05है? तो, यह जरूर अटेम्प्ट कीजिए, पॉज
- 2:04:07कीजिए कीजिए वीडियो को और यह दो एपीआई
- 2:04:10बनाइए आप। एक सेपरेट कंट्रोलर बनेगा इसका।
- 2:04:12ठीक है? सेपरेट मॉडल तो बना हुआ है।
- 2:04:15सेपरेट कंट्रोलर, सेपरेट रिपॉज़िटरी,
- 2:04:17सेपरेट मॉडल, सेपरेट सर्विस लेयर सब कुछ
- 2:04:19सेपरेट होगा। ठीक है? इसमें डीडीओस का भी
- 2:04:21इस्तेमाल करना और अटेम्प्ट करो। ठीक है?
- 2:04:24और उम्मीद करता हूं आपने पॉज़ किया और
- 2:04:26अटेम्प्ट किया इसको। मैं यहां पर वेट नहीं
- 2:04:28करूंगा। मैं यहां पर अ आगे बढूंगा क्योंकि
- 2:04:31वीडियो को तो आप पॉज कर सकते हो अगर आपको
- 2:04:32अटेम्प्ट करना है तो। ठीक है? तो मैं आगे
- 2:04:34बढ़ता हूं इस पर। ठीक है? तो ये दोनों एंड
- 2:04:35पॉइंट्स को मुझे बनाना है। तो सबसे पहले
- 2:04:37तो मैं आ जाता हूं इंटेलिजें में। ठीक है?
- 2:04:39इंटेलिजेंट में यहां पर आऊंगा और यहां पर
- 2:04:41सब कुछ क्लोज कर दूंगा। ठीक है? और यहां
- 2:04:43पर कंट्रोलर में मैं एक नया कंट्रोलर
- 2:04:46बनाऊंगा। और यहां पर कंट्रोलर का नाम क्या
- 2:04:48होगा? एक्टिविटी कंट्रोलर। ठीक है? तो, यह
- 2:04:50कंट्रोलर बन चुका है। ठीक है? अब कंट्रोलर
- 2:04:52में एक चीज़ तो मैंडेटरी है रेस्ट
- 2:04:54कंट्रोलर। क्योंकि यह रेस्ट कंट्रोलर है।
- 2:04:57रेस्ट एपीआई बना रहे हैं हम। तो रेस्ट
- 2:04:58कंट्रोलर लिखना जरूरी है। रिक्वेस्ट
- 2:05:00मैपिंग भी लिख दूंगा क्योंकि मैं चाहता
- 2:05:01हूं कि यह पूरा जो कंट्रोलर है वो एक एंड
- 2:05:05पॉइंट को मैप रहे। ठीक है? तो यहां पर
- 2:05:06देखिए कॉमन क्या है? एपीआई स्लैश
- 2:05:08एक्टिविटीज़। दोनों में एपीआई स्लैश
- 2:05:10एक्टिविटीज़ रिपीट हो रहा है। ठीक है? तो
- 2:05:12इसको पेस्ट कॉपी कर लूंगा और यहां पर मैं
- 2:05:14पेस्ट भी कर दूंगा। स्लैश एपीआई स्लैश
- 2:05:16एक्टिविटीज़। अच्छा अह न्यू लाइन
- 2:05:18कररेक्टर्स भी आ गए शायद। ठीक है? गलती
- 2:05:20से। लेकिन ये हो गया है हमारा यहां पर।
- 2:05:23ठीक है? कंट्रोलर बन चुकी है। अब मैं क्या
- 2:05:25करूंगा? यहां पर आऊंगा और यहां पर मैपिंग
- 2:05:27भी बना दूंगा। पोस्ट मैपिंग। ठीक है? और
- 2:05:29यहां पर कहूंगा अ पब्लिक
- 2:05:33रिस्पांस एंटिटी। अच्छा रिस्पांस एंटिटी।
- 2:05:36रिस्पांस नहीं रिस्पांस एंटिटी। और यहां
- 2:05:38पर कहूंगा एक्टिविटी रिस्पांस। एक्टिविटी
- 2:05:40रिस्पांस क्या है? ये डीटीओ क्लास है जो
- 2:05:42कि एग्ज़िस्ट नहीं करती। आपको रेडमार्क
- 2:05:44आएगा। कोई बात नहीं। डरना नहीं है
- 2:05:46रेडमार्क। ठीक है? रेड मार्क देखने की अभी
- 2:05:48आदत डाल दो। ठीक है? ट्रैक एक्टिविटी।
- 2:05:52ठीक है? यहां पर कुछ पैरामीटर्स एक्सेप्ट
- 2:05:53हो गए। पैरामीटर्स को अभी डिफाइन नहीं कर
- 2:05:55रहा हूं मैं यहां पर। ठीक है? लेकिन यहां
- 2:05:56पर फिर हमें कुछ रिटर्न भी करना है। तो
- 2:05:58रिटर्न और यहां पर इसे एम्प्टी लिख देता
- 2:06:00हूं अभी फिलहाल। ठीक है? इसको डिफाइन
- 2:06:01करेंगे बढ़िया तरीके से। ये हो गई पोस्ट
- 2:06:03मैपिंग। एक और मैपिंग मैं बना देता हूं
- 2:06:05यहां पर जो कि होगी गेट मैपिंग। ठीक है?
- 2:06:08ये गेट मैपिंग है। ये गेट रिक्वेस्ट को
- 2:06:09एडियर करेगी। और यहां पर एक्टिविटी
- 2:06:12रिस्पांस की बजाय हम रिटर्न करेंगे लिस्ट
- 2:06:15ऑफ एक्टिविटी रिस्पांस। क्यों? क्योंकि हम
- 2:06:19मल्टीपल एक्टिविटीज़ रिटर्न करेंगे। एक
- 2:06:21यूजर के अगेंस्ट मल्टीपल एक्टिविटी स्टर्ड
- 2:06:23होगी। ठीक है? तो लिस्ट ऑफ़ एक्टिविटी
- 2:06:25रिस्पांस होगी। ये तो सिर्फ एक एक्टिविटी
- 2:06:27को रिप्रेजेंट करता है। ठीक है? तो ये हो
- 2:06:30गई बात यहां तक। ठीक है? अब हमारा काम
- 2:06:33क्या है? हमें डीटीओ ऑब्जेक्ट्स बनाने हैं
- 2:06:36रिक्वेस्ट की और रिस्पांस की। ठीक है? तो
- 2:06:38मैं यहां पर आ जाता हूं डीटीओ। ठीक है? और
- 2:06:40यहां पर मैं बनाता हूं यहां पर मुझे बनाना
- 2:06:43है एक्टिविटी रिस्पांस को बनाना है पहले
- 2:06:46तो और फिर एक्टिविटी रिक्वेस्ट। तो
- 2:06:48एक्टिविटी रिस्पांस
- 2:06:51ठीक है? इस तरीके से और एक्टिविटी
- 2:06:53रिक्वेस्ट को भी बनाऊंगा मैं। लेकिन यहां
- 2:06:55पर उससे पहले मैं आ जाता हूं मेरी जो मॉडल
- 2:06:59है जो मैंने डिफाइन कर रखा है वहां पर आ
- 2:07:01जाता हूं। ठीक है? ये एक्टिविटी का मॉडल
- 2:07:02है। तो इसको मैं पूरी तरीके से कॉपी कर
- 2:07:04लेता हूं क्योंकि जो मेरा रिस्पांस
- 2:07:06स्ट्रक्चर है वो सिमिलर रहेगा जिससे
- 2:07:08इंस्पायर्ड रहेगा। ठीक है? अब यहां से
- 2:07:10चीजों को हटाना स्टार्ट करते हैं। ठीक है?
- 2:07:12तो टाइपिंग एफर्ट सेव कर रहे हैं हम
- 2:07:14थोड़ा। आईडी तो रिटर्न करनी है हमें। ठीक
- 2:07:16है? और यूजर का डेटा हमें पूरा रिटर्न
- 2:07:18नहीं करना है। तो यूजर के बजाय मैं क्या
- 2:07:21कर सकता हूं? यूजर आईडी रिटर्न कर सकता
- 2:07:23हूं। ठीक है? यहां पर या पूरा यूजर अगर
- 2:07:25आपको रिटर्न करना है तो वो भी आप कर सकते
- 2:07:27हो। यहां पर इसको ऐसे ही छोड़ते हैं। बाद
- 2:07:28में इसको अपडेट करेंगे। ठीक है? एक्टिविटी
- 2:07:31टाइप हो गया ये। ठीक है? एक्टिविटी टाइप आ
- 2:07:34गई यहां पर। और फिर यहां पर आपने या तो
- 2:07:37फिर इसको चेंज ही कर देता हूं मैं। ये
- 2:07:39थोड़ा सही फीलिंग नहीं दे रहा है मेरे को।
- 2:07:40पूरा यूजर का ऑब्जेक्ट भी रिटर्न कर सकते
- 2:07:42हैं हम लोग। लेकिन यहां पर स्ट्रिंग और
- 2:07:44यूजर आईडी कर देता हूं इसको। ठीक है?
- 2:07:46एडिशनल मैट्रिक्स जो है ठीक है? उसको
- 2:07:49मैंने ऐसे ही रखा है। ड्यूरेशन ऐसे ही है।
- 2:07:52कैलरीज़ बर्न और लोकल डेट एंड टाइम भी ऐसे
- 2:07:55ही है। ठीक है? स्टार्ट टाइम क्रिएटेड एट
- 2:07:57और अपडेटेड एट ये सब ऐसे ही है। ठीक है?
- 2:08:00रेकमेंडेशंस। तो लिस्ट ऑफ़ रेकमेंडेशंस को
- 2:08:03अभी मैं फिलहाल यहां पर ऐड नहीं कर रहा
- 2:08:04हूं। मैं नहीं चाहता कि रेकमेंडेशंस इस
- 2:08:06चीज़ का पार्ट हो। अब देखिए यहां पर थोड़ी
- 2:08:08अनयूज़ इंपोर्ट्स भी है क्योंकि मैंने वहां
- 2:08:09से कॉपी पेस्ट किया था। तो ये सारे अनयूज़
- 2:08:11इंपोर्ट को हटा दूंगा मैं। ठीक है? और
- 2:08:14क्योंकि ये एक डीटीओ क्लास है तो यहां पर
- 2:08:17मुझे थोड़े कंस्ट्रक्टर्स गेटर सेटर्स
- 2:08:19लगेंगे। तो डेटा एनोटेशन नो आस्क्
- 2:08:21कंस्ट्रक्टर इस तरीके से। ठीक है? और फिर
- 2:08:24ऑल आस्क् कंस्ट्रक्टर इस तरीके से मैंने
- 2:08:26ऐड कर दिया है। ठीक है? ऐसे। अब ये हो
- 2:08:29चुकी है इस क्लास की बात। ठीक है? अब हमें
- 2:08:33आना चाहिए अह जो रिक्वेस्ट है। ठीक है? तो
- 2:08:36हमें एक एक्टिविटी रिक्वेस्ट भी बनानी
- 2:08:38होगी। ठीक है? ठीक है? ये तो रिस्पांस
- 2:08:40हमने बना लिया। अब यहां पर इसको इंपोर्ट
- 2:08:41कर लेते हैं। इंपोर्ट कर लेंगे तो ये एरर
- 2:08:43चली जाएगी। ठीक है? क्योंकि अब ये क्लास
- 2:08:44एकज़िस्ट करती है। यहां पर आ जाऊंगा मैं और
- 2:08:47यहां पर मैं बनाऊंगा एक क्लास एक्टिविटी
- 2:08:50रिक्वेस्ट जो कि रिप्रेजेंट करेंगी एक
- 2:08:53इनकमिंग रिक्वेस्ट को। तो जो एक्टिविटी का
- 2:08:55जो ऑब्जेक्ट होता है, एक्टिविटी रिक्वेस्ट
- 2:08:57होगा। ठीक है? अब उसमें भी मैं क्या
- 2:08:59करूंगा? ये जो रिस्पांस में मैंने डाला
- 2:09:01हुआ है, ये सब कुछ कॉपी कर लूंगा इस तरीके
- 2:09:03से। ठीक है? और रिक्वेस्ट में थोड़े कम
- 2:09:05फील्ड्स हो गए। लेकिन फील्ड्स को फिर
- 2:09:06हटाएंगे हम तो देखिए आईडी की ज़रूरत है ही
- 2:09:08नहीं। एक्टिविटी की आईडी तो ऑटो जनरेट
- 2:09:10होनी है। डेटाबेस लेवल पर। स्ट्रिंग यूज़र
- 2:09:12आईडी ज़र है। ठीक है? एक्टिविटी टाइप ज़र
- 2:09:14है। एडिशनल मैट्रिक्स भी ज़र है। ड्यूरेशन
- 2:09:19जरूरी है। अ कैलरीज़ बर्न ज़रूरी है। और
- 2:09:22स्टार्ट टाइम जरूरी है। क्रिएटेड एट और
- 2:09:24अपडेटेड एट जरूरी नहीं है। तो इसको हटा
- 2:09:26देते हैं। ठीक है? तो ये रिक्वेस्ट की
- 2:09:29क्लास बन गई। इस तरीके से हमारा रिक्वेस्ट
- 2:09:30स्ट्रक्चर डिफाइंड हो गया। यहां पर डेटा
- 2:09:32लिख देता हूं। यहां पर लिखता हूं नो आस्क्
- 2:09:34कंस्ट्रक्टर और ऑल आस्क् कंस्ट्रक्टर। तो
- 2:09:36देखिए रिक्वेस्ट का जो स्ट्रक्चर है वो यह
- 2:09:38है। रिक्वेस्ट में हमें यह फील्ड्स तो
- 2:09:40चाहिए। जो अनवांटेड फील्ड्स है जो हम
- 2:09:42हमारे एंड पे जनरेट कर रहे हैं। जैसे कि
- 2:09:44आईडी एक्टिविटी की आईडी स्टार्ट टाइम अ
- 2:09:47स्टार्ट टाइम तो हमें लेना है। सॉरी
- 2:09:48एक्टिविटी का स्टार्ट टाइम ये कब स्टार्ट
- 2:09:50हुआ ये जनरेट नहीं कर सकते हम। और हमें अ
- 2:09:53क्रिएटेड एट, अपडेटेड एट ये सब अह क्या
- 2:09:55है? डेटाबेस लेवल पे जनरेट होती है फील्ड।
- 2:09:57सो इसको मैंने रिक्वेस्ट से हटा दिया। ठीक
- 2:09:58है? यह सारे बेनिफिट्स हैं देखिए डीटीओ के
- 2:10:00और रिस्पांस में मैं दे रहा हूं वह
- 2:10:02क्योंकि मैं मैंने रिक्वेस्ट और रिस्पांस
- 2:10:04को अलग-अलग रखा है। तो रिक्वेस्ट में मुझे
- 2:10:06यह चाहिए और रिस्पांस में मुझे ये सब
- 2:10:07दिखाना है। ठीक है? आईडी भी दे रहा हूं
- 2:10:09यहां पर कि कौन से आईडी से एक्टिविटी
- 2:10:11क्रिएट हुई है। ठीक है? तो ये हो गई बात
- 2:10:13यहां तक। अब यहां पर आएंगे हम। ठीक है? तो
- 2:10:17सबसे पहले तो मैं इसको है ना थोड़ा कमेंट
- 2:10:19कर देता हूं। ठीक है? ये जो गेट मैपिंग है
- 2:10:21इसको कमेंट कर देता हूं। नहीं तो रेड
- 2:10:22मार्क्स आते ही रहेंगे। ठीक है? अब यहां
- 2:10:24पर ट्रैक एक्टिविटी में मैं क्या करूंगा?
- 2:10:26ठीक है? ट्रैक एक्टिविटी यहां पर तो यहां
- 2:10:30पर मुझे एक इनपुट लेना होगा। ठीक है? एक
- 2:10:33पैरामीटर ऐड करूंगा। तो वह होगा एक्टिविटी
- 2:10:36रिक्वेस्ट। ठीक है? ऐसे और यहां पर आएगी
- 2:10:39रिक्वेस्ट ऐसे। और यहां पर मैं लिख दूंगा
- 2:10:42रिक्वेस्ट बॉडी।
- 2:10:44ठीक है? तो रिक्वेस्ट बॉडी आएंगी इस तरीके
- 2:10:46से। ठीक है? और इतना हो गया है यहां पर और
- 2:10:50कुछ तो है नहीं। ठीक है? तो इतनी चीज हो
- 2:10:53चुकी है। यह रिक्वेस्ट बॉडी है। अब यहां
- 2:10:55पर देखिए मुझे ना सर्विस लेयर को कॉल करना
- 2:10:57है। अब इसकी सर्विस लेयर तो एक्सिस्ट नहीं
- 2:10:58करती एक्टिविटी की। तो मैं क्या करूंगा?
- 2:11:01यहां पर आ जाता हूं। ठीक है? और यहां पर
- 2:11:03आके मैं एक सर्विस लेयर बना लेता हूं। तो
- 2:11:05एक्टिविटी सर्विस इस तरीके से बना लिया
- 2:11:09मैंने। ठीक है? और यहां पर सर्विस बना
- 2:11:12लिया मैंने। ठीक है? और यहां पर मुझे
- 2:11:15एक्टिविटी की रिपॉज़िटरी भी लगेगी क्योंकि
- 2:11:17हमें डेटाबेस से बात करनी है। ठीक है? तो
- 2:11:19यहां पर एक्टिविटी रिपॉजिटरी
- 2:11:23इस तरीके से बना दिया मैंने एक्टिविटी
- 2:11:25रिपॉजिटरी को। अब एक्टिविटी रिपॉज़िटरी
- 2:11:28अच्छा क्लास नहीं है। ये क्लास नहीं होनी
- 2:11:30चाहिए। यह होना चाहिए इंटरफ़ेस। इंटरफ़ेस इस
- 2:11:33तरीके से और इसको मार्क करना है एज़ ए
- 2:11:35रिपॉज़िटरी। और इंटरफ़ेस को किससे एक्सटेंड
- 2:11:38करना है हमें? एक्सटेंड्स जीपीए
- 2:11:40रिपॉज़िटरी। और यहां पर मेंशन करना है
- 2:11:43एक्टिविटी जो कि है मॉडल हमारा। और फिर
- 2:11:45यहां पर मेंशन करना है स्ट्रिंग जो कि है
- 2:11:48प्राइमरी की का टाइप। तो प्राइमरी की का
- 2:11:51टाइप है स्ट्रिंग। ठीक है? इतना मैंने
- 2:11:53डिफाइन कर दिया है। अब सर्विस लेयर पे आ
- 2:11:54जाते हैं। सर्विस लेयर में हमें क्या
- 2:11:56लगेगा? हमें लगेगा इंस्टेंस। तो हमें किस
- 2:11:58चीज का इंस्टेंस लगेगा? प्राइवेट फाइनल
- 2:12:00एक्टिविटी रिपॉज़िटरी। इस चीज़ का इंस्टेंस
- 2:12:03लगने वाला है हमें यहां पर। क्यों लगने
- 2:12:05वाला है? क्योंकि एक्टिविटी सर्विस जो है
- 2:12:07वो रिपॉज़िटरी से बात करके रिपॉज़िटरी की
- 2:12:10मदद से डेटाबेस से बात करेगी। करेक्ट?
- 2:12:12एक्टिविटी सेव करने रिट्रीव करने में।
- 2:12:14यहां पर मैं ऐड कर देता हूं ऑल आस्क्
- 2:12:17रिक्वायर्ड आस्क् कंस्ट्रक्टर। ठीक है?
- 2:12:20रिक्वायर्ड आस्क् कंस्ट्रक्टर यह मैंने ऐड
- 2:12:21कर दिया। ठीक है? तो इतना हो गया सेटअप।
- 2:12:23अब यहां पर हमें इंस्टेंस लगेगा सर्विस
- 2:12:26लेयर का। तो यहां पर मैं कहता हूं
- 2:12:28प्राइवेट फाइनल एक्टिविटी सर्विस कहां है?
- 2:12:32एक्टिविटी सर्विस।
- 2:12:37सर्विस। ठीक है? और फिर एक्टिविटी सर्विस
- 2:12:39इस तरीके से और इसको रिक्वायर्ड आस्क्
- 2:12:42कंस्ट्रक्टर भी लिखना पड़ेगा। नहीं तो रेड
- 2:12:43मार्क्स आएंगे क्योंकि इनिशियलाइज़ नहीं हो
- 2:12:45रहा है ये। ठीक है? और ये स्ट्रिंग मैनेज
- 2:12:46कंपोनेंट है तो ये इनिशियलाइज़ भी हो
- 2:12:48जाएगा। अब ठीक है? सर्विस लेयर से सर्विस
- 2:12:50एनोटेशन से हमने इसको एनोटेट भी किया हुआ
- 2:12:52है। अब यहां पर आ जाते हैं और यहां पर मैं
- 2:12:55लिखूंगा एक्टिविटी सर्विस डॉट और यहां पर
- 2:12:58मैं कहूंगा ट्रैक एक्टिविटी इस तरीके से।
- 2:13:02ठीक है? अब ये करूंगा और यहां पर ये होगा
- 2:13:07मेथड जिसमें जाएगी रिक्वेस्ट की ऑब्जेक्ट।
- 2:13:11ठीक है? और फिर मैं यहां पर इसको ग्रुप कर
- 2:13:13दूंगा तो मैं कहूंगा रिस्पांस एंटिटी ठीक
- 2:13:17है तो रिस्पांस एंटिटी
- 2:13:21डॉट ओके
- 2:13:24डॉट ओके ऐसे और
- 2:13:29ऐसे क्लोज करना है ठीक है तो ये मैं कर
- 2:13:33दूंगा तो इसको रिस्पांस एंटिटी में रैप कर
- 2:13:35दिया मैंने इसके रिस्पांस को ठीक है अब
- 2:13:38एक्टिविटी ट्रैक एक्टिविटी में आते हैं और
- 2:13:40यहां पर ट्रैक एक्टिविटी को क्रिएट करते
- 2:13:43हैं। ठीक है? इस तरीके से तो ट्रैक
- 2:13:45एक्टिविटी बन चुका है। अब ट्रैक एक्टिविटी
- 2:13:47का रिस्पांस क्या है? या रिस्पांसिबिलिटी
- 2:13:49क्या है? ट्रैक एक्टिविटी का जॉब यह है कि
- 2:13:52यहां पर हम बिज़नेस लॉजिक डिफाइन करेंगे
- 2:13:54जिसकी मदद से एक्टिविटी को ट्रैक किया
- 2:13:56जाएगा और डीडबीएस लेवल पर जो है उसे स्टोर
- 2:13:59किया जाएगा। ठीक है? तो देखिए सबसे पहले
- 2:14:02तो मुझे क्या करना चाहिए? यहां पर यहां पर
- 2:14:05आ जाता हूं। ठीक है? यहां पर सबसे पहले तो
- 2:14:07यह एक्टिविटी रिक्वेस्ट का ऑब्जेक्ट है।
- 2:14:09किसका ऑब्जेक्ट हमें मिल रहा है?
- 2:14:11एक्टिविटी रिक्वेस्ट का। ठीक है? मैं क्या
- 2:14:13करना चाहता हूं? एक्टिविटी रिपॉज़िटरी डॉट
- 2:14:15सेव। मेरा गोल क्या है? एक्टिविटी
- 2:14:17रिपॉज़िटरी डॉट सेव। और यहां पर क्या पास
- 2:14:19करना चाहिए मुझे? एक्टिविटी का ऑब्जेक्ट।
- 2:14:22तो जो एक्टिविटी का ऑब्जेक्ट है जिसको मैं
- 2:14:24सेव करना चाह रहा हूं। ठीक है? देखिए
- 2:14:26लॉजिक कैसे डिसाइड करना है ना मैं वो आपको
- 2:14:28सिखा रहा हूं। ठीक है? मुझे पता है क्या
- 2:14:30लिखना है? कोड मैं डायरेक्टली लिख सकता
- 2:14:32हूं। लेकिन लॉजिक कैसे डिसाइड करना है?
- 2:14:34आपको करना क्या चाहिए? लिखना क्या है यहां
- 2:14:36पर? ये मैं आपको दिखा रहा हूं। ठीक है? तो
- 2:14:38देखिए, यहां पर ट्रैक एक्टिविटी का मकसद
- 2:14:40क्या है? व्हाट इज़ द यूज़ ऑफ़ ट्रैक
- 2:14:41एक्टिविटी? ट्रैक एक्टिविटी का काम यह है
- 2:14:44कि वो जो भी एक्टिविटी रिक्वेस्ट की जो
- 2:14:46ऑब्जेक्ट आ रही है, उसके बिहाफ पर
- 2:14:48एक्टिविटी ऑब्जेक्ट को सेव कर देगा।
- 2:14:50एक्टिविटी सेव कर देगा डेटाबेस में।
- 2:14:52एक्टिविटी सेव करने के लिए हमें क्या
- 2:14:54चाहिए? सबसे पहले हमें रिपॉज़िटरी चाहिए जो
- 2:14:56कि हमारे पास है। क्योंकि इसकी मदद से ही
- 2:14:58हम डेटाबेस से बात करके सेव करेंगे। और
- 2:15:00हमें सेव करने के लिए सेव मेथड कॉल करना
- 2:15:02है। अब सेव मेथड में क्या चाहिए हमें?
- 2:15:03एक्टिविटी का जो मॉडल है उसका ऑब्जेक्ट
- 2:15:06चाहिए विद ऑल द डिटेल्स फिल्ड। सारी
- 2:15:08डिटेल्स उसमें फिल्ड होनी चाहिए जो हमें
- 2:15:10सेव करनी है। करेक्ट? यह चाहिए हमें। यह
- 2:15:12गोल है। अब ये गोल है। अगर ये सेव करना है
- 2:15:16तो पहले तो एक्टिविटी का इन ऑब्जेक्ट
- 2:15:18बनाना होगा और उसमें सारी फील्ड्स
- 2:15:20इनिशियलाइज़ करनी होगी। करेक्ट? तो वो कर
- 2:15:23लेते हैं। चलिए तो यहां पर आ जाते हैं
- 2:15:25एक्टिविटी और फिर एक्टिविटी। और फिर यहां
- 2:15:28पर अब हमें बिल्डर पैटर्न का इस्तेमाल
- 2:15:30करना है। ठीक है? तो बिल्डर पैटर्न के लिए
- 2:15:33मैं एक्टिविटी के मॉडल में आ जाऊंगा और
- 2:15:36यहां पर एक एनोटेशन ऐड कर दूंगा जो कि है
- 2:15:37बिल्डर। ठीक है? इसकी मदद से हम एक्टिविटी
- 2:15:41का जो ऑब्जेक्ट है उसमें बिल्डर पैटर्न
- 2:15:43इस्तेमाल कर पाएंगे। तो एक्टिविटी डॉट
- 2:15:45बिल्डर डॉट बिल्ड। ठीक है? और बिल्ड करने
- 2:15:48के पहले हम सारी जो डिटेल्स है वो एज अ
- 2:15:51पैरामीटर पास कर सकते हैं। ठीक है? तो
- 2:15:53देखिए सबसे पहले हमें पास करना है टाइप।
- 2:15:56तो टाइप में अभी क्या आएगा? रिक्वेस्ट डॉट
- 2:15:57गेट टाइप। ठीक है? ये सारी डिटेल्स हमें
- 2:16:00रिक्वेस्ट ऑब्जेक्ट में आ रही है। ठीक है?
- 2:16:02डॉट टाइप आ गया। यहां पर आएगा ड्यूरेशन।
- 2:16:04ड्यूरेशन भी हमें मिल रहा है रिक्वेस्ट
- 2:16:06डॉट गेट ड्यूरेशन में। ठीक है? यहां पर
- 2:16:09आना है अ कैलरीज़ बर्न जो कि आएगा
- 2:16:12रिक्वेस्ट डॉट गेट कैलोरीज़ बर्न। ठीक है?
- 2:16:15फिर यहां पर आएगा अ डॉट स्टार्ट टाइम। और
- 2:16:20स्टार्ट टाइम भी हमें मिल रहा है
- 2:16:22रिक्वेस्ट डॉट गेट स्टार्ट टाइम। इस तरीके
- 2:16:24से। ठीक है? और फिर डॉट एडिशनल मैट्रिक्स
- 2:16:27हमें चाहिए। वह भी हमें मिल रहे हैं कहां
- 2:16:29से? रिक्वेस्ट डॉट गेट एडिशनल मैट्रिक्स।
- 2:16:31सारी चीज़ें हमें मेजर चीज़ें एक्टिविटी
- 2:16:33रिक्वेस्ट से मिल रही है। ठीक है? अब एक
- 2:16:37चीज़ मिसिंग है जो कि हमें चाहिए। तो मैं
- 2:16:39आपको बता देता हूं। यहां पर एक चीज़ आप
- 2:16:41देखोगे तो देखिए आईडी तो ऑटो जनरेट होनी
- 2:16:44है। ठीक है? यूजर मिसिंग है। हमने यूजर को
- 2:16:47सेट नहीं किया है। तो ये पेंडिंग है। ठीक
- 2:16:49है? टाइप हमने सेट कर दिया। एडिशनल
- 2:16:51मैट्रिक्स सेट कर दिया। ये सारे फील्ड सेट
- 2:16:53कर दिए हमने। क्रिएटेड एट और अपडेटेड एट
- 2:16:55पेंडिंग है और रेकमेंडेशन पेंडिंग है
- 2:16:58क्योंकि ठीक है रेमेंडेशन को बाद में
- 2:16:59देखते हैं हम। ठीक है? क्रिएटेड एट और
- 2:17:02अपडेटेड एट पेंडिंग। तो क्रिएटेड एंड
- 2:17:04अपडेटेड एट के लिए हमें दो एनोटेशन ऐड
- 2:17:06करने हैं। क्रिएशन टाइम स्टैंप और फिर
- 2:17:08अपडेट टाइम स्टैंप। इस तरीके से। तो ये
- 2:17:11ऑटो जनरेट हो जाएगा। ठीक है? तो तीन चीजें
- 2:17:13अभी ऑटो जनरेट हो रही है। एक तो क्रिएटेड
- 2:17:15एट, अपडेटेड ऐड और फिर आईडी। करेक्ट? यूजर
- 2:17:18पेंडिंग है। बाकी सारी चीजें हमने सेट कर
- 2:17:20ली है। एक्सेप्ट रेकमेंडेशंस। यूजर
- 2:17:22पेंडिंग है। तो यूजर के लिए हम क्या
- 2:17:24करेंगे? यहां पर आ जाते हैं एक्टिविटी
- 2:17:26सर्विस में। हमें यूजर का ऑब्जेक्ट सेट
- 2:17:28करना है। तो यहां पर क्या करना है हमें?
- 2:17:29डॉट सेट अ सॉरी सेट नहीं यहां पर यूजर
- 2:17:33देखिए ये क्या एक्सेप्ट कर रहा है यूजर?
- 2:17:35यूजर का ऑब्जेक्ट एक्सेप्ट कर रहा है।
- 2:17:37हमारे पास यूजर का ऑब्जेक्ट है क्या?
- 2:17:39एक्टिविटी रिक्वेस्ट में क्या है? यूजर का
- 2:17:42ऑब्जेक्ट है? नहीं है। यूजर आईडी है खाली।
- 2:17:44तो यूजर आईडी के बिहाफ पर आप डेटाबेस से
- 2:17:46यूजर का ऑब्जेक्ट रिट्रीव कर सकते हो? यस
- 2:17:48और नो? कर सकते हो? कर सकते हैं। क्यों
- 2:17:51नहीं कर सकते? कर सकते हैं। तो यहां पर हम
- 2:17:53आएंगे। यहां पर हम कहेंगे यूजर यूजर इज
- 2:17:56इक्वल टू अच्छा यूजर को इंपोर्ट भी करना
- 2:17:58पड़ेगा। नहीं तो इंटेलिजेंट बुरा मान
- 2:18:00जाएगा। ठीक है? ये हमने कर दिया। अब यहां
- 2:18:02पर यूजर रिपॉजिटरी होने की जरूरत है।
- 2:18:05करेक्ट? क्योंकि यूजर अ यूजर हम रिट्रीव
- 2:18:09कर रहे हैं। करेक्ट? तो यहां पर हम
- 2:18:10लिखेंगे प्राइवेट फाइनल यूजर रिपॉजिटरी इस
- 2:18:14तरीके से। और यहां पर यूजर रिपॉजिटरी
- 2:18:16मेंशन कर देंगे। और यहां पर यूजर
- 2:18:18रिपॉजिटरी को इस्तेमाल करेंगे और फाइंड
- 2:18:21बाय आईडी का इस्तेमाल करेंगे। तो फाइंड
- 2:18:23बाय आईडी और हमारे पास आईडी ऑलरेडी है तो
- 2:18:26हम कहेंगे रिक्वेस्ट डॉट गेट यूजर आईडी।
- 2:18:29करेक्ट? ये हो गया। अब यहां पर एरर आ रही
- 2:18:33है। एरर क्यों आ रही है? क्योंकि ये फाइंड
- 2:18:35बाय आईडी जो रिटर्न कर रहा है वो रिटर्न
- 2:18:37कर रहा है ऑप्शनल। क्या रिटर्न कर रहा है?
- 2:18:39ऑप्शनल। तो यहां पर अगर यूजर नहीं मिलता
- 2:18:42है इस आईडी से उसको भी हैंडल करने की
- 2:18:44जरूरत है। करेक्ट? तो यहां पर मैं कहूंगा
- 2:18:47अ डॉट और एल्स
- 2:18:50और एल्स थ्रो और यहां पर मेंशन करूंगा एक
- 2:18:54लैम्ब्डा इस तरीके से और यहां पर रन टाइम
- 2:18:56एक्सेप्शन को थ्रो कर दूंगा और मैं कहूंगा
- 2:18:58इनवैलिड
- 2:19:00यूजर इसे और यूजर जो भी है रिक्वेस्ट डॉट
- 2:19:05गेट यूजर आईडी इस तरीके से। ठीक है? और
- 2:19:08यहां पर जो यूजर ऑब्जेक्ट हमें मिला है
- 2:19:10उसको हम सेट कर देंगे यहां पर। ठीक है? अब
- 2:19:12सारी फील्ड्स सेट हो चुकी हैं यहां पर।
- 2:19:14ठीक है? लेकिन अभी भी एक दिक्कत है। ठीक
- 2:19:17है? यहां पर यह यूजर एक्टिविटी क्रिएशन तो
- 2:19:19हो गया। एक्टिविटी की ऑब्जेक्ट हमने
- 2:19:21क्रिएट की और हमारे पास ये डेटा जो है
- 2:19:24एक्टिविटी का उसको हमने सेव कर दिया। ठीक
- 2:19:26है? तो कैसे किया हमने? पहले यूजर को
- 2:19:28रिट्रीव किया। यूजर को रिट्रीव क्यों
- 2:19:30किया? क्योंकि एक्टिविटी बनाने के लिए
- 2:19:31हमें यूजर का ऑब्जेक्ट चाहिए। यूजर आईडी
- 2:19:34से काम नहीं चलेगा। ऑब्जेक्ट पूरा चाहिए।
- 2:19:36तो यूजर को रिट्रीव करो डेटाबेस से। फिर
- 2:19:38एक्टिविटी को कंस्ट्रक्ट करो। एक्टिविटी
- 2:19:40ऑब्जेक्ट जो है उसको और फिर उसको
- 2:19:42रिपॉज़िटरी की मदद से सेव कर दो। ठीक है?
- 2:19:45अब दिक्कत यह है कि हमें यहां पर रिटर्न
- 2:19:47करना है एक्टिविटी रिस्पांस का ऑब्जेक्ट।
- 2:19:50क्या रिटर्न करना है? एक्टिविटी रिस्पांस
- 2:19:53का ऑब्जेक्ट। हमारे पास है क्या एक्टिविटी
- 2:19:54रिस्पांस का ऑब्जेक्ट? नहीं है। तो हमें
- 2:19:56कंस्ट्रक्ट करना होगा। कैसे कंस्ट्रक्ट
- 2:19:58करेंगे हम? हम कंस्ट्रक्ट करेंगे। ये जो
- 2:20:01सेव कर रहे हैं ना हम ऑब्जेक्ट उस सेव्ड
- 2:20:03ऑब्जेक्ट को लेकर हम एक्टिविटी रिस्पांस
- 2:20:06का ऑब्जेक्ट मैनुअली कंस्ट्रक्ट करेंगे।
- 2:20:08ठीक है? तो मैं यहां पर क्या करूंगा?
- 2:20:10एक्टिविटी कहूंगा और यहां पर कहूंगा सेव्ड
- 2:20:12एक्टिविटी। क्योंकि देखिए यह सेव मेथड जो
- 2:20:15है ना यह सेव्ड एक्टिविटी को रिटर्न करता
- 2:20:18है। सेव्ड ऑब्जेक्ट को रिटर्न करता है।
- 2:20:20रिटर्न्स द सेव्ड एंटिटी विल नेवर बी नल।
- 2:20:23अगर सेव सक्सेसफुल हुआ है तो रिटर्न करना
- 2:20:25ही है सेव्ड एक्टिविटी। तो उसको मैं ये
- 2:20:27सेव्ड एक्टिविटी नाम का ऑब्जेक्ट बना लेता
- 2:20:29हूं। उसमें कलेक्ट कर लूंगा। सेव्ड
- 2:20:32एक्टिविटी नाम क्यों दिया मैंने इसको?
- 2:20:34एक्टिविटी नाम से तो ऑलरेडी ऑब्जेक्ट है।
- 2:20:35तो सेव्ड एक्टिविटी देना पड़ेगा। ठीक है?
- 2:20:38तो यह मैंने कर दिया। अब यहां पर मैं
- 2:20:40करूंगा रिटर्न
- 2:20:42मैप टू रिस्पांस नाम का एक मेथड क्रिएट
- 2:20:45करूंगा जिसका काम सिर्फ होगा कि सेव्ड
- 2:20:47एक्टिविटी के इंस्टेंस को लेकर रिस्पांस
- 2:20:50में मैप करना। ठीक है? और उसको मैं यहां
- 2:20:52पर क्रिएट कर दूंगा। तो ये क्रिएट हो गया।
- 2:20:54देखिए यहां पर क्रिएट हो गया। मैप टू
- 2:20:57रिस्पांस। अब यहां पर मैं क्या करूंगा?
- 2:20:59यहां पर एक्टिविटी रिस्पांस का पहले
- 2:21:00ऑब्जेक्ट बनाऊंगा। एक्टिविटी रिस्पांस ऐसे
- 2:21:04और फिर रिस्पांस इज़ इक्वल टू न्यू
- 2:21:06एक्टिविटी रिस्पांस ऐसे
- 2:21:08और फिर यहां पर कहूंगा रिस्पांस डॉट सेट
- 2:21:12आईडी और फिर एक्टिविटी ऊप्स सेव्ड
- 2:21:15एक्टिविटी डॉट गेट आईडी ऐसे। अब सेव्ड
- 2:21:19एक्टिविटी मैं नहीं चाहता। यहां पर
- 2:21:20एक्टिविटी नाम दे सकता हूं क्योंकि यह विद
- 2:21:22इन द मेथड है। ठीक है? तो इतना मैंने कर
- 2:21:24दिया। और फिर यहां पर सेट यूजर आईडी। अब
- 2:21:29यूजर आईडी सेट करना है मुझे तो एक्टिविटी
- 2:21:32डॉट गेट यूजर
- 2:21:35डॉट गेट आईडी ऐसे ठीक है क्योंकि आईडी
- 2:21:38रिट्रीव करना है तो यूजर को पहले गेट किया
- 2:21:40है हमने एक्टिविटी में क्या स्टोर हो रहा
- 2:21:42है यूजर ऑब्जेक्ट है उसमें से यूजर को
- 2:21:44रिट्रीव किया है और फिर उसकी आईडी रिट्रीव
- 2:21:47की है और फिर वो आईडी को हम यहां पर सेट
- 2:21:49कर ठीक है उम्मीद करता हूं ये क्लियर हो
- 2:21:52रहा है और समझ में आ रहा है क्या हो रहा
- 2:21:53है देखिए जिनको ये समझ में नहीं आ रहा है
- 2:21:55काफी सिंपल रीज़न है अगर मैं सिर्फ गेट
- 2:21:56यूजर करता हूं तो ये यूजर का ऑब्जेक्ट
- 2:21:58रिटर्न रन करेगा। लेकिन यहां पर मैं यूजर
- 2:22:00आईडी सेट कर रहा हूं। पूरा यूजर का
- 2:22:02ऑब्जेक्ट नहीं। मुझे सिर्फ आईडी चाहिए। तो
- 2:22:04इसी पर मैं गेट आईडी कर लूंगा। ठीक है? ये
- 2:22:06मेथड को चेंज किया है मैंने। ये जो
- 2:22:08कांसेप्ट है इसको मेथड चेंजिंग बोलते हैं।
- 2:22:09लाइक एक मेथड के आउटपुट को आप दूसरा मेथड
- 2:22:12लगा रहे हो। ठीक है? इसको सेव नहीं कर रहे
- 2:22:15हो कहीं पर। आप डायरेक्टली दूसरा मेथड लगा
- 2:22:17रहे हो। इसको चेनिंग बोलते हैं। मेथड
- 2:22:19चेंजिंग। ठीक है? खैर ये सही है। अब
- 2:22:21रिस्पांस डॉट सेट टाइप यहां पर और फिर
- 2:22:25हमें करना है एक्टिविटी डॉट गेट टाइप।
- 2:22:27ऐसे।
- 2:22:28ठीक है? फिर हम करेंगे रिस्पांस डॉट सेट
- 2:22:33ड्यूरेशन और फिर यहां पर कहेंगे एक्टिविटी
- 2:22:35डॉट गेट ड्यूरेशन। ये हो गया। फिर कहेंगे
- 2:22:38रिस्पांस डॉट सेट कैलोरीज़ बर्न। एंड यहां
- 2:22:41पर कहेंगे एक्टिविटीज़ डॉट गेट कैलोरीज़
- 2:22:43बर्न। ठीक है? इतना हो गया। और फिर हम
- 2:22:46कहेंगे रिस्पांस डॉट सेट स्टार्ट टाइम।
- 2:22:52ठीक है? और फिर यहां पर हम कहेंगे
- 2:22:53एक्टिविटी डॉट गेट स्टार्ट टाइम। ठीक है?
- 2:22:56स्टार्ट टाइम को सेट कर रहे हैं। फिर उसके
- 2:22:58बाद रिस्पांस डॉट सेट एडिशनल मैट्रिक्स और
- 2:23:03फिर एक्टिविटी डॉट गेट एडिशनल मैट्रिक्स।
- 2:23:06देखिए थोड़ा मैनुअल हो रहा है। मुझे पता
- 2:23:08है ये करने में थोड़ा बोरिंग भी लगता है।
- 2:23:10सेटिंग सेटर गेटर ये सब क्या कर रहे हैं
- 2:23:12हम? लेकिन ये करना जरूरी है। ठीक है?
- 2:23:15एक्टिविटी डॉट गेट क्रिएटेड एट। ठीक है?
- 2:23:18और फिर यहां पर आएंगे रिस्पांस डॉट अ सेट
- 2:23:21अपडेटेड एट। अच्छा सॉरी सेट यूजर आईडी
- 2:23:24नहीं सेट अपडेटेड एट और फिर एक्टिविटी डॉट
- 2:23:27गेट अपडेटेड एट इस तरीके से ठीक है तो यह
- 2:23:30पूरा हो गया है सारी फील्ड्स को उम्मीद
- 2:23:32करता हूं हमने सेट तो कर दिया है और फिर
- 2:23:34हमें क्या करना है रिटर्न
- 2:23:36रिस्पांस ऐसे ठीक है तो ये हमने कर दिया
- 2:23:40और यहां से ये जो रिस्पांस है वो रिटर्न
- 2:23:42हो जाएगा यहां से ठीक है तो इतना हो चुका
- 2:23:45है और अब आई थिंक हम लोग एक्टिविटी को सेव
- 2:23:50करने कर पानी चाहिए ठीक है कोई दिक्कत
- 2:23:52वैसे से होनी नहीं चाहिए। तो अब फिलहाल
- 2:23:55मैं क्या करता हूं? इस एप्लीकेशन को रन
- 2:23:56करता हूं। ठीक है? देखते हैं इस एप्लीकेशन
- 2:23:58को रन पर अ कैसा क्या होता है बेसिकली।
- 2:24:03ठीक है? वो देखते हैं। तो ये रन हो रहा
- 2:24:05है। ठीक है? रन हो चुका है सक्सेसफुली।
- 2:24:07कोई दिक्कत नहीं है वैसे। तो ये रन होने
- 2:24:09के बाद हम क्या कर सकते हैं? यहां पर
- 2:24:10पोस्टमैन में आ जाते हैं। ठीक है? यहीं पर
- 2:24:12मैं एक नई एंड पॉइंट बना लेता हूं। ठीक
- 2:24:16है? इस तरीके से। और यह होगी
- 2:24:20ट्रैक एक्टिविटी एंड पॉइंट। ठीक है? इस यह
- 2:24:24पोस्ट रिक्वेस्ट है सबसे पहले तो और यहां
- 2:24:26पर लोकल होस्ट स्लश ठीक है? ईपीआई
- 2:24:30एक्टिविटीज ऐसे तो यही एंड पॉइंट है ना?
- 2:24:32एक बार चेक कर लीजिएगा। ठीक है? बहुत बार
- 2:24:35क्या होता है? हम गलत है। एंड पॉइंट हिट
- 2:24:36कर रहे हैं और फिर पता नहीं चल क्यों नहीं
- 2:24:38रहा। ठीक है? ये हो गया। अब यहां पर आ
- 2:24:41जाते हैं बॉडी में। ठीक है? बॉडी में मैं
- 2:24:42रॉ सेलेक्ट कर लेता हूं jसन यहां पर। ठीक
- 2:24:46है? और यहां पर अब मुझे जो रिक्वेस्ट है
- 2:24:50वो मुझे इस फॉर्मेट में देनी है। ठीक है?
- 2:24:53यहां पर देख लीजिए ये जो रिक्वेस्ट है
- 2:24:54यूजर आईडी टाइप एडिशनल मैट्रिक्स ड्यूरेशन
- 2:24:58कैलरीज़ बर्न और अ स्टार्ट टाइम। ठीक है?
- 2:25:02तो यहां पर मैं आ जाता हूं। यहां पर मैं
- 2:25:05लिखूंगा टाइप सबसे पहले। ठीक है? टाइप
- 2:25:07क्या है एक्टिविटी का? तो ठीक है? टाइप को
- 2:25:10मैं बाद में डिफाइन करता हूं। वैल्यूज़ को
- 2:25:12बाद में डिफाइन करते हैं। पहले JSN को
- 2:25:14फाइनल कर लेते हैं। ड्यूरेशन। ठीक है? यह
- 2:25:16ड्यूरेशन है। ड्यूरेशन किसी फॉर्म में
- 2:25:20आएगा। ठीक है? और फिर यहां पर आएगी
- 2:25:22कैलोरीज बर्न। कैलोरीज बर्न इस तरीके से।
- 2:25:25और यहां पर कुछ वैल्यू होगी उसकी कैलोरीज
- 2:25:27बर्न की। ठीक है? फिर होगा स्टार्ट टाइम
- 2:25:31इस तरीके से। और यहां पर स्टार्ट टाइम को
- 2:25:33मेंशन किया जाएगा। ओके? सॉरी।
- 2:25:36स्टार्ट टाइम। फिर उसके बाद आएगी हु्स
- 2:25:43एडिशनल
- 2:25:44मैट्रिक्स ऐसे और यहां पर ऐसा होगा और फिर
- 2:25:49एक्सरसाइजज़
- 2:25:52एक्सरसाइजज़ लिखेंगे हम और फिर यहां पर
- 2:25:56एक्सरसाइजज़ को डिफाइन करेंगे। ठीक है? और
- 2:25:58फिर यहां पर सेट्स लिखेंगे। देखिए एडिशनल
- 2:26:01मैट्रिक्स में ना आप कुछ भी ऐड कर सकते हो
- 2:26:03एक हिसाब से। एडिशनल मैट्रिक्स जो है
- 2:26:05देखिए मैं इसको कट कर लेता हूं। ये एडिशनल
- 2:26:07मैट्रिक्स इतना आपने लिख दिया ना ये जेसन
- 2:26:09बन चुकी है। ठीक है? ओप्स सॉरी तो यहां पर
- 2:26:13एडिशनल मैट्रिक्स में ऐसा आपने इतना लिख
- 2:26:15दिया तो ये जेसन बन चुकी है वैसे भी। ठीक
- 2:26:17है? टाइप ड्यूरेशन, कैलोरीज बर्न, स्टार्ट
- 2:26:19टाइम और एडिशनल मैट्रिक्स। ठीक है? टाइप,
- 2:26:21ड्यूरेशन, कैलोरीज बर्न, स्टार्ट टाइप,
- 2:26:23एडिशनल मैट्रिक्स। यूजर आईडी रह गई ये।
- 2:26:25ठीक है? यूजर आईडी डालना जरूरी है। तो,
- 2:26:28यहां पर यूजर आईडी कौन से यूजर के अगेंस्ट
- 2:26:30आप क्रिएट कर रहे हो ये पूरा डेटा। तो, यह
- 2:26:33आपने लिख दिया। इतना लिख दिया। जसन बन
- 2:26:35चुकी है। अब मैं क्या करूंगा? देखिए
- 2:26:37एडिशनल मैट्रिक्स में मैं थोड़ा डाटा डाल
- 2:26:38रहा हूं। जैसे कि एक्सरसाइजज़ कौन सी की
- 2:26:40है, कितना सेट लिया है और फिर रैप्स कितने
- 2:26:43हैं? ये खुद से आप लिख सकते हो। खुद से
- 2:26:46क्यों लिख सकते हो? क्यों लिख सकते हो?
- 2:26:48क्योंकि ये मैप है। देखिए ये मैप है इसका
- 2:26:51टाइप। तो कोई भी स्ट्रिंग लाइक कोई भी की
- 2:26:53आप लिखो और उसकी वैल्यूज़ प्रोवाइड कर दो।
- 2:26:56वो काम करेगा। ठीक है? तो यहां पर सबसे
- 2:26:57पहले तो मैं एक्सरसाइजज़ लिख रहा हूं।
- 2:26:59एक्सरसाइज़ज़ में मैं लिख रहा हूं बेंच
- 2:27:01प्रेस। ठीक है? और फिर यहां पर लिख रहा
- 2:27:04हूं स्क्वाट्स।
- 2:27:06ठीक है? फिर यहां पर लिख रहा हूं डेड
- 2:27:08लिफ्ट्स।
- 2:27:10ठीक है? और फिर सेट्स मैं लिख रहा हूं 12
- 2:27:12के सेट मारे इसने। और रेप्स किए हैं 120।
- 2:27:16ठीक है? जो भी जो भी आपको लिखना है डेटा।
- 2:27:18ठीक है? आप लिख दीजिए। टाइप यहां पर देखिए
- 2:27:20टाइप यहां पर आप लिख सकते हो। अब टाइप
- 2:27:22कहां से आना है आपको? ठीक है? एक्टिविटी
- 2:27:25टाइप जो है उसमें जो टाइप्स आपने डिफाइन
- 2:27:27किए हैं आपको याद होगा यह आपने एक्टिविटी
- 2:27:28टाइप जहां पर प्रीसेट टाइप्स है तो आप वेट
- 2:27:32ट्रेनिंग ले लीजिए कोई भी ले लीजिए आपके
- 2:27:33हिसाब से टाइप ले लीजिए यूजर आईडी आपको
- 2:27:36डालनी है यूजर आईडी के लिए आपको आप जो
- 2:27:38रजिस्टर कर रहे हो यूजर को ठीक है तो किसी
- 2:27:41भी रजिस्टर्ड यूजर की आईडी ले लीजिए और वो
- 2:27:44आईडी यहां पर पेस्ट कीजिए ये आईडी करेक्ट
- 2:27:46होनी चाहिए क्योंकि सर्विस लेयर पर आप
- 2:27:48यूजर का जो ऑब्जेक्ट है उसे फैच कर रहे हो
- 2:27:51करेक्ट ये आईडी की मदद से जो आप पास कर
- 2:27:53रहे हो तो यह आईडी सही होनी चाहिए। ठीक
- 2:27:55है? आईडी सही नहीं होगी तो वहां पर क्रैश
- 2:27:57कर जाएगा प्रोग्राम। ड्यूरेशन आप लिख सकते
- 2:27:59हो 45 तो 45 मिनट्स कैलोरीज बर्न आप लिख
- 2:28:02सकते हो 300। फॉर एग्जांपल स्टार्ट टाइम
- 2:28:05आपको देना है। तो स्टार्ट टाइम देखिए इस
- 2:28:06फॉर्मेट में देना है आपको। ये टाइम स्टैंप
- 2:28:08वाला जो फॉर्मेट है। तो ये आप देख सकते हो
- 2:28:11इस तरीके से। कॉपी कर लीजिए। इसको मेंशन
- 2:28:15कर दीजिए यहां पर। ठीक है? इतना हो गया।
- 2:28:17jसन तो बन चुकी है। ठीक है? और पुट के
- 2:28:19बजाय इसको पोस्ट कर दूंगा। मैंने गलती से
- 2:28:21पुट सेलेक्ट कर लिया था। ठीक है? इतना हो
- 2:28:23गया। अब इसको रन करके देखते हैं। ये रन
- 2:28:24होती है क्या? अभी फिलहाल अगर आप डेटाबेस
- 2:28:26में आओगे तो एक्टिविटी टेबल में देखोगे तो
- 2:28:29कुछ डेटा नहीं है। ठीक है? इसको रन करके
- 2:28:31देखते हैं। चलिए रन किया मैंने। अच्छा चलो
- 2:28:34एरर तो आना एरर जभी भी आता है जब भी लाइव
- 2:28:38रिकॉर्डिंग के टाइम पे तो मुझे बहुत खुशी
- 2:28:39होती है क्योंकि एरर दिखाने का और डीबग
- 2:28:41करने का चांस मिल जाता है और आपको भी कुछ
- 2:28:43नया सीखने मिल जाता है कि डीबगिंग कैसे
- 2:28:45करनी है। तो देखिए एरर आपको यहां पर आएगी।
- 2:28:48ठीक है? ठीक है? लोग क्या यहां पर एरर का
- 2:28:50मैसेज ढूंढते हैं। ऐसे नहीं होता है।
- 2:28:52पोस्टमैन में आपको दिख रहा है कि एरर आई
- 2:28:54है। कुछ इंटरनल सर्वर एरर। इसका मतलब कुछ
- 2:28:56एरर आई है। अब आपको एरर की जो डिटेल्स है
- 2:28:58वो स्टक ट्रेस पे दिखेगी। यहां पर देखिए
- 2:29:01पूरी स्टक ट्रेस आई है। ठीक है? पूरी की
- 2:29:03पूरी स्टैक ट्रेस। यहां पर अभी क्या डाटा
- 2:29:05आया है वो आपको देखना है। पूरा स्क्रॉल
- 2:29:06करना है ऊपर। तो एक पॉइंट तक आप स्क्रॉल
- 2:29:09करोगे ऊपर तो आपको दिखाई देगा। यहीं कहीं
- 2:29:12देखिए स्टार्टिंग में आपको दिखाई दे रहा
- 2:29:15है। ठीक है? क्या बोल रहा है यह? तो यह
- 2:29:18बोल रहा है कुड नॉट फाइंड फॉर्मेट मैपर
- 2:29:22फॉर jसन फॉर्मेट व्हिच इज रिक्वायर्ड फॉर
- 2:29:23मैपिंग jसन टाइप्स। ठीक है? jसन फॉर्मेट
- 2:29:27मैपर इज़ ऑटोमेटिक बट रिक्वायर्स दैट यू
- 2:29:30इदर हैव जैक्सन और jसन बी लाइक यासन ऑन द
- 2:29:34क्लासेस। अच्छा कुडाइट कुड नॉट फाइंड अ
- 2:29:36फॉर्मेट मैपर। तो ठीक है। यह एरर सिंपली
- 2:29:40यह बोल रहा है दोस्तों कि आप JSN में डाटा
- 2:29:44भेज रहे हो। ठीक है? यहां से हम JSN में
- 2:29:45डाटा भेज रहे हैं। यह वाला डाटा एक्चुअली
- 2:29:48रिक्वेस्ट ही पूरी jसn में है। लेकिन ये
- 2:29:50वाला जो डाटा है एडिशनल मैट्रिक्स का इतना
- 2:29:53ये भी जेएसएन है। करेक्ट। और हम jसn को एज
- 2:29:56इट इज़ स्टोर कर रहे हैं डेटाबेस में। तो
- 2:29:58आप यहां पर देखोगे अगर एक्टिविटी अ की जो
- 2:30:02टेबल है सॉरी एक्टिविटी का जो क्लास है
- 2:30:04उसमें हम एडिशनल मैट्रिक्स को JSN फॉर्मेट
- 2:30:07में स्टोर कर रहे हैं। JSN जो भी आ रही है
- 2:30:09उसको स्टोर कर रहे हैं एडिशनल मैट्रिक्स
- 2:30:10में। ठीक है? तो प्रॉब्लम ये हो रही है
- 2:30:13यहां पर कोई जेसन मैपर नहीं है अ सेव करने
- 2:30:17के लिए डेटा तो एक jसn मैपर की जरूरत होती
- 2:30:19है तो मैं क्या करूंगा यहां पर आ जाऊंगा
- 2:30:20pmsl में और यहां पर एक डिपेंडेंसी हम ऐड
- 2:30:23करेंगे मैनुअली ठीक है तो एक डिपेंडेंसी
- 2:30:25का टैग ऐसे लिख लेंगे हम लोग ठीक है तो
- 2:30:27डिपेंडेंसी का टैग जैसे ही लिखते हो आप तो
- 2:30:29देखिए आपको यहां पर आ जाएगी ग्रुप आईडी और
- 2:30:31आर्टिफेक्ट आईडी और ये डिपेंडेंसी का टैग
- 2:30:33आपको डिपेंडेंसी के अंदर लिखना है ठीक है
- 2:30:36यहां पर ऐसे और यहां पर ग्रुप आईडी आपको
- 2:30:38लिखना है कॉम डॉट फास्ट मास्टर xml jxinc
- 2:30:43तो देखिए मुझे ऑटो सजेस्ट में भी आ गया
- 2:30:45ठीक है और यहां पर ये जैक्सिन एनोटेशंस की
- 2:30:48बजाय जैक्सिन डेटा बाइंड कर देना है ठीक
- 2:30:50है तो इतना आपको ऐड कर देना है ये
- 2:30:53डिपेंडेंसी और यहां पर मेवन रीलोड कर लेना
- 2:30:55है ठीक है और आपको रिस्टार्ट कर देते हैं
- 2:30:59तो ये बेसिकली jसन के साथ काम करने के लिए
- 2:31:02हेल्प करती है ये वाली जो डिपेंडेंसी है
- 2:31:05वो और वो एडेड नहीं थी तो इसके लिए वो जो
- 2:31:07डेट डेटा है वो डेटाबेस में स्टोर नहीं हो
- 2:31:10पा रहा था तो ये हो गया। ठीक है? और अब
- 2:31:12इसको फिर से रन करते हैं। और यहां पर
- 2:31:14देखिए अब डेटा जो है वो बढ़िया तरीके से
- 2:31:17सेव हो रहा है। यहां पर आप देख पा रहे हो
- 2:31:19आईडी जनरेट जनरेट हुई है। यूजर आईडी जो
- 2:31:21हमने पास की थी वो है वेट ट्रेनिंग एडिशनल
- 2:31:24मैट्रिक्स सेट्स रैप्स ये सारी चीजें
- 2:31:27स्टार्ट टाइम क्रिएटेड एट अपडेटेड एट सब
- 2:31:29कुछ जनरेट हो रहा है खुद ब खुद। ठीक है?
- 2:31:31और यहां पर अगर आप डेटाबेस लेवल पर आते हो
- 2:31:33और इसको रन करते हो तो देखिए आपको डेटा भी
- 2:31:35दिखाई देगा। यहां पर देख पा रहे हैं आप
- 2:31:37डेटा दिखाई दे रहा है आपको। ठीक है? ठीक
- 2:31:38है? एडिशनल मैट्रिक्स देखिए जेसन फॉर्मेट
- 2:31:40में स्टोर हुआ है। देखिए एडिशनल मैट्रिक्स
- 2:31:43ये पूरा का पूरा JSN फॉर्मेट में स्टोर
- 2:31:45हुआ है। क्यों? क्योंकि हमने फील्ड को ही
- 2:31:46नाम दिया jसन। तो जो भी डेटा आ रहा है
- 2:31:49उसको हम ऐसे ही डंप कर रहे हैं डेटाबेस
- 2:31:50में। देखिए एडिशनल मैट्रिक्स एक ऐसी चीज
- 2:31:53है कि आप कुछ भी ऐड करना चाहो। जैसे कि
- 2:31:55अभी वेट ट्रेनिंग की एक्सरसाइज़ थी। हमने
- 2:31:58वेट ट्रेनिंग को ट्रैक किया। तो यहां पर
- 2:31:59आप रैप्स और कौन सी एक्सरसाइज किए उसको
- 2:32:02ट्रैक किया आपने। अगर हम स्विमिंग ट्रैक
- 2:32:03कर रहे हैं तो यहां पर लैप्स आएंगे। कितने
- 2:32:05लैप्स आपने कंप्लीट किए स्विमिंग में क्या
- 2:32:07स्पीड थी वो सारी चीजें आएंगी। अगर आप
- 2:32:10रनिंग ट्रैक कर रहे हो तो इसमें कैड्स पेस
- 2:32:13आपने कितना किलोमीटर रन किया ये सारी
- 2:32:14चीजें आएंगी। ठीक है? तो डिपेंडिंग ऑन दी
- 2:32:16एक्टिविटी क्या है? ये एडिशनल मैट्रिक्स
- 2:32:18चेंज होते रहता है। तो इसके लिए हमने इसका
- 2:32:20स्ट्रक्चर डिफाइन नहीं किया है। jसn जो भी
- 2:32:22आ रही है सीधा-सीधा हम उसको डंप कर देते
- 2:32:23हैं यहां पर। ठीक है? और आपको JSN लेवल पे
- 2:32:26मेक श्योर करना है कि आप सही डाटा पास करो
- 2:32:28उसमें जो भी आपको दिखाना है। और यहां पर
- 2:32:30देखिए सब कुछ सेव हो चुका है जैसे हमने
- 2:32:32पास किया था और यूजर आईडी भी आ चुकी है
- 2:32:34यहां पर। ठीक है? तो पूरा का पूरा डेटा जो
- 2:32:36है वो आ चुका है और काफी बढ़िया तरीके से
- 2:32:39सेव हुआ है। ठीक है? तो ये जो डेटा है एक
- 2:32:42पर्टिकुलर यूजर के अगेंस्ट मैप्ड है। तो
- 2:32:44ये यूजर है उसके अगेंस्ट मैप्ड है। ठीक
- 2:32:46है? और हम डेटा को स्टोर भी कर पा रहे
- 2:32:49हैं। ठीक है? उम्मीद करता हूं इतना क्लियर
- 2:32:51रहा है अब तक। ठीक है? ये वाली एंड पॉइंट
- 2:32:52क्लियर रही है। ठीक है? ये वाली एंड पॉइंट
- 2:32:55क्यों थी? ये वाली एंड पॉइंट हमने
- 2:32:57एक्टिविटी को ट्रैक करने के लिए बनाई थी।
- 2:32:59काफी सारे कांसेप्ट्स को फिर से टच किया
- 2:33:01हमने। ठीक है? और थोड़ी प्रैक्टिस भी हो
- 2:33:04गई और चीजें किस तरीके से ईपीआई लेवल पर
- 2:33:07काम कर रही है एक साथ वो भी हमें देखने
- 2:33:09मिल गया। ठीक है? उम्मीद करता हूं यह
- 2:33:11हेल्पफुल रहा। अब आगे ये एंड पॉइंट पर काम
- 2:33:14करेंगे। मैं तो बोलता हूं ये एंड पॉइंट को
- 2:33:15भी चैलेंज की तरह लीजिए। एटलीस्ट अगर आपने
- 2:33:17ये वाली एपीआई नहीं बना पाए तो एटलीस्ट
- 2:33:19इसको चैलेंज की तरह लीजिए। ये सिंपल वाली
- 2:33:21है। इसमें सिर्फ गेट करना है, डेटा और
- 2:33:23दिखा देना है बस। ठीक है? लीजिए चैलेंज की
- 2:33:26तरह और नहीं कर पाते तो कोई बात नहीं।
- 2:33:29डीमोटिवेट नहीं होना है। वीडियो को
- 2:33:30कंटिन्यू रखना है और आगे मैं कैसे बनाते
- 2:33:32जा रहा हूं वो देखते रहना है। ठीक है?
- 2:33:40तो दोस्तों बात करते हैं अब नेक्स्ट एंड
- 2:33:42पॉइंट के बारे में जो कि यहां पर हमने
- 2:33:44कमेंट किया हुआ है। तो इस एंड पॉइंट की
- 2:33:46मदद से हमें क्या करना है? हमें जो
- 2:33:48एक्टिविटी क्रिएटेड ही क्रिएटेड की है
- 2:33:51हमने यहां पर जो क्रिएट की है उसको
- 2:33:53रिट्रीव करना है। ठीक है? तो इसको मैं
- 2:33:56जल्दी से अनकमेंट कर देता हूं क्योंकि
- 2:33:57यहां पर कोड लिखना है अब हमें और देखिए
- 2:33:59यहां पर सबसे पहली चीज़ हमें करनी है कि
- 2:34:01यहां पर ट्रैक एक्टिविटी ये मेथड का नेम
- 2:34:03है और यहां पर भी हमने ट्रैक एक्टिविटी
- 2:34:05रखा है। ठीक है? तो इसको ट्रैक एक्टिविटी
- 2:34:07नहीं इसको हम कुछ बढ़िया सा नाम दे सकते
- 2:34:09हैं जो कि बताए हमें कि ये मेथड क्या करता
- 2:34:11है? तो हम कहेंगे गेट यूजर एक्टिविटीज।
- 2:34:14ठीक है? तो ये एंड पॉइंट क्या करने वाला
- 2:34:17है? यह एंड पॉइंट हमें एक यूजर स्पेसिफिक
- 2:34:19एक्टिविटी रिटर्न करेगा। एक यूजर
- 2:34:22स्पेसिफिक मतलब एक यूजर के अगेंस्ट अगर
- 2:34:24कोई एक्टिविटी रिकॉर्डेड है, लॉक्ड है तो
- 2:34:26वो उसे फेच करके हमें दे देगा यूजर
- 2:34:28स्पेसिफिक। ठीक है? तो एग्जांपल के तौर पे
- 2:34:31अगर मैं आपको बताऊं तो मान लीजिए एक यूजर
- 2:34:33ए है ठीक है? और दूसरा यूजर बी है तो यूजर
- 2:34:37ए के अगेंस्ट अगर 10 एक्टिविटी रिकॉर्डेड
- 2:34:39है जैसे कि वे ट्रेनिंग, स्विमिंग ये सब
- 2:34:41तो वो यूजर ए की ही अगर हम यूजर ए की मांग
- 2:34:44रहे हैं तो यूजर ए की ही एक्टिविटी देगा।
- 2:34:46बी की नहीं देगा। और अगर बी की एक्टिविटीज़
- 2:34:48मांगते हैं तो बी की देगा। ठीक है? अब
- 2:34:51देखिए यहां पर यह एपीआई बनाने बनाते वक्त
- 2:34:54आपको एक नया कांसेप्ट सीखने मिलेगा जो कि
- 2:34:56है रिक्वेस्ट हेडर का। ठीक है? रिक्वेस्ट
- 2:34:59हेडर का कांसेप्ट का मतलब क्या है? यहां
- 2:35:01पर ये रिक्वेस्ट है। ठीक है? मेरे पास ये
- 2:35:04रिक्वेस्ट में बॉडी जा सकती है, ऑथराइज़ेशन
- 2:35:06अह डिटेल्स जा सकती है, पैराटर्स जा सकते
- 2:35:09हैं। और एक आपको ऑप्शन यहां पर दिखाई देगा
- 2:35:12जो कि है हेडर्स का। ठीक है? तो यहां पर
- 2:35:15आप हेडर्स ऐड कर सकते हो रिक्वेस्ट के साथ
- 2:35:18और आप स्प्रिंग बूट में इस तरीके का कोड
- 2:35:20लिख सकते हो जहां पर आप हेडर्स को रिट्रीव
- 2:35:23कर पाओ और उन हेडर्स को इस्तेमाल करके उस
- 2:35:26उनमें जो डेटा है तो आप डेटा पास कर सकते
- 2:35:28हो एक हिसाब से। ठीक है? तो ये जो अ ये जो
- 2:35:32एंड पॉइंट मैं बनाने वाला हूं इस एंड
- 2:35:34पॉइंट में मैं हेडर्स का इस्तेमाल करूंगा।
- 2:35:37ठीक है? और यहां पर आपको एक थोड़ा नया
- 2:35:39कांसेप्ट सीखने मिल जाएगा। ठीक है?
- 2:35:40क्योंकि देखिए हमारे पास आईडी पास करने का
- 2:35:42अभी कोई जरिया है नहीं। ठीक है? अगर आप एक
- 2:35:46यूजर स्पेसिफिक एक्टिविटी फच करना चाह रहे
- 2:35:48हो तो एप्लीकेशन को क्या लगेगा? एप्लीकेशन
- 2:35:51को लगेगा यूजर आईडी। ठीक है? एप्लीकेशन को
- 2:35:53चाहिए यूजर आईडी। एप्लीकेशन बोलेगा आप ठीक
- 2:35:56है? एक स्पेसिफिक यूजर की एक्टिविटी फच
- 2:35:58करना चाह रहे हो। लेकिन कौन से यूजर की
- 2:36:00फेच करना चाह रहे हो? मुझे यूजर आईडी तो
- 2:36:01बताइए। कौन सा यूजर है? ठीक है? तो आपको
- 2:36:04यूजर आईडी रिक्वेस्ट में इनकॉर्पोरेट करना
- 2:36:07होगा और एप्लीकेशन की जॉब है कि वो उसमें
- 2:36:10से यूजर आईडी को रिट्रीव करें और उस यूजर
- 2:36:13की डिटेल्स पास कर दे ऐसा। ठीक है? तो अब
- 2:36:17पास करने के लिए ये यूजर आईडी पास करने के
- 2:36:20लिए अलग-अलग तरीके होते हैं। लेकिन मैं
- 2:36:21हेडर्स को चूज़ कर रहा हूं यहां पर। ठीक
- 2:36:23है? हेडर्स को चूज़ करेंगे और हम क्या
- 2:36:24करेंगे? अ यहां पर आ जाएंगे। तो देखिए
- 2:36:28दोस्तों एक और क्वेश्चन को मैं एड्रेस
- 2:36:30करना चाहूंगा। जनरली बिगिनर्स में ये
- 2:36:31क्वेश्चन आता है कि हमने हेडर्स को
- 2:36:33नॉर्मली चूज़ चूज़ क्यों करते हैं? ठीक है?
- 2:36:35हेडर्स को नॉर्मली चूज़ क्यों कर रहे हैं?
- 2:36:37हम पैरामीटर पास करने के लिए यहां पर ये
- 2:36:39भी है। पैरम्स भी है। ये पैरम्स में आप
- 2:36:41डेटा पास कर सकते हो। तो फॉर एग्जांपल अगर
- 2:36:43मैं यहां पर लिखूं पेज इक्वल टू वन। तो
- 2:36:45देखिए ये अ पैरामीटर में पास हो रहा है।
- 2:36:48है कि नहीं? तो मैं इसका भी तो इस्तेमाल
- 2:36:50कर सकता हूं। लेकिन इसका एक रीज़न है कि
- 2:36:52मैं हेडर का क्यों इस्तेमाल कर रहा हूं?
- 2:36:53ये भी एक रीज़न है। चलो हमें सीखने तो
- 2:36:55मिलेगा एक नया कॉन्सेप्ट। वो एक रीज़न है।
- 2:36:57लेकिन जनरली हेडर्स का इस्तेमाल इसलिए
- 2:36:59होता है कि अगर आप कोई ऐसा डेटा पास करना
- 2:37:01चाह रहे हो एप्लीकेशन में एपीआई के थ्रू अ
- 2:37:04तो हेडर्स चूज़ किया जाता है। क्योंकि
- 2:37:06पैराम्स को आपको क्लीन रखना होता है। अ आप
- 2:37:10पैराम्स को जनरली इस्तेमाल करते हो
- 2:37:12पैजिनेशन और सर्च क्वेरी रिलेटेड इनफेशन
- 2:37:14पास करने के लिए। तो अगर आपको पेज पेज वन
- 2:37:16की डिटेल्स चाहिए, पेज थ्री की डिटेल्स
- 2:37:18चाहिए और आपको सर्च क्वेरी पास करनी है तो
- 2:37:22वो सारी चीजें चीजों के लिए पैरम्स ये जो
- 2:37:25यूआरएल पैरामीटर्स है वो बेहतर चीज होती
- 2:37:28है। क्वरी पैराटर्स जो है वो बेहतर चीज
- 2:37:30होती है और हेडर्स ऐसी कोई यूजर आईडी या
- 2:37:32ऐसा कुछ पास करना है तो उसके लिए बेहतर
- 2:37:34होता है। ठीक है? तो अब आ जाते हैं यहां
- 2:37:35पर। अब यहां पर हम क्या करेंगे? देखिए
- 2:37:39यहां पर हमें चाहिए यूजर आईडी। तो पहले तो
- 2:37:42मैं लिख लूंगा स्ट्रिंग यूजर आईडी और यह
- 2:37:45यूजर आईडी आ रही है हेडर से तो यूजर आईडी
- 2:37:47हेडर लिख दूंगा यहां पर ठीक है और यहां पर
- 2:37:51मैं क्या करूंगा या तो ये यूजर आईडी
- 2:37:53लिखूंगा हेडर लिखने की जरूरत नहीं और यहां
- 2:37:55पर मैं क्या करूंगा यहां पर रिटर्न करते
- 2:37:56वक्त मैं कर दूंगा रिस्पांस एंटी डॉट और
- 2:38:01यहां पर लिख दूंगा एक्टिविटी सर्विस डॉट
- 2:38:03गेट यूजर एक्टिविटीज ऐसे और ऐसे यूजर आईडी
- 2:38:09लिख दूंगा मैं ठीक है ऐसे तो इतना मैंने
- 2:38:12लिख दिया है। अब यह मेथड तो एक्सिस्ट नहीं
- 2:38:15करता। तो इसके लिए रेड मार्क्स आ रहे हैं।
- 2:38:16एक काम कर सकते हैं। इस पे होवर करके
- 2:38:19इंटेलिजेंट की मदद से ये मेथड का
- 2:38:20स्ट्रक्चर भी मैं बना सकता हूं यहां पर।
- 2:38:22ठीक है? तो कंट्रोलर से सारे इशूज़ चले गए।
- 2:38:25ठीक है? अब यहां पर देखिए मैंने यूजर आईडी
- 2:38:27लिखा है पैरामीटर्स। तो पैरामीटर्स में एक
- 2:38:29पैरामीटर है जो कि है यूजर आईडी। अब ये
- 2:38:31यूजर आईडी आ कहां से रहा है? तो जैसे कि
- 2:38:33मैंने कहा रिक्वेस्ट हेडर से आ रहा है। तो
- 2:38:35अब रिक्वेस्ट हेडर से आ रहा है यह हमको
- 2:38:37स्प्रिंग बूट को बताना होगा ताकि स्प्रिंग
- 2:38:40बूट उसको ऑटोमेटिकली रिट्रीव करें और
- 2:38:42एप्लीकेशन को प्रोवाइड करे या हमारे मेथड
- 2:38:44को प्रोवाइड करें। तो बताएंगे कैसे हम ये
- 2:38:46हम यहां पर लिखेंगे रिक्वेस्ट
- 2:38:49बॉडी इस तरीके से। ठीक है? और यहां पर मैं
- 2:38:54लिख दूंगा वैल्यू। अच्छा रिक्वेस्ट अ सॉरी
- 2:38:58रिक्वेस्ट हेड बॉडी नहीं रिक्वेस्ट हेडर
- 2:39:00आएगा। सॉरी रिक्वेस्ट हेडर और यहां पर आ
- 2:39:03जाएगा वैल्यू ठीक है और वैल्यू की जगह मैं
- 2:39:06कहूंगा एक्स हफन यूजर हफन आईडी ये हेडर की
- 2:39:11ये हेडर का नाम है ठीक है तो इस हेडर में
- 2:39:15अगर इस नाम से कोई पैरामीटर आता है तो उसे
- 2:39:18यूजर आईडी को असाइन कर देना है और आप क्या
- 2:39:20करोगे इसको लोगे यहां पर ठीक है यहां पर आ
- 2:39:23जाओगे और यहां पर ट्रैक एक्टिविटी जो आपने
- 2:39:26बना रखी है ठीक है मैं सारी रिक्वेस्ट को
- 2:39:28सेव कर लेता हूं एक हिसाब से ट्रैक
- 2:39:30एक्टिविटी जो आपने बना रख रखिए। उसको हम
- 2:39:31डुप्लीकेट करेंगे ऐसे। ठीक है? और फिर
- 2:39:35यहां पर आ जाऊंगा रिट्रीव
- 2:39:37एक्टिविटी इस तरीके से। और यहां पे ऐसे आप
- 2:39:42लिखोगे और हेडर में आप पास कर दोगे एक्स
- 2:39:45यूजर आईडी और यहां पर यूजर आईडी मेंशन कर
- 2:39:48दोगे इस तरीके से। ठीक है? तो ऐसे पास
- 2:39:50होगी ये एक्स यूजर आईडी। एक्स यूजर आईडी
- 2:39:52और ये वाली जो नाम आपने मेंशन किए है ये
- 2:39:54दोनों सेम होनी चाहिए। तभी जाकर जो वैल्यू
- 2:39:56आप पास कर रहे हो यहां पर मेंशन हो जाएगी।
- 2:39:58ठीक है? इतना होने के बाद ये जो वैल्यू है
- 2:40:01वो यहां पर पास हो जाएगी मेथड में और मेथड
- 2:40:03में अगर आप जाते हो ठीक है तो यहां पर अब
- 2:40:06हमें लॉजिक लिखने की जरूरत है। ठीक है? ये
- 2:40:08लॉजिक क्या करेगा? लॉजिक हमें जो
- 2:40:11एक्टिविटी सर्विस में अ रिपॉजिटरी की मदद
- 2:40:15से जो भी यूज़र्स है उसमें से एक पर्टिकुलर
- 2:40:18यूजर के अगेंस्ट जो भी अह एक्टिविटी
- 2:40:21रिकॉर्डेड है उसको रिटर्न करने में मदद
- 2:40:23करेगा। ठीक है? तो यहां पर हम आ जाते हैं।
- 2:40:25ठीक है? यहां पर मुझे क्या लगेगा? मुझे
- 2:40:27यहां पर लिस्ट ऑफ एक्टिविटी सबसे पहले
- 2:40:30लगेगी। ठीक है? तो देखिए लिस्ट ऑफ़
- 2:40:32एक्टिविटी आप कैसे रिट्रीव कर सकते हो?
- 2:40:34आपको लेना है लिस्ट और एक्टिविटी यहां पे
- 2:40:38और यहां पे आपको लेना है लिस्ट एक्टिविटी
- 2:40:41लिस्ट इस तरीके से। और यहां पे लेना है
- 2:40:44एक्टिविटी रिपॉज़िटरी डॉट फाइंड बाय आईडी।
- 2:40:48ऐसे फाइंड बाय आईडी। ठीक है? और यहां पर
- 2:40:53आपको यूजर आईडी मेंशन करनी है इस तरीके
- 2:40:55से।
- 2:40:57ठीक है? अब यहां पर एक दिक्कत है। मैं
- 2:40:58आपको एक चीज बताता हूं। आपने यहां पर मेथड
- 2:41:00जो इस्तेमाल किया है वह है फाइंड बाय
- 2:41:02आईडी। फाइंड बाय आईडी क्या करेगा? वो
- 2:41:05फाइंड करेगा बाय एक्टिविटी आईडी।
- 2:41:08एक्टिविटी रिपॉज़िटरी है। करेक्ट? तो वो
- 2:41:10फाइंड करेगा बाय एक्टिविटी आईडी। ठीक है?
- 2:41:13तो यहां पर प्रॉब्लम हो जाती है। तो यहां
- 2:41:15पर हमें एक्टिविटी आईडी से सर्च नहीं करना
- 2:41:18है। हमें सर्च करना है बाय यूजर आईडी। ठीक
- 2:41:21है? हमें क्या करना है? बाय यूजर आईडी
- 2:41:22सर्च करना है। अब यहां पर देखिए दूसरी
- 2:41:24प्रॉब्लम आती है। बाय यूजर आईडी ऐसा कोई
- 2:41:25मेथड एक्टिविटी रिपॉज़िटरी जो है वह
- 2:41:28प्रोवाइड करती ही नहीं है। तो यह आपको
- 2:41:31कस्टम बनाना पड़ेगा। ठीक है? यह कस्टम
- 2:41:34बनाना पड़ेगा। अब यहां पर एक और कांसेप्ट
- 2:41:36को हम टच अप करेंगे कि कस्टम मेथड्स आप
- 2:41:40किस तरीके से बना सकते हो। देखिए, जेपीए
- 2:41:42रिपॉज़िटरी जो है, रिपॉज़िटरी में अगर आप
- 2:41:44जाते हो यहां पर, ठीक है? तो, यह
- 2:41:46एक्टिविटी रिपॉज़िटरी की जो इंटरफ़ेस है, वो
- 2:41:48है। ठीक है? यहां पर हमने जेपीए रिपॉज़िटरी
- 2:41:51को एक्सटेंड कर रखा है। तो मैंने कहा था
- 2:41:53जेपीए रिपॉज़िटरी एक ऐसा इंटरफ़ेस है जो
- 2:41:56हमें प्रीबिल्ट मेथड्स देती है। ठीक है?
- 2:41:58जिसके जरिए आप डेटाबेस से इंटरेक्ट कर
- 2:42:00सकते हो। ठीक है? प्रीबिट्ट मेथड्स
- 2:42:02क्या-क्या होती है? तो यहां पर अगर आप
- 2:42:03देखोगे यहां पर अगर आप आते हो तो देखिए
- 2:42:06फाइंड फाइंड को अगर आप लिखते हो फाइंड बाय
- 2:42:08आईडी फाइंड ऑल ये सारे मेथड्स आपको मिलते
- 2:42:10हैं। सेव मेथड मिलते हैं। ठीक है? काफी
- 2:42:12सारे मेथड मिलते हैं। यहां पर आप देखोगे
- 2:42:14काफी सारे मेथड्स मिलते हैं आपको। ठीक है?
- 2:42:16कंट्रोल सेट कर लेता हूं और जो हमने लिखा
- 2:42:18था उस पर आ जाता हूं। ठीक है? काफी सारे
- 2:42:20मेथड्स मिलते हैं। ये मेथड प्रीबिड होते
- 2:42:22हैं। ठीक है? फाइंड बाय आईडी करके भी एक
- 2:42:25मेथड है। लेकिन वो क्या करेगा? देखिए ये
- 2:42:27एक्टिविटी रिपॉजिटरी है। करेक्ट? ये
- 2:42:30एक्टिविटी रिपॉज़िटरी है। तो एक्टिविटी को
- 2:42:32अगर आप देखोगे तो फाइंड बाय आईडी का मतलब
- 2:42:34हुआ वो इस आईडी से सर्च करेगा। एक्टिविटी
- 2:42:37इस आईडी से। क्या हम इस आईडी से सर्च करना
- 2:42:40चाहते हैं? जी नहीं। हमारे पास क्या आ रही
- 2:42:42है? यूजर आईडी आ रही है तो यूजर आईडी आ
- 2:42:44रही है तो यूजर आईडी से हम कैसे सर्च
- 2:42:46करेंगे उसके लिए हमें अब यह कस्टम यूज़ केस
- 2:42:49हो गया जो कि हमारे एप्लीकेशन के लिए
- 2:42:50स्पेसिफिक है ठीक है तो इसके लिए जेपीए
- 2:42:53कोई मेथड प्रोवाइड नहीं करेगा जीपीए
- 2:42:54हाइपरनेट कोई मेथड नहीं प्रोवाइड करेगा
- 2:42:56लेकिन हमें एक ऐसा तरीका देगा जिसकी मदद
- 2:42:58से हम ये मेथड को आसानी से अ बना पाए ठीक
- 2:43:03है और मैं क्या करूंगा उसके लिए यहां पर
- 2:43:06इसको होवर करूंगा और यहां पर क्रिएट मेथड
- 2:43:10पे क्लिक कर दूंगा ठीक है जैसे जैसे ही
- 2:43:12मैं क्रिएट मेथड पे क्लिक करता हूं तो
- 2:43:13देखिए यहां पर अ ये मेथड क्रिएट हो गया।
- 2:43:16ये इंटेलिजेंट ने क्रिएट कर दिया
- 2:43:18एक्टिविटी रेपोजिटरी में। ठीक है? अब
- 2:43:21देखिए यहां पर आप देखोगे ना तो हमें कोई
- 2:43:23डेफिनेशन प्रोवाइड नहीं करना है। हमें
- 2:43:25सिर्फ ये डिक्लेअर करना है इस तरीके से
- 2:43:26मेथड और छोड़ देना है। ठीक है? ये मैजिक
- 2:43:29है। देखिए अभी ये जेपीए का मैजिक है।
- 2:43:32हाइबनेट का मैजिक है। हमने सिर्फ मेथड
- 2:43:34यहां पर लिखना है एक पर्टिकुलर सिंटेक्स
- 2:43:37में। और जेपीए हाइबनेट क्या करेंगे? उसके
- 2:43:41लिए क्वेरीज़ जनरेट करेंगे और वह कस्टम
- 2:43:43मेथड अवेलेबल कर देंगे हमारे लिए। लेकिन
- 2:43:45सिंटेक्स ऐसा नहीं आप कुछ भी लिखोगे। एक
- 2:43:47पर्टिकुलर फॉर्मेट है, सिंटेक्स है,
- 2:43:49कन्वेंशन से उसको फॉलो करना है आपको। मैं
- 2:43:51आपको बताता हूं। देखिए, फाइंड बाय यूजर
- 2:43:53आईडी। जैसे कि मैंने कहा, यह हमारे लिए एक
- 2:43:55कस्टम यूज़ केस था हमारी एप्लीकेशन के लिए।
- 2:43:57ठीक है? तो, हम रिट्रीव करना चाहते हैं
- 2:43:59एक्टिविटी की इनेशन बाय यूजर आईडी। यूजर
- 2:44:03आईडी नाम का फ़िल्टर लगाना चाहते हैं। तो,
- 2:44:05हमें क्या करना है? देखिए, फाइंड बाय
- 2:44:06लिखना है। फाइंड बाय का मतलब क्या?
- 2:44:08सेलेक्ट क्वेरी। करेक्ट। तो, यह JPI को
- 2:44:11ऑलरेडी पता है। जेपीएन को ऑलरेडी पता है।
- 2:44:13फाइंड बाय अगर यूजर ने लिख दिया, इसका
- 2:44:15मतलब है सेलेक्ट क्वेरी। डेटाबेस में आप
- 2:44:18सेलेक्ट क्वेरी लिखते हो। सेलेक्ट यानी कि
- 2:44:19आप डेटा रिट्रीव करना चाहते हो। फाइंड
- 2:44:21बाय। ठीक है? बाय जब वो दिखता है बाय। बाय
- 2:44:25का मतलब है वेयर क्लॉज़। तो इसका मतलब
- 2:44:27सेलेक्ट क्वेरी में आप फ़िल्टर लगाना चाह
- 2:44:29रहे हो। ठीक है? यह जेपीएस समझ जाता है।
- 2:44:32अच्छा बाय का मतलब है वेयर क्लॉज़। और आपने
- 2:44:34लिखा है यहां पर यूजर आईडी। ठीक है? तो
- 2:44:38यहां पर यू कैपिटल है और आई कैपिटल है। और
- 2:44:40यह देखिए वह उसको समझेगा कैसे? यह अलग-अलग
- 2:44:42वर्ड है। यह कैपिटलाइजेशन से समझेगा।
- 2:44:44फाइंड बाय बाय मतलब अच्छा वेयर क्लॉज़ यूजर
- 2:44:47आईडी मतलब ये फील्ड है कोई। वेयर क्लॉज़
- 2:44:49में ये फील्ड लगानी है मुझे। ठीक है? और
- 2:44:52ये फील्ड डेटाबेस में होगी और होनी है
- 2:44:55क्योंकि हमने जॉइन रिलेशनशिप कर रखा है
- 2:44:57एक्टिविटी के साथ। तो हमने बस इतना मेंशन
- 2:44:59कर दिया फाइंड बाय यूजर आईडी और हमने लिखा
- 2:45:02है एक्टिविटी रिपॉज़िटरी के अंदर। तो जीपीए
- 2:45:05हाइबनेट को समझ जाता है कि आप रिट्रीव
- 2:45:08करना चाहते हो एक्टिविटी को बाय यूजर आईडी
- 2:45:12यानी कि वेयर क्लॉज़ में यूजर आईडी लगना
- 2:45:14है। अब हबनेट क्या बोलेगा? हाइबनेट बोलेगा
- 2:45:16अच्छा तो फाइंड बाय यूजर आईडी करना है तो
- 2:45:18मुझे तो यूजर आईडी चाहिए तो वो पैरामीटर
- 2:45:20लिस्ट की ओर जाएगा कि यूजर आईडी दे रहा है
- 2:45:22क्या यूजर जी हां हम दे रहे हैं यूजर आईडी
- 2:45:25हमने लिखा भी है यहां पर यूजर आईडी तो
- 2:45:26यूजर आईडी एज एन इनपुट इसको मिलेगा ठीक है
- 2:45:29और फिर यहां पर देखिएगा जेपीए हाइबरनेट
- 2:45:31अच्छा यहां पर लिस्ट ऑफ एक्टिविटी रिटर्न
- 2:45:34करनी है हमें तो लिस्ट फॉर्म में रिटर्न
- 2:45:35करना है तो होगा क्या रन टाइम पर खुद ब
- 2:45:38खुद जेपीए हाइबरनेट की मदद से ऑटोमेटिकली
- 2:45:43इस मेथड की क्वेरी क्वरी जनरेट कर देगा
- 2:45:46बिहाइंड द सीन्स। देखिए अब तक हम क्या
- 2:45:48देखते आ रहे हैं? जो प्रीबिल्ट मेथड्स है
- 2:45:50उसकी ऑटोमेटिक क्वेरी जनरेट होती है
- 2:45:52बिहाइंड द सीन्स। करेक्ट? अगर आप
- 2:45:54एक्टिविटी को सेव करते हो यहां पर। ठीक
- 2:45:56है? यहां पर आ जाइए। यहां पर अगर आप
- 2:45:58एक्टिविटी को सेव करते हो। कहां पर है?
- 2:46:00एक्टिविटी को सेव करना। यहां पर एक्टिविटी
- 2:46:02को सेव कर रहे हो आप। सेव मेथड की मदद से।
- 2:46:04सेव मेथड हमने लिखा है। जी नहीं। हमें
- 2:46:07रेडीमेड मिला है। और इस पर हो करेंगे तो
- 2:46:09देखिए सेव्स अ गिवन एंटिटी। एनी गिवन
- 2:46:13एंटिटी। लेकिन एक्टिविटी को सेव करना है।
- 2:46:15यह उसे कैसे पता होगा? क्योंकि हमने
- 2:46:17एक्टिविटी रिपॉज़िटरी पर कॉल कर रखा है और
- 2:46:19एक्टिविटी रिपॉज़िटरी एक्टिविटी को मैप्ड
- 2:46:22है। करेक्ट? यहां पर आप देख पा रहे हो
- 2:46:24एक्टिविटी और प्राइमरी की की टाइप हमने
- 2:46:26पास की हुई है। ठीक है? तो हमने ये पास
- 2:46:29किया हुआ है तो उसको समझ जाता है। अच्छा
- 2:46:30सेव मतलब ये एक्टिविटी को करना चाहता है।
- 2:46:31और एक्टिविटी की ऑब्जेक्ट पास करते हो तो
- 2:46:33वो एक्सेप्ट करके इंसर्ट क्वरी चला देता
- 2:46:35है बिहाइंड द सिंस। हबनेट क्या करता है?
- 2:46:37बिहाइंड द सींस इंसर्ट क्वरी चलाता है। और
- 2:46:39अब हम क्या करना चाह रहे हैं? अब हम यहां
- 2:46:42पर बोल रहे हैं फाइंड बाय यूजर आईडी। तो
- 2:46:44वह यह कन्वेंशन देखेगा और फाइंड बाय यूजर
- 2:46:47आईडी जैसे मैंने जो लॉजिक एक्सप्लेन किया
- 2:46:49उसके हिसाब से खुद ब खुद इसकी सेलेक्ट
- 2:46:51क्वेरी जनरेट कर देगा जैसे हमने यहां पर
- 2:46:53लिखा और यह देखिए यह ऐसे ही सिंटेक्स में
- 2:46:56लिखना है आपको यह कन्वेंशन है फाइंड बाय
- 2:46:58का मतलब होता है सेलेक्ट ठीक है और बाय का
- 2:47:01मतलब तो मैंने बता दिया आपको फाइंड मतलब
- 2:47:03सेलेक्ट बाय का मतलब वेयर क्लॉज़ और यूजर
- 2:47:05आईडी हो गया फील्ड ठीक है और फील्ड जो है
- 2:47:09उसको आप एज अ पैरामीटर दे दो और रिटर्न
- 2:47:11टाइप आपको क्या चाहिए वो बता दो बाकी काम
- 2:47:13आपका हो जाएगा जाएगा। ठीक है? इसको मैं
- 2:47:15चला कर भी आपको दिखाता हूं। ठीक है? यहां
- 2:47:17पर आएंगे हम और यहां पर मैं क्या करूंगा?
- 2:47:21ये होने के बाद हमें देखिए अब यहां पर है
- 2:47:24ना
- 2:47:25एक्टिविटी रिस्पांस को रिटर्न करना है।
- 2:47:28ठीक है? एक्टिविटी रिस्पांस को अगर रिटर्न
- 2:47:30करना है तो हमें क्या करना होगा? हर
- 2:47:31एक्टिविटी की ऑब्जेक्ट को जो लिस्ट में है
- 2:47:34यहां पर उसको ट्रांसफॉर्म करना होगा
- 2:47:37एक्टिविटी रिस्पांस में और एक दूसरी लिस्ट
- 2:47:39बनाकर रिटर्न करना होगा। ठीक है? तो पहली
- 2:47:41स्टेप क्या है? हमें एक्टिविटी को
- 2:47:44ट्रांसफॉर्म करना है एक्टिविटी रिस्पांस
- 2:47:47में। एक्टिविटी रिस्पांस में। फिर उसको एक
- 2:47:51लिस्ट में कनेक्ट कलेक्ट करना है कलेक्ट
- 2:47:54इन लिस्ट एंड रिटर्न। ठीक है? तो यहां पर
- 2:47:57हम इस्तेमाल करेंगे स्ट्रीम्स का। तो मैं
- 2:47:59क्या करूंगा? यहां पर इसको हटा देता हूं।
- 2:48:00यहां पर लिखता हूं रिटर्न। सबसे पहले तो
- 2:48:02एक्टिविटी लिस्ट को स्ट्रीम में कन्वर्ट
- 2:48:04करेंगे। स्ट्रीम। ठीक है? उसके बाद
- 2:48:06नेक्स्ट लाइन पे आएंगे और हम मैप फंक्शन
- 2:48:08का यूज़ करेंगे। मैप मेथड और यहां पर
- 2:48:10कहेंगे
- 2:48:12दिस
- 2:48:14मैप रिस्पांस ठीक है मैप टू रिस्पांस तो
- 2:48:17हर
- 2:48:18यह लिस्ट में जो भी ऑब्जेक्ट है उस पे ये
- 2:48:22मेथड अप्लाई हो जाएगा और ये मेथड हमने
- 2:48:23लिखा हुआ है ऑलरेडी यहां पर मैप टू
- 2:48:25रिस्पांस तो एक्टिविटी का ऑब्जेक्ट लेता
- 2:48:27है ये और रिटर्न करता है एक्टिविटी
- 2:48:30रिस्पांस का ऑब्जेक्ट तो ये हर लिस्ट में
- 2:48:32हर ऑब्जेक्ट पर अप्लाई होगा और फिर हम
- 2:48:33क्या कहेंगे डॉट कलेक्ट कलेक्टर्स टू
- 2:48:38लिस्ट
- 2:48:40कलेक्टर्स र्स टू लिस्ट इस तरीके से। ठीक
- 2:48:45है?
- 2:48:46इतना हो गया। तो देखिए ये हमें कुछ कोई
- 2:48:48एरर नहीं आई यहां पर। ठीक है? कोई एरर आई
- 2:48:50है। कोई नहीं आई है। इतना हो चुका है। अब
- 2:48:53मैं क्या करूंगा? रन करने से पहले ना मैं
- 2:48:55आपको यहां पर एक प्रॉपर्टीज फाइल में आ
- 2:48:57जाऊंगा। और मैं ना एसक्यूएल क्वेरीज़ को
- 2:49:00इनेबल कर देता हूं। तो मुझे ना एसक्यूएल
- 2:49:01क्वरी मैं अह कंसोल पे प्रिंट करना चाहता
- 2:49:05हूं ताकि आपको दिखाई दे कि क्या क्वेरीज़
- 2:49:07जनरेट हो रही है हाइबनेट की मदद से। ठीक
- 2:49:09है? ठीक है? तो यहां पर लिखूंगा स्प्रिंग
- 2:49:10जीपीए डॉट शो एसक्यूएल = ट्रू और फिर
- 2:49:15स्प्रिंग जीपीए अ डॉट प्रॉपर्टीज डॉट
- 2:49:20हपरनेट डॉट फॉर्मेट अंडरs अ फॉर्मेट
- 2:49:25अंडरस्कोर एसक्यूएल इज़ इक्वल टू ट्रू और
- 2:49:28फिर हम लिख देंगे लॉगिन लेवल भी इनेबल कर
- 2:49:30देंगे लॉगिन लेवल डॉट ऑर्ork डॉट हपरनेट
- 2:49:35डॉट एसक्यूएल = दीपक ऐसे
- 2:49:39और बस इतना इनफ है मेरे हिसाब से और कुछ
- 2:49:42इशू तो होना नहीं चाहिए। इसको रन करके
- 2:49:44देखते हैं। ठीक है? क्या होता है। ठीक है?
- 2:49:46तो ये रन हो रहा है। कुछ दिक्कत तो वैसे
- 2:49:50आनी नहीं चाहिए। ठीक है? दिक्कत तो वैसे
- 2:49:52नहीं आएगी। रन हो रहा है। देखिए काफी सारी
- 2:49:54लॉगिन इनेबल हो चुकी है। और इसको मैं
- 2:49:56क्लियर कर देता हूं लॉग्स को। ठीक है?
- 2:49:58यहां पर आ जाता हूं। सबसे पहले तो यहां पर
- 2:50:03अ यूज़र्स की लिस्ट देख लेता हूं। यहां एक
- 2:50:05काम कर सकते हैं हम लोग। एक्टिविटी जो है
- 2:50:08कौन से यूजर के अगेंस्ट लॉक्ड है वो देख
- 2:50:11लेते हैं। ठीक है? ये एक्टिविटी है। ठीक
- 2:50:14है? तो यूजर आईडी कहां पर है? इसमें यूजर
- 2:50:17आईडी ये रही। ठीक है? तो देखिए यूजर आईडी
- 2:50:19सेव हो रहा है डेटाबेस में। इसको हमने
- 2:50:20कॉपी किया। यूजर आईडी सही रहना जरूरी है।
- 2:50:22यहां पर आ जाएंगे और यहां पर एक्स यूजर
- 2:50:25आईडी की बजाय हम यूजर आईडी को पेस्ट कर
- 2:50:27देंगे और इसको रिट्रीव करता हूं। अब तो
- 2:50:30देखिए रिट्रीव की तो हमने हमें देखिए ये
- 2:50:31एक्टिविटी आ गई। और यह एरे में आई है।
- 2:50:34देखिए यहां पर एरे है। करेक्ट? और यहां पर
- 2:50:37अगर आप आते हो तो देखिए यह क्वेरी जो है
- 2:50:39यह ऑटोमेटिक जनरेट हुई है। हमने लिखी है
- 2:50:41यह क्वेरी। जी नहीं। तो देखिए यहां पर
- 2:50:43सेलेक्ट क्वरी। ठीक है? सेलेक्ट क्वरी।
- 2:50:46फाइंड का मतलब क्या है? सेलेक्ट क्वरी।
- 2:50:48कौन से टेबल पे लगेगी? सेलेक्ट क्वरी?
- 2:50:50एक्टिविटी पे। एक्टिविटी पे क्यों लगेगी?
- 2:50:52क्योंकि एक्टिविटी रिपॉज़िटरी में हम लिख
- 2:50:54रहे हैं। करेक्ट? तो, यह हबनेट को पता है।
- 2:50:56एक्टिविटी रिपॉज़िटरी में लिख रहे हो। मतलब
- 2:50:57एक्टिविटी पे क्वरी चलानी है। और वेयर
- 2:51:00यूजर आईडी इज़ इक्वल टू देखिए, यूजर आईडी
- 2:51:02का फ़्टर करेक्ट? और बाय क्लॉज़ आ गया यहां
- 2:51:05पर। देख देख सकते हो आप। ठीक है? हमने
- 2:51:07लिखी है यह क्वेरी। जी नहीं, हमने नहीं
- 2:51:09लिखी है। यह ऑटोमेटिकली हबनेट ने जनरेट
- 2:51:11किया है। यहां पर आप देख पा रहे हो ओग डॉट
- 2:51:13हबनेट डॉटsक्यूएल से प्रिंट हो रहा है। ये
- 2:51:16हबनेट जनरेट कर रहा है और जेपीए एक हिसाब
- 2:51:19से कन्वेंशन है जिसकी मदद से ये सारी
- 2:51:22चीजें हो रही है। ठीक है? तो उम्मीद करता
- 2:51:25हूं यह क्लियर हो रहा है कि क्या हो रहा
- 2:51:27है, क्यों हो रहा है। अगर मैं सेव भी करूं
- 2:51:29यहां पर तो अभी इसको क्लियर कर देता हूं
- 2:51:31और यहां पर एक एक्टिविटी को ट्रैक करके
- 2:51:33मैं आपको बताता हूं। एक्टिविटी को सेव
- 2:51:34करता हूं। तो देखिए सेव किया मैंने
- 2:51:35एक्टिविटी को और यहां पर आप देखोगे तो
- 2:51:38देखिए सबसे पहले तो सेलेक्ट क्वरी चलिए
- 2:51:40सेलेक्ट क्वरी किस लिए चलिए यहां पर आप
- 2:51:42यूजर को रिट्रीव कर रहे हो और ये यूजर को
- 2:51:44रिट्रीव आप कहां कर रहे हो? सर्विस में कर
- 2:51:46रहे हो। तो अगर आप एक्टिविटी इंसर्ट करने
- 2:51:47जाते हो ना तो पहले हम यूजर को रिट्रीव कर
- 2:51:50रहे हैं। देखिए यहां पर तो वो सेलेक्ट
- 2:51:51क्वरी भी आपको दिखाई दे रही है यहां पर।
- 2:51:53करेक्ट? करेक्ट? ये पूरा दिखाई दे रहा है।
- 2:51:56और फिर यहां पर इंसर्ट भी चल रहा है।
- 2:51:57देखिए ये इंसर्ट। ठीक है? तो ये सब हमने
- 2:52:01नहीं लिखा है। यह बाय डिफॉल्ट जो इनबिल्ट
- 2:52:03मेथड्स थे उसकी मदद से यह जनरेट हो रहा है
- 2:52:06और यह वर्क कर रहा है। लेकिन हमने एक
- 2:52:09दूसरी चीज देखी आज जहां पर हम कस्टम
- 2:52:12मेथड्स को किस तरीके से डिफाइन और
- 2:52:14डिक्लेअर कर सकते हैं। ठीक है? तो उम्मीद
- 2:52:17करता हूं यह हेल्पफुल रहा आप लोगों के
- 2:52:18लिए। हमने काफी इंपॉर्टेंट चीजों को सीखा
- 2:52:21यहां पर। दो कांसेप्ट सीखे नए। मैं कहूंगा
- 2:52:23अगर आपको नहीं पता थे पहले से। तो दो नए
- 2:52:26कांसेप्ट्स आपको टच करने मिले। जो पहला
- 2:52:28कॉन्सप्ट था कि आप हेडर में किस तरीके से
- 2:52:30कोई वैल्यू पास कर सकते हो। क्यों पास
- 2:52:33करना है हेडर में? क्योंकि देखिए जनरली
- 2:52:35क्वेरी पैराटर्स जो होते हैं यूआरएल में
- 2:52:38वो होते हैं पेजिनेशन वगैरह के लिए।
- 2:52:40पेजिनेशन, सर्च रिलेटेड चीजें आपको पास
- 2:52:43करनी है और कुछ ऐसा यूजर आईडी वगैरह होती
- 2:52:45है। वो जनरली अह क्वेरी पैराटर्स में पास
- 2:52:48नहीं करते हैं। क्वेरी पैरामीटर्स को
- 2:52:49पेजिनेशन और ये सारी चीजों के लिए छोड़ा
- 2:52:51जाता है। तो अगर ऐसा सिनेरियो आपका है तो
- 2:52:53आप रिक्वेस्ट हेडर का इस्तेमाल कर सकते हो
- 2:52:55और वहां पर यूजर आईडी पास की है हमने और
- 2:52:58यूजर आईडी आई है। यूजर आईडी को इस्तेमाल
- 2:53:00करके हमने एक कस्टम मेथड भी इंप्लीमेंट
- 2:53:03किया है। ठीक है? जो है फाइंड बाय यूजर
- 2:53:06आईडी और फाइंड बाय यूजर आईडी की मदद से
- 2:53:08हमें जो यूजर की एक्टिविटीज है उसको भी
- 2:53:11रिट्रीव करने का मौका मिला है और हम उसे
- 2:53:14डिस्प्ले भी कर पा रहे हैं। उम्मीद करता
- 2:53:15हूं यह हेल्पफुल रहा।
- 2:53:23ठीक है दोस्तों? तो आगे बढ़ते हैं और अब
- 2:53:25बारी आ चुकी है कि हम रेकमेंडेशंस मॉड्यूल
- 2:53:28जो है उस पर काम करना स्टार्ट करें। ठीक
- 2:53:30है? तो देखिए रेकमेंडेशन मॉड्यूल्स में
- 2:53:33हमें कुछ ईपीआई की जरूरत पड़ेगी। ठीक है?
- 2:53:35तो वो ईपीआई क्या होने वाली है? कैसे होने
- 2:53:38वाली है? ये सारी चीजें हम डिस्कस कर लेते
- 2:53:39हैं। तो सबसे पहले तो एक पोस्ट मैपिंग
- 2:53:41होगी जिसके जरिए। तो मैं कहूंगा ईपीआई सश
- 2:53:44रेमेंडेशन सल जनरेट। ठीक है? तो ये एंड
- 2:53:49पॉइंट क्या करने वाली है? ये एंड पॉइंट
- 2:53:51जनरेट करने वाली है रेमेंडेशन हमारे लिए।
- 2:53:54ठीक है? तो यहां पर मैं लिख भी देता हूं।
- 2:53:56ठीक है? ऊपर लिखता हूं जनरेट रेकमेंडेशन।
- 2:54:00इस तरीके से। ठीक है? तो, यह एंड पॉइंट है
- 2:54:03जो जनरेट करेगी रेकमेंडेशन। ठीक है? और यह
- 2:54:05पोस्ट एंड पॉइंट है। ठीक है? यहां पर
- 2:54:07रिक्वेस्ट बॉडी में हम जो रेकमेंडेशन की
- 2:54:10सारी की सारी डिटेल्स है उसको हम कैप्चर
- 2:54:12कर लेंगे। ठीक है? ये हो गई एक एंड पॉइंट।
- 2:54:15अब दूसरे एंड पॉइंट के बारे में बात करते
- 2:54:16हैं जो कि है एक गेट रिक्वेस्ट। और जो
- 2:54:20हमें तो जो सारी एंड पॉइंट में ये जो
- 2:54:23स्टार्टिंग का पार्ट है वो वैसे ही रहने
- 2:54:25वाला है। ठीक है? तो इसको पेस्ट कर देता
- 2:54:27हूं और फिर यहां पर मैं कहूंगा स्लैश
- 2:54:29यूजर। तो ये एंड पॉइंट क्या करेगी? हमें
- 2:54:31एक पर्टिकुलर यूजर के अगेंस्ट जो
- 2:54:34रेमेंडेशन सेव्ड है उसको रिट्रीव करने में
- 2:54:36मदद करेगी। तो अब यूजर के अगेंस्ट
- 2:54:39रेकमेंडेशन रिट्रीव करना है तो हमें स्लैश
- 2:54:41यूजर लिखना जरूरी है और फिर यहां पर यूजर
- 2:54:44आईडी भी पास करना जरूरी है। तो यहां पर
- 2:54:46यूजर आईडी यह रेकमेंड यह एपीआई लेगी और यह
- 2:54:51जो एंड पॉइंट है वह हमें हेल्प करेगी
- 2:54:54रिट्रीव करने में।
- 2:54:55यूजर रेमेंडेशन। ठीक है? गेट यूजर
- 2:54:58रेमेंडेशन।
- 2:55:00ठीक है? ऐसा कुछ। ठीक है? फिर तीसरी एपीआई
- 2:55:04हम बनाएंगे। ठीक है? तीसरी एपीआई हम
- 2:55:06बनाएंगे एक पर्टिकुलर एक्टिविटी के
- 2:55:08अगेंस्ट। अगर कोई रेमेंडेशन को रिट्रीव
- 2:55:10करना है तो उसके लिए तीसरी एंड पॉइंट
- 2:55:11होगी। और मैं क्या करूंगा? ये जो सिंटेक्स
- 2:55:13है उसको ऐसे ही पिछली एपीआई है उसको ऐसे
- 2:55:16ही कॉपी कर लूंगा। ठीक है? और यहां पर
- 2:55:19यूजर आईडी के अगेन यूजर आईडी की जगह हम
- 2:55:22लिखेंगे एक्टिविटी। और यहां पर यूजर आईडी
- 2:55:25के अगेंस्ट एक्टिविटी आईडी। ठीक है? और
- 2:55:27यहां पर गेट एक्टिविटी
- 2:55:30रेकमेंडेशन। ठीक है? तो फिलहाल ये तीन एंड
- 2:55:33पॉइंट ही है। एक पोस्ट है, दो गेट है। ठीक
- 2:55:36है? और पोस्ट एंड पॉइंट से हम जो
- 2:55:39रेकमेंडेशन है उसको जनरेट कर सकते हैं।
- 2:55:41जनरेट का मतलब है सेव करना। हम सेव कर
- 2:55:43देंगे। ठीक है? और दूसरा दूसरी एंड पॉइंट
- 2:55:46जो है उससे हम यूजर रेकमेंडेशन जनरेट कर
- 2:55:48सॉरी जनरेट नहीं कर सकते। रिट्रीव करेंगे।
- 2:55:51कि एक यूजर के अगेंस्ट जो भी रेकमेंडेशन
- 2:55:53जनरेटेड है ऑलरेडी उसको हम रिट्रीव
- 2:55:55करेंगे। और तीसरी जो एंड पॉइंट है उसके
- 2:55:57अगेंस्ट हम एक्टिविटी के अगेंस्ट यानी कि
- 2:56:00एक एक्टिविटी के अगेंस्ट जो भी रेकमेंडेशन
- 2:56:02है अगर वो हमें देखनी है तो वो हम रिट्रीव
- 2:56:05कर सकते हैं। ठीक है? तो इतना होने वाला
- 2:56:07है ये मॉड्यूल और इस मॉड्यूल पे अब हमें
- 2:56:10काम करना है। तो मैं क्या करता हूं? सबसे
- 2:56:12पहले मैं आ जाता हूं यहां पर इंटेलिजें
- 2:56:14पर। ठीक है? ये है हमारा इंटेलिजें और
- 2:56:17इंटेलिजें में मैं सब कुछ बंद कर देता हूं
- 2:56:19यहां पर। ठीक है? कुछ भी ओपन नहीं चाहिए
- 2:56:21और यहां पर सब कुछ कोलैप्स भी कर दूंगा और
- 2:56:23सबसे पहले आ जाऊंगा मैं कंट्रोलर पर।
- 2:56:25कंट्रोलर में मैं सबसे पहला कंट्रोलर कैसे
- 2:56:27बनाऊंगा? मैं बनाऊंगा एक रेकमेंडेशंस
- 2:56:31कंट्रोलर। ठीक है? अ रेमेंडेशंस नहीं
- 2:56:34कहूंगा रेकमेंडेशन कंट्रोलर। ठीक है? और
- 2:56:38यहां पर रेकमेंडेशन कंट्रोलर लिख दिया। और
- 2:56:41फिर यहां पर सबसे पहले रेस्ट कंट्रोलर ऐड
- 2:56:44कर दूंगा। ठीक है?
- 2:56:45रेस्ट कंट्रोलर का मतलब यह है कि यह
- 2:56:48एक रेस्ट एपीआई के लिए कंट्रोलर डिफाइंड
- 2:56:51है। ठीक है? और दूसरी चीज मैं यहां पर
- 2:56:52करूंगा। तो यहां पर आप देख सकते हो सारी
- 2:56:55एंड पॉइंट स्लैश एपीआई रेकमेंडेशन स्लैश
- 2:56:57एपीआई रेकमेंडेशन स्लैश एपीआई रेकमेंडेशन
- 2:56:59से स्टार्ट हो रही है। तो ये पार्ट कॉमन
- 2:57:01है। ठीक है? तो ये पार्ट को ले लेना है
- 2:57:03हमें और यहां पर आ जाना है। ठीक है? और
- 2:57:06यहां पर रिक्वेस्ट मैपिंग लिखूंगा मैं और
- 2:57:08ये पूरा कंट्रोलर को मैं इस एंड पॉइंट से
- 2:57:10मैप कर दूंगा। ठीक है? देखिए यहां पर कॉपी
- 2:57:12पेस्ट करने में थोड़े अननेसेसरी न्यू लाइन
- 2:57:14कररेक्टर्स भी आ रहे हैं क्योंकि मैं वहां
- 2:57:16दूसरे एडिटर से कॉपी पेस्ट कर रहा हूं।
- 2:57:18लेकिन आपको वो न्यू लाइन कररेक्टर्स सब
- 2:57:19कुछ हटाना है और फिर इसको मेंशन करना है
- 2:57:22इस तरीके से। तो ये हो चुका है। ठीक है?
- 2:57:24अब हम क्या करेंगे? हम सबसे पहले पोस्ट
- 2:57:27मैपिंग बनाएंगे यहां पर। और पोस्ट मैपिंग
- 2:57:28में अ जो स्टार्टिंग का पार्ट है एंड
- 2:57:30पॉइंट में वो तो हमने मेंशन किया हुआ है।
- 2:57:32लेकिन जो नेक्स्ट पार्ट है वो है जनरेट
- 2:57:33का। वो हम मेंशन कर देंगे। ठीक है? और
- 2:57:36यहां पर मैं लिख दूंगा पब्लिक रिस्पांस
- 2:57:39एंटिटी और यहां पर लिख दूंगा रेमेंडेशन।
- 2:57:42तो यह रेकमेंडेशन रिटर्न होगा यहां पर और
- 2:57:44यहां पर कहूंगा जनरेट
- 2:57:46रेमेंडेशन
- 2:57:50रेमेंडेशन
- 2:57:51और फिर यहां पर हम रिटर्न करेंगे एक
- 2:57:56रेकमेंडेशन। ठीक है? तो अब रिटर्न तो करना
- 2:57:59है। ठीक है? लेकिन रिटर्न करने के लिए
- 2:58:01हमें रेमेंडेशन बनाना भी पड़ेगा। ठीक है?
- 2:58:04तो रेकमेंडेशन का ऑब्जेक्ट बना लेते हैं।
- 2:58:06मैं डायरेक्टली यहां पर मॉडल को इस्तेमाल
- 2:58:07कर रहा हूं। आप चाहो तो एक सेपरेट डीटीओ
- 2:58:09भी बना सकते हो। ठीक है? और यहां पर
- 2:58:11रेमेंडेशन को जनरेट करेंगे और फिर
- 2:58:13रेमेंडेशन सर्विस। अब ये रेकमेंडेशन
- 2:58:16सर्विस एग्ज़िस्ट नहीं करती है। करती है
- 2:58:18एक्सिस्ट? नहीं करती है। तो जनरेट
- 2:58:20रेमेंडेशन। तो ये एग्ज़िस्ट नहीं करती है।
- 2:58:22लेकिन ठीक है। हमें थोड़े रेड मार्क्स
- 2:58:23देखने मिलेंगे। ठीक है? अह रिक्वेस्ट यहां
- 2:58:26पर रिक्वेस्ट को एक्सेप्ट करेंगे।
- 2:58:28रिक्वेस्ट क्या है? उस पे भी मैं बात करता
- 2:58:29हूं। ठीक है? और रिटर्न करेंगे हम
- 2:58:31रिस्पांस एंटिटी डॉट और यहां पर लिख दूंगा
- 2:58:35रेमेंडेशन। ठीक है? तो इतनी इतना इतनी
- 2:58:37चीजें हमने लिख दी है। ठीक है? ये हो गया।
- 2:58:41अब यहां पर आ जाते हैं। ठीक है? अब यहां
- 2:58:44पे हमें अ कुछ इनपुट चाहिए होगा। और वो
- 2:58:47इनपुट क्या होगा? उसके लिए हम एक अलग
- 2:58:49क्लास डिफाइन करेंगे जिसे हम कहेंगे
- 2:58:51रेकमेंडेशन रिक्वेस्ट। ठीक है? तो यहां पर
- 2:58:54मैं लिख दूंगा रेमेंडेशन
- 2:58:57रिक्वेस्ट। ठीक है? और फिर यहां पर
- 2:58:59रिक्वेस्ट लिख दूंगा। ठीक है? और यह हमें
- 2:59:01कैसे आएगा? अच्छा, यहां पर सेमी कॉललन
- 2:59:03नहीं होगा। इसके लिए पूरा रेड हो गया।
- 2:59:04यहां पर यह आएगा रिक्वेस्ट बॉडी में। ठीक
- 2:59:07है? यहां पर रिक्वेस्ट बॉडी पे लिख दूंगा।
- 2:59:09ठीक है? काफी सारे रेडम मार्क्स हैं।
- 2:59:11एक-एक करके इन रेड मार्क्स को रिज़ॉल्व
- 2:59:13करते हैं। तो, सबसे पहले तो रेकमेंडेशन
- 2:59:15रिक्वेस्ट। तो, इसको हम क्रिएट कर देंगे।
- 2:59:18अच्छा, इसको ओवर करते हैं। और यह यहां पर
- 2:59:21बोल रहा है, क्रिएट अ टाइप पैरामीटर। टाइप
- 2:59:23पैरामीटर नहीं करना है। यहां पर हमें अ
- 2:59:26क्रिएट करना है। अच्छा सॉरी ये हट गया।
- 2:59:28हमें क्रिएट करना है मोर एक्शंस। हमें
- 2:59:31क्रिएट करना है क्रिएट अ क्लास। ठीक है?
- 2:59:34और ये क्लास होगी डीटीओ पैकेज में। ठीक
- 2:59:37है? डीटीओ। ओके बोलूंगा मैं। ठीक है? तो
- 2:59:40रेकमेंडेशन रिक्वेस्ट का अब क्या
- 2:59:43स्ट्रक्चर है? उसे हम डिफाइन करेंगे। ठीक
- 2:59:44है? तो यहां पर मैं सबसे पहले तो डेटा ऐड
- 2:59:47कर दूंगा। उसके बाद में नो आस्क्
- 2:59:49कंस्ट्रक्टर और फिर उसके बाद में ऑल आस्क्
- 2:59:52कंस्ट्रक्टर इस तरीके से। ठीक है? और फिर
- 2:59:55हमें स्ट्रिंग यूजर आईडी लिखना है यहां
- 2:59:59पर। ठीक है? तो सबसे पहले तो यूजर आईडी हम
- 3:00:01एक्सेप्ट करेंगे यहां पर रेकमेंडेशन
- 3:00:02रिक्वेस्ट में। फिर हम अह ऐड कर सकते हैं
- 3:00:05प्राइवेट स्ट्रिंग। और हमें एक्टिविटी
- 3:00:07आईडी लिखनी होगी। यूजर आईडी इसीलिए कि किस
- 3:00:11यूजर के अगेंस्ट का रेमेंडेशन है और
- 3:00:13एक्टिविटी आईडी इसीलिए कि किस एक्टिविटी
- 3:00:15के अगेंस्ट रेमेंडेशन स्टोर हो रहा है।
- 3:00:17ठीक है? ये दोनों चीजें आ गई। उसके बाद
- 3:00:20में अगर आप रेकमेंडेशन को देखते हो एक
- 3:00:23रेमेंडेशन के स्ट्रक्चर को। ठीक है? ये है
- 3:00:27रेकमेंडेशन का स्ट्रक्चर। तो यहां पर
- 3:00:28देखिए आईडी वगैरह तो सब ठीक है। यूजर के
- 3:00:30लिए हमने यूजर आईडी ऐड कर दी है।
- 3:00:31एक्टिविटी के लिए एक्टिविटी आईडी ऐड कर दी
- 3:00:33है। हमें यहां पर यह सारी चीजें चाहिए
- 3:00:36यहां पर। ठीक है? तो यह यहां पर टाइप
- 3:00:39रेकमेंडेशन
- 3:00:41और फिर इंप्रूवमेंट्स सजेशंस ठीक है और
- 3:00:45सेफ्टी टिप्स। तो मैं सिर्फ ये तीन चीजों
- 3:00:47को ही लूंगा। ठीक है? इन तीनों को यहां पर
- 3:00:51इंप्रूवमेंट सजेशंस और सेफ्टी टिप्स। अब
- 3:00:53बाकी की चीजों को भी ले सकते हो। ठीक है?
- 3:00:54लेकिन मैं अभी फिलहाल के लिए सिंपल रख रहा
- 3:00:56हूं चीजें। ठीक है? अ ये मैंने कर दिया
- 3:00:59है। ये मैंने कर दिया है। और यहां पर इतना
- 3:01:02मैंने कर दिया है। ठीक है? और यहां से
- 3:01:06मुझको अनयूज्ड इंपोर्ट्स जो है उसको हटाना
- 3:01:09है इस तरीके से। ठीक है? तो देखिए यह हो
- 3:01:11गया मेरा रेकमेंडेशन रिक्वेस्ट। ठीक है?
- 3:01:14रेमेंडेशन रिक्वेस्ट तैयार है। अब मुझे
- 3:01:16सर्विस भी बनानी है। तो मैं क्या करूंगा?
- 3:01:18यहां पर राइट क्लिक करूंगा और यहां पर
- 3:01:20रेमेंडेशन
- 3:01:23सर्विस ऐसे बनाऊंगा। ठीक है? और इसको मैं
- 3:01:27मार्क कर दूंगा @ सर्विस ऐसे। ठीक है? और
- 3:01:32यहां पर अगर मैं आता हूं तो वह देखिए एक
- 3:01:33स्प्रिंग मैनेज कंपोनेंट है। ठीक है?
- 3:01:35रेमेंडेशन सर्विस। तो यहां पर मैं लिख
- 3:01:38दूंगा प्राइवेट फाइनल रेकमेंडेशन
- 3:01:42सर्विस और फिर रेकमेंडेशन सर्विस। अब यहां
- 3:01:45पर एरर आएगी कि ये इनिशियलाइज़ नहीं है।
- 3:01:47ठीक है? यहां पर एक कंस्ट्रक्टर ऐड करने
- 3:01:49बोलेगा। लेकिन मैं कंस्ट्रक्टर ऐड नहीं
- 3:01:50करूंगा। मैं यहां पर लिख दूंगा रिक्वायर्ड
- 3:01:52आस्क् कंस्ट्रक्टर। तो ये ऑटोमेटिकली लॉबक
- 3:01:55जनरेट कर देगा इसके लिए कंस्ट्रक्टर और
- 3:01:57हमें कोई टेंशन लेने की जरूरत नहीं है
- 3:01:59वैसे। ठीक है? तो इतना हो गया। अब ये सारी
- 3:02:02चीजें तो हो चुकी है। ठीक है? तो अब हमें
- 3:02:06इस मेथड के ओर ध्यान देना होगा। तो देखिए
- 3:02:09यहां पर एक मेथड है जनरेट रेकमेंडेशन जहां
- 3:02:11पर एक रेड मार्क आ रहा है। तो ये सर्विस
- 3:02:13तो हमने बना दिया है लेकिन इसमें ये जनरेट
- 3:02:15रेकमेंडेशन नाम का मेथड नहीं है। तो मैं
- 3:02:17ये क्रिएट करवा दूंगा यहां पर। ठीक है? ये
- 3:02:18क्रिएट हो गया। यहां पर एरर आ रही है उसको
- 3:02:20डिफाइन करना है। लेकिन फिलहाल यहां पर आप
- 3:02:22देखोगे तो ये जो स्ट्रक्चर है हमारी जो अ
- 3:02:28एंड पॉइंट का स्ट्रक्चर है कंट्रोलर में
- 3:02:30वो डिफाइंड है। ठीक है? इसका मतलब अ ठीक
- 3:02:33है इतना। ठीक है? अब हमें सर्विस लेयर पे
- 3:02:36जाना है और इस एपीआई को इस एपीआई का जो
- 3:02:39बिज़नेस लॉजिक है उसको हमें डिफाइन करना है
- 3:02:41और मेक श्योर करना है कि सारी चीजें सही
- 3:02:45तरीके से सेफ हो रिकमेंडेशन टेबल में
- 3:02:47रिकमेंडेशन मॉड्यूल की मदद से। तो मैं
- 3:02:49यहां पर जनरेट रेकमेंडेशन में आ जाता हूं।
- 3:02:51ठीक है? यहां पर अब देखिए यहां पर कुछ
- 3:02:53लिखा हुआ तो नहीं है वैसे। तो यहां पर
- 3:02:55हमें क्या करना है? रेमेंडेशन को सेव करना
- 3:02:58है डेटाबेस में। तो उसे हमारे हमें अ उसके
- 3:03:01लिए एक रेकमेंडेशन रिपॉज़िटरी भी लगेगी।
- 3:03:05ठीक है? रिपॉज़िटरी अभी फिलहाल एक्सिस्ट
- 3:03:06नहीं करती है। लेकिन मैं उसे अह बना दूंगा
- 3:03:10अब। ठीक है? लेकिन अभी फिलहाल हम क्या
- 3:03:11करेंगे?
- 3:03:12यहां पर या रेकमेंडेशन रिपॉज़िटरी बना ही
- 3:03:15देते हैं। एक काम करते हैं। बाद में बनाने
- 3:03:16से बेटर है अभी बना लेते हैं। तो सबसे
- 3:03:18पहले जावा क्लास इंटरफेस सेलेक्ट करूंगा
- 3:03:20और फिर रेकमेंडेशन रिपोज़िटरी इस तरीके से
- 3:03:24बना दूंगा मैं इसको और यहां पर एक्सटेंड
- 3:03:26कर दूंगा इसको जेपीए रिपॉज़िटरी।
- 3:03:31ठीक है? ऐसे और यहां पर रेकमेंडेशन लिख
- 3:03:34दूंगा और फिर यहां पर स्ट्रिंग लिख दूंगा।
- 3:03:36ठीक है? ऐसे। तो इतना होने के बाद अब मुझे
- 3:03:39क्या करना चाहिए? यहां पर आ जाना चाहिए
- 3:03:41ऊपर और यहां पर मुझे डिफाइन करना चाहिए
- 3:03:44रिपोज़िटरी।
- 3:03:45ठीक है? तो ताकि यह बन जाए स्प्रिंग
- 3:03:48मैनेज्ड कंपोनेंट। ठीक है? तो इतना हो
- 3:03:50चुका है और यहां पर अब सर्विस में आएंगे
- 3:03:54हम। ठीक है? सर्विस में थे हम। अब सर्विस
- 3:03:56में देखिए सबसे पहले हम क्या हमें क्या
- 3:03:58करना चाहिए? देखिए रेकमेंडेशन रिक्वेस्ट
- 3:03:59को एक बार देखते हैं। ठीक है? हम एक्सेप्ट
- 3:04:02कर रहे हैं यूजर आईडी। हम एक्सेप्ट कर रहे
- 3:04:05हैं एक्टिविटी आईडी। ठीक है? यूजर आईडी
- 3:04:07एक्टिविटी आईडी दोनों एक्सेप्ट कर रहे
- 3:04:09हैं। यूजर आईडी यह यूजर टेबल के लिए
- 3:04:12रेफरेंस है। करेक्ट? तो, हमें क्या करना
- 3:04:15चाहिए? देखिए, सेव करते वक्त अगर आप
- 3:04:16रेकमेंडेशन को डेटाबेस में सेव करते हो,
- 3:04:19तो यहां पर आपको यूजर का कंप्लीट ऑब्जेक्ट
- 3:04:22चाहिए और एक्टिविटी का भी कंप्लीट
- 3:04:24ऑब्जेक्ट चाहिए। तो इसका मतलब आपको यूजर
- 3:04:27और एक्टिविटी टेबल में क्वेरी कर कर पूरा
- 3:04:30ऑब्जेक्ट रिट्रीव करना होगा यूजिंग द
- 3:04:32आईडी। आईडी का इस्तेमाल करके जो आईडी आपको
- 3:04:35रिक्वेस्ट में मिल रही है। करेक्ट? यहां
- 3:04:36पर रिक्वेस्ट में मिल रही है। तो इन दोनों
- 3:04:38आईडी का इस्तेमाल करके आपको पूरा का पूरा
- 3:04:40ऑब्जेक्ट रिट्रीव करना होगा यूजर का और
- 3:04:42एक्टिविटी का और इंप्रूवमेंट्स, सजेशंस और
- 3:04:45सेफ्टी ये सारी आपको रिक्वेस्ट में आएगी।
- 3:04:47ठीक है? तो वो तो आपको करना ही है। तो
- 3:04:49यहां पर मैं आ जाता हूं सर्विस में और
- 3:04:53यहां पर मैं क्या करूंगा? सबसे पहले यूजर
- 3:04:56पर काम करूंगा। तो यूजर का ऑब्जेक्ट बना
- 3:04:58लूंगा यहां पर। यूजर यूजर इज़ इक्वल टू
- 3:05:01यूजर रिपॉज़िटरी। ठीक है? यूजर रिपॉज़िटरी
- 3:05:03का मुझे इंस्टेंस लगेगा यहां पर। तो मैं
- 3:05:05क्या करूंगा? प्राइवेट फाइनल यूजर
- 3:05:08रेपोजिटरी
- 3:05:09और फिर यूजर रिपॉजिटरी मेंशन करूंगा और
- 3:05:12फिर प्राइवेट फाइनल एक्टिविटी
- 3:05:16रिपॉजिटरी
- 3:05:18ठीक है और एक्टिविटी रिपॉज़िटरी ऐसे मेंशन
- 3:05:21करूंगा और फिर यहां पे रिक्वायर्ड आस्क
- 3:05:24कंस्ट्रक्टर लिख दूंगा क्योंकि मुझे एरर आ
- 3:05:26रहा था और इसको इनिशियलाइज़ करने के लिए
- 3:05:28स्प्रिंग को एक कंस्ट्रक्टर लगेगा। तो
- 3:05:30मैंने कंस्ट्रक्टर लॉबक की मदद से जनरेट
- 3:05:32कर दिया है। ठीक है? तो ये एरर तो चली गई।
- 3:05:34अब यहां पर आ जाते हैं यूजर। ठीक है? यहां
- 3:05:37पर मैं कहूंगा यूजर डॉट अह अच्छा यूजर
- 3:05:41नहीं होगा। यह यूजर रिपॉज़िटरी होगा। यूजर
- 3:05:43रिपॉज़िटरी डॉट फाइंड बाय आईडी करना है
- 3:05:46हमें। ठीक है? और फिर रिक्वेस्ट में से
- 3:05:48गेट यूजर आईडी ये पास करना है ऐसे। ठीक
- 3:05:51है? इतना हो जाएगा। अब इसमें प्रॉब्लम यह
- 3:05:53है कि यह रिटर्न करता है ऑप्शनल। फाइंड
- 3:05:55बाय आईडी रिटर्न करेगा ऑप्शनल। देखिए आप
- 3:05:58यहां पर तो मुझे क्या करना है? यहां पर
- 3:05:59नेक्स्ट लाइन पर जाना है और फिर यहां पर
- 3:06:01करना है और एल्स थ्रो। और फिर यहां पर
- 3:06:06करना है न्यू रन टाइम एक्सेप्शन और फिर
- 3:06:09यहां पर लिखना है यूजर नॉट फाउंड इसे ठीक
- 3:06:13है और फिर यहां पर रिक्वेस्ट डॉट गेट
- 3:06:19अ रिक्वेस्ट डॉट गेट यूजर आईडी लिखना है
- 3:06:21यहां पर ठीक है ऐसे तो इतना हो चुका है तो
- 3:06:25हमें यूजर का जो ऑब्जेक्ट है वो तो
- 3:06:28रिट्रीव हो गया अब सेम चीज़ हमें करनी है
- 3:06:30एक्टिविटी के लिए तो एक्टिविटी के लिए मैं
- 3:06:31सेम कॉपी पेस्ट कर दूंगा और यहां यहां पर
- 3:06:33यूजर की बजाय एक्टिविटी लिखूंगा। सॉरी
- 3:06:36एक्टिविटी ऐसे और यहां पर यूजर की बजाय
- 3:06:40एक्टिविटी होगा यह। और यूजर रिपॉज़िटरी के
- 3:06:42बजाय एक्टिविटी रिपॉज़िटरी होगा। फाइंड बाय
- 3:06:45आईडी रिक्वेस्ट डॉट गेट एक्टिविटी बाय
- 3:06:48आईडी सॉरी गेट एक्टिविटी आईडी और यहां पर
- 3:06:50और एल्स थ्रो रन टाइम एक्सेप्शन एक्टिविटी
- 3:06:54नॉट फाउंड और यहां पर रिक्वेस्ट डॉट गेट
- 3:06:58यूजर आईडी की बजाय गेट एक्टिविटी आईडी।
- 3:07:00ऐसे। ठीक है? तो अब हमारे पास दोनों
- 3:07:03ऑब्जेक्ट है यूजर की और एक्टिविटी की। ये
- 3:07:05दोनों ऑब्जेक्ट हैं। ठीक है? अब मुझे क्या
- 3:07:07करना है? रेकमेंडेशन की जो ऑब्जेक्ट है
- 3:07:10उसको कंस्ट्रक्ट करना है। तो देखिए अब
- 3:07:12कंस्ट्रक्ट करने के लिए मैं कंस्ट्रक्टर
- 3:07:15का इस्तेमाल कर सकता हूं। यहां पर
- 3:07:16कंस्ट्रक्टर ऑलरेडी लगे हुए हैं। या तो
- 3:07:17फिर मैं बिल्डर पैटर्न का इस्तेमाल कर
- 3:07:19सकता हूं। तो मैं बिल्डर का इस्तेमाल
- 3:07:20करूंगा। मैं यहां पर लिख दूंगा बिल्डर।
- 3:07:22ठीक है? बिल्डर बेटर है और मैं बता चुका
- 3:07:25हूं क्यों बेटर है, क्या बेटर है। ठीक है?
- 3:07:28तो यहां पर रेकमेंडेशन रेकमेंडेशन इज़
- 3:07:31इक्वल टू रेकमेंडेशन डॉट बिल्डर डॉट
- 3:07:35बिल्ड।
- 3:07:37ठीक है? और यहां पर मैं नेक्स्ट लाइन पर आ
- 3:07:39जाऊंगा और यहां पर कहूंगा डॉट यूजर और
- 3:07:42यहां पर पास कर दूंगा यूजर इस तरीके से।
- 3:07:45ठीक है? और फिर मैं ऐड करूंगा एक्टिविटी।
- 3:07:49और एक्टिविटी में पास कर दूंगा एक्टिविटी।
- 3:07:52और फिर लिख दूंगा यहां पर इंप्रूवमेंट्स।
- 3:07:56और फिर ऐड कर दूंगा रिक्वेस्ट डॉट गेट
- 3:07:59इंप्रूवमेंट्स
- 3:08:00और फिर ऐड कर दूंगा यहां पर सजेशंस और फिर
- 3:08:03ऐड कर दूंगा रिक्वेस्ट डॉट गेट सजेशंस
- 3:08:07ठीक है और फिर यहां पर और चीजें भी है
- 3:08:11रेमेंडेशन नहीं सेफ्टी है सेफ्टी तो फिर
- 3:08:14रिक्वेस्ट डॉट गेट सेफ्टी ठीक है तो ये
- 3:08:16सारी चीजें रिक्वेस्ट में से आ रही है। सो
- 3:08:18जो भी रिक्वेस्ट में से आ रहा है उसको मैं
- 3:08:19रिट्रीव करके यहां पे सेट कर रहा हूं। बस
- 3:08:21और कुछ नहीं कर रहा हूं। और यह ऑब्जेक्ट
- 3:08:23बन जाएगा रेकमेंडेशन का। अब मुझे क्या
- 3:08:25करना है? यहां पर मुझे रेकमेंडेशन का
- 3:08:28सेव्ड ऑब्जेक्ट लेना है। तो सेव्ड
- 3:08:30रेकमेंडेशन इज़ इक्वल टू रेकमेंडेशन
- 3:08:33रिपॉज़िटरी। अच्छा रेमेंडेशन रिपॉज़िटरी ही
- 3:08:36क्रिएट नहीं की है हमने। तो यहां पर इसको
- 3:08:37डुप्लीकेट कर लेता हूं। और यहां पर
- 3:08:39रेकमेंडेशन रिपॉज़िटरी। ठीक है? और यहां पर
- 3:08:42रेमेंडेशन रिपॉज़िटरी ऐसे। ठीक है? और अब
- 3:08:46यहां पर रेकमेंडेशन रिपॉज़िटरी
- 3:08:48डॉट सेव और फिर यहां पर रिकमेंडेशन ऐसे
- 3:08:53ठीक है ये हमने लिख दिया और अब हमें
- 3:08:57रिटर्न करना है सेव्ड रिकमेंडेशन ऐसे ठीक
- 3:09:00है तो इतना हो गया है यहां पर ठीक है
- 3:09:05और यहां पर ये रिडेंडेंट है तो इसको
- 3:09:07इनलाइन भी कर सकते हो इस तरीके से ठीक है
- 3:09:09ये इनलाइन हो चुका है ठीक है इसमें कोई
- 3:09:12दिक्कत नहीं है अ इतना हो चुका है अब हमें
- 3:09:15हमें क्या करना है? इसको रन करके एक बार
- 3:09:17देख लेते हैं। ठीक है? इसको रन कर लेता
- 3:09:18हूं। देखते हैं रन करने पर क्या आउटपुट
- 3:09:22मिलता है हमें। ठीक है? तो ये रन तो हो
- 3:09:24रहा है। अब रन तो सक्सेसफुली हो चुका है।
- 3:09:26वैसे कोई एरर तो आई नहीं। तो अब हम यहां
- 3:09:28पर आ जाएंगे। ठीक है? और यहां पर मैं क्या
- 3:09:31करूंगा? ये जो अ एंड पॉइंट है कोई भी एंड
- 3:09:35पॉइंट का आप एक डुप्लीकेट बना लीजिए। ठीक
- 3:09:37है? इस एंड पॉइंट का डुप्लीकेट मैं बना
- 3:09:38लेता हूं। और यहां पर लिखूंगा सेव या
- 3:09:41जनरेट रिकमेंडेशन।
- 3:09:46रेमेंडेशन। ठीक है? जनरेट रेकमेंडेशन लिख
- 3:09:48दिया है मैंने। और यहां पर जो एंड पॉइंट
- 3:09:50था वह था एपीआई रेकमेंडेशन सैश जनरेट ऐसे।
- 3:09:56ठीक है? पोस्ट रिक्वेस्ट ही है। इस बात का
- 3:09:58आपको ध्यान रखना है। हेडर्स पे देखना है।
- 3:10:00हेडर्स में कुछ नहीं है। ठीक है? बॉडी पर
- 3:10:02आ जाते हैं। ठीक है? क्योंकि सारे का सारा
- 3:10:03डेटा जो है यहां पर बॉडी में ही एक्सेप्ट
- 3:10:05हो रहा है। ठीक है? तो देखिए यहां पर टाइप
- 3:10:08की जरूरत है नहीं। टाइप अगर आपको चाहिए तो
- 3:10:10आप लिख सकते हो। लेकिन मैं टाइप लिख नहीं
- 3:10:12रहा। यूजर आईडी है यहां पर। ठीक है?
- 3:10:14ड्यूरेशन, कैलोरीज बर्न और स्टार्ट टाइम।
- 3:10:17ठीक है? तो, यह सारी चीजों की तो जरूरत है
- 3:10:20नहीं मुझे। एक मिनट, मैं ना कंट्रोल सेट
- 3:10:22कर लेता हूं। यहां पर ये टाइप था। अच्छा,
- 3:10:24ये टाइप को हटा देते हैं और यहां पर लिखते
- 3:10:26हैं एक्टिविटी आईडी। ठीक है? क्योंकि हमें
- 3:10:29एक्टिविटी आईडी की जरूरत पड़ेगी। तो इसको
- 3:10:31भी फिलहाल एम्प्टी रखता हूं। और बाकी सारी
- 3:10:32चीजों को मैं ऐसे हटा देता हूं। ये सारी
- 3:10:35चीजों की जरूरत अभी फिलहाल है नहीं। ठीक
- 3:10:37है? अब हमें क्या चाहिए? ये jसन को मैंने
- 3:10:40रखा है। ठीक है? क्यों रखा है? क्योंकि
- 3:10:42यहां पर अगर आप आओगे रेकमेंडेशन में या
- 3:10:45रेकमेंडेशन रिक्वेस्ट में यह सारी चीजें
- 3:10:47लिस्ट है। इंप्रूवमेंट्स, सजेशंस और
- 3:10:49सेफ्टी। ठीक है? तो लिस्ट का मतलब यहां पर
- 3:10:51अरे पास करनी है मुझे। तो इंप्रूवमेंट्स
- 3:10:54ऐसे होगी। इंप्रूवमेंट्स।
- 3:10:58ठीक है? और यहां पर विद इन दी अरे
- 3:11:03इसको हटा देता हूं। विद इन दी अरे हम सारी
- 3:11:05इंप्रूवमेंट्स का जो डेटा है उसको पास
- 3:11:08करेंगे। ठीक है? तो कुछ ऐसे पास होगा और
- 3:11:13इंप्रूवमेंट जो भी है आप लिख सकते हो यहां
- 3:11:14पर। ठीक है? तो एक इंप्रूवमेंट को मैं एक
- 3:11:16लाइन पर लिख दूंगा। रीडेबिलिटी के स्टैंड
- 3:11:18पॉइंट से ऐसा करना मैंडेटरी नहीं है लेकिन
- 3:11:20मैं रीडेबिलिटी के स्टैंड पॉइंट से एक-एक
- 3:11:21लाइन पर ले रहा हूं। ऐसे और यहां पर इसको
- 3:11:25क्लोज कर दूंगा। इस तरीके से क्लोज हो
- 3:11:28जाएगा। ये अच्छा यहां पर एरर क्यों आ रहा
- 3:11:29है ये? ओके। ये एरर इसलिए आ रहा है कि ये
- 3:11:31सेमी कॉललन ये कॉमा की जरूरत है नहीं। ठीक
- 3:11:34है? लेकिन मुझे इंप्रूवमेंट्स के बाद एक
- 3:11:36और चीज़ ऐड करनी है। इंप्रूवमेंट, सजेशंस
- 3:11:38और सेफ्टी। ठीक है? तो इंप्रूवमेंट में
- 3:11:41मैं कॉमा डाल देता हूं फिलहाल। और इसको
- 3:11:43कॉपी कर लेता हूं एंटर करके सजेशंस और फिर
- 3:11:47सेफ्टी। और लास्ट वाले में से कॉमा हटा
- 3:11:50देता हूं। ठीक है? तो ये हो गया
- 3:11:51इंप्रूवमेंट्स। और इंप्रूवमेंट्स की
- 3:11:54जेएसएन पहले बना लेते हैं। तो
- 3:11:55इंप्रूवमेंट्स में इंक्रीस
- 3:11:57ड्यूरेशन बाय 10%
- 3:12:00ये मैंने लिख दिया। ठीक है? एक डमी
- 3:12:04इंप्रूवमेंट्स ट्राई इंटरवल
- 3:12:08ट्रेनिंग। ठीक है? यह डमी इंप्रूवमेंट्स
- 3:12:10हैं सारे। ठीक है? तो इसको हटा देता हूं।
- 3:12:12दो इंप्रूवमेंट्स रखता हूं। ठीक है?
- 3:12:14इंप्रूवमेंट्स हो गए। अब दूसरी चीज है
- 3:12:16सजेशंस।
- 3:12:18ठीक है? सजेशंस में मैं सजेशन कुछ भी
- 3:12:20सजेशन लिख सकते हो आप। तो मैं लिखता हूं
- 3:12:22वार्म अप फॉर 5 मिनट्स एट लीस्ट। ठीक है?
- 3:12:26यह सजेशंस है। यहां पर होगा स्टे
- 3:12:29हाइड्रेटेड।
- 3:12:31ठीक है? और बाकी सारी चीजें हटा देता हूं।
- 3:12:34ठीक है? यह दो सजेशन है। उसके बाद यहां पर
- 3:12:37अगर आप देखोगे तो यहां पर है सेफ्टी
- 3:12:39टिप्स। सेफ्टी टिप्स ऐसे। अब सेफ्टी टिप्स
- 3:12:43देखिए मैंने सेफ्टी। अच्छा यहां पर सेफ्टी
- 3:12:45लिखा हुआ है सिर्फ। और यहां पर मैं लिख
- 3:12:47रहा हूं सेफ्टी टिप्स। तो अगर आपको चाहिए
- 3:12:50तो सेफ्टी है और यह रिकमेंडेशन रिक्वेस्ट
- 3:12:55में अच्छा एक मिनट।
- 3:12:571 मिनट देखने दीजिए मुझे। यहां पर अगर हम
- 3:13:00देखेंगे अच्छा मैं रेकमेंडेशन
- 3:13:03गेट सेफ्टी ओके सेफ्टी ही पास करना पड़ेगा
- 3:13:07मुझे नॉट सेफ्टी टिप्स ठीक है तो इसको मैं
- 3:13:11ऐसे लिख दूंगा सेफ्टी और यहां पर सेफ्टी
- 3:13:14टिप्स मैं थोड़े दे देता हूं जैसे कि एक
- 3:13:16सेफ्टी टिप है यूनिवर्सल लिसन टू योर बॉडी
- 3:13:21ठीक है दूसरी सेफ्टी टिप है डोंट
- 3:13:27ओवर एक्सर्ट ठीक है? ज्यादा एक्सरसाइज
- 3:13:30नहीं करनी है। बहुत ज्यादा लिमिट में करना
- 3:13:32है। ठीक है? तो, इतना मैंने लिख दिया है।
- 3:13:33यह हो गई मेरी jसin इनपुट jसin। क्या
- 3:13:36बोलते हो? अभी इसको सेंड कर दूं। और
- 3:13:38एक्टिविटी आईडी तो हमने ऐड ही नहीं की है।
- 3:13:40ठीक है? तो एक्टिविटी आईडी ऐड करने के लिए
- 3:13:41मैं यहां पर आ जाता हूं डेटाबेस में। और
- 3:13:44ये जो एक्टिविटी की आईडी है, कोई भी
- 3:13:45एक्टिविटी की आईडी ले लीजिए आप। मेरे पास
- 3:13:47एक ही एक्टिविटी ऐडेड है। तो उसकी आईडी
- 3:13:49लेके मैं यहां पर ऐड कर देता हूं। ठीक है?
- 3:13:51वैलिड एक्टिविटी आईडी अगर नहीं ऐड करोगे,
- 3:13:54वैलिड यूजर आईडी ऐड नहीं करोगे, तो एरर
- 3:13:56आएगी। ठीक है? आप खुद ही एक्सेप्शन थ्रो
- 3:13:58कर रहे हो। यहां पर सेंड कर देते हैं।
- 3:14:00चलिए देखते हैं क्या होता है। सेंड करोगे
- 3:14:02अगर तो यहां पर देख सकते हो आप। अच्छा
- 3:14:03टाइप नल है। रेकमेंडेशन नल है। ये दोनों
- 3:14:05हमने सेट नहीं किया है जो कि ठीक है। अगर
- 3:14:08आपको चाहिए तो आप ये दो पैराटर्स भी
- 3:14:10एडिशनली ऐड कर सकते हो। ये इंटेंशनली नहीं
- 3:14:12किया हुआ है। ये कोई इशू नहीं है। ठीक है?
- 3:14:14अगर आपको टाइप ऐड करना है रेमेंडेशन का वो
- 3:14:16भी ऐड कीजिए। रेकमेंडेशन भी ऐड करना है वो
- 3:14:18भी कीजिए। ठीक है? इंप्रूवमेंट्स में आप
- 3:14:20देखोगे देखिए इंप्रूवमेंट सेव हो चुकी है।
- 3:14:22सजेशन सेव हो चुकी है। सेफ्टी इनेशन सेव
- 3:14:25हो चुकी है। क्रिएटेड ऐड और अपडेटेड ऐड
- 3:14:27सेव नहीं हुई है। ये प्रॉब्लम है। तो यहां
- 3:14:29पर आ जाते हैं। क्रिएटेड ऐड कहां है? ठीक
- 3:14:32है? क्रिएटेड ऐड यहां पर है। तो इसमें
- 3:14:35डालना होगा हमें अ क्रिएटेड।
- 3:14:39अ ठीक है। कौन सा एनोटेशन था वो? एक्चुअली
- 3:14:42एनोटेशन का नाम भूल गया मैं। एक्टिविटी।
- 3:14:45ठीक है? यह रहा एक्टिविटी। और यहां पर कौन
- 3:14:48सा एनोटेशन था? क्रिएशन टाइम स्टैंप और
- 3:14:50अपडेट टाइम स्टैंप। ठीक है? क्रिएशन टाइम
- 3:14:53स्टैंप ऐसे
- 3:14:55और फिर यहां पर आना है और फिर अपडेट टाइम
- 3:14:59स्ट
- 3:15:01ऐसे। ठीक है? अब इसको रन करके देखते हैं
- 3:15:03कि ये क्रिएट और अपडेट टाइम स्टैंप जनरेट
- 3:15:05हो रहा है कि नहीं। ठीक है?
- 3:15:09और फिर इधर जाना है। फिर इसको सेंड करना
- 3:15:13है। और देखिए अब क्रिएटेड ऐड और अपडेटेड
- 3:15:15ऐड दोनों आ रहा है। ठीक है? और फिर यहां
- 3:15:19पर आप देखते हो तो देखिए यहां पर इंसर्ट
- 3:15:22क्वरीज भी जनरेट हो रही है। ठीक है? और
- 3:15:24jsn में डेटा स्टोर हो रहा है। जैसे आप
- 3:15:25देख पा रहे हो। ठीक है? यहां पर अगर आप
- 3:15:27आते हो तो यहां पर रेकमेंडेशन में आप
- 3:15:29जाओगे तो देखिए आपको रेकमेंडेशन में सारा
- 3:15:31का सारा डेटा जो जनरेट हो रहा है वो सेव
- 3:15:33होता हुआ नजर आएगा। देखिए आप तो पहले वाले
- 3:15:36इसमें क्रिएटेड एट और अपडेटेड एट सेव नहीं
- 3:15:39था क्योंकि हमने एनोटेशन नहीं लगाई थी
- 3:15:40लेकिन उसको डिलीट कर सकते हैं डिलीट रो
- 3:15:42ठीक है और अप्लाई कर दीजिए यहां पर ये
- 3:15:44अप्लाई हो गया डिलीट हो चुका है वो रो और
- 3:15:46अब आप देख पा रहे हो तो देखिए रेमेंडेशन
- 3:15:48वगैरह सब जनरेटेड है यहां पर जैसे आपने
- 3:15:51सेंड किया और यह जेएसएन फॉर्मेट में सेव
- 3:15:53हो रहा है यहां पर ठीक है तो एक्टिविटी
- 3:15:56क्रिएशन का काम तो हमने कर एक्टिविटी नहीं
- 3:15:59रेकमेंडेशन क्रिएशन का काम है वह हमने कर
- 3:16:02दिया है
- 3:16:08ठीक है। थोड़ा आगे बढ़ते हैं और अगली एपीआई
- 3:16:11की ओर चलते हैं। ठीक है? तो अगली एपीआई जो
- 3:16:13है वो देखिए यहां पर रेकमेंडेशन तो हमने
- 3:16:16जनरेट कर ली है। ठीक है? बाकी की दो एपीआई
- 3:16:19मैं चाहूंगा आप चैलेंज की तरह लीजिए। ठीक
- 3:16:20है? देखिए वीडियो तो मैं बना रहा हूं।
- 3:16:23आपको आगे देखने मिल जाएगा कि किस तरीके से
- 3:16:25एपीआई बन रही है, क्या काम हो रहा है,
- 3:16:27क्या हो रहा है, सब कुछ देखने मिल जाएगा।
- 3:16:29ठीक है? लेकिन आप खुद से ट्राई भी कीजिए।
- 3:16:31तो यह एंड पॉइंट जो है सिंपल एंड पॉइंट्स
- 3:16:34हैं। ठीक है? और जो भी आप अभी तक पढ़ चुके
- 3:16:37हो वह सारे कांसेप्ट्स को इसमें अप्लाई
- 3:16:40करने का आपके पास एक अपॉर्चुनिटी है। तो
- 3:16:43मैं रेकमेंड करूंगा पॉज कीजिए और ये दो
- 3:16:45एंड पॉइंट्स हैं जिसका स्ट्रक्चर मैंने
- 3:16:47दिखा दिया है और लॉजिक क्या है ये भी आपको
- 3:16:48पता है। इसको अटेम्प्ट कीजिए। ठीक है? पॉज
- 3:16:51कीजिए अभी और फिर प्ले कीजिए और अपना जो
- 3:16:54स्यूशन है उसको मेरे स्यूशन से कंपेयर
- 3:16:56कीजिए। अगर नहीं कर पाते हो खत्म तो भी
- 3:16:57कोई बात नहीं। कोई दिक्कत नहीं है इसे। यह
- 3:16:59एग्जाम नहीं है। यह एक यू नो आप खुद को
- 3:17:03पुश कर रहे हो एक कंफर्ट जोन से निकलने के
- 3:17:05लिए। ठीक है? तो ठीक है? गेट यूजर
- 3:17:07रेकमेंडेशन। मैं तो आगे बढ़ रहा हूं लेकिन
- 3:17:09आप पॉज करके जरूर ट्राई कीजिएगा आपके एंड
- 3:17:10पे। ठीक है? ये वीडियो है। पॉज प्ले आप
- 3:17:13कभी भी कर सकते हो। ठीक है? तो देखिए यहां
- 3:17:16पर यूजर रेकमेंडेशन अब फेच करेंगे हम।
- 3:17:18यूजर रेकमेंडेशन का मतलब यूजर के अगेंस्ट
- 3:17:20जितनी भी रेकमेंडेशन है उन सारी
- 3:17:23रेकमेंडेशन को हमें रिट्रीव करना है। ठीक
- 3:17:24है? तो हम क्या करेंगे? यहां पर आ जाते
- 3:17:27हैं सोर्स कोड में। और यहां पर लिखेंगे
- 3:17:32रेकमेंडेशन कंट्रोलर और फिर यहां पर लिख
- 3:17:36देंगे सेम मेथड को मैं डुप्लीकेट कर दूंगा
- 3:17:38थोड़ा टाइपिंग का एफर्ट है थोड़ा बच जाता
- 3:17:41है ठीक है और यहां पर मैं लिखूंगा गेट अ
- 3:17:44मैपिंग इस तरीके से ठीक है और यहां पर
- 3:17:46लिखेंगे यूजर स्लश यूजर आईडी
- 3:17:51ठीक है यूजर स्लैश यूजर आईडी और यहां पर
- 3:17:53रेकमेंडेशन और यहां पर जनरेट रेकमेंडेशन
- 3:17:56की बजाय गेट यूजर रेकमेंडेशन
- 3:18:00इस तरीके से लिखेंगे हम। ठीक है? और अब यह
- 3:18:04जो रिटर्न करेगा देखिए यूजर के अगेंस्ट
- 3:18:06रिकमेंडेशंस रिटर्न हो रहे हैं। ठीक है?
- 3:18:09तो रेमेंडेशंस मल्टीपल हो सकते हैं। तो
- 3:18:11यहां पर लिस्ट ऑफ रेमेंडेशंस हम लोग
- 3:18:14रिटर्न करेंगे। ठीक है? और यहां पर
- 3:18:17रेकमेंडेशन रिक्वेस्ट है जो हम ले रहे
- 3:18:19हैं। और यहां पर रेमेंडेशन
- 3:18:23सर्विस की मदद से हम लोग लिस्ट ऑफ
- 3:18:25रेमेंडेशंस चाहिए हमको। ठीक है? लिस्ट ऑफ़
- 3:18:28रिकमेंडेशन।
- 3:18:29ठीक है? रिकमेंडेशन लिस्ट। और फिर यहां पर
- 3:18:34हम जनरेट रेकमेंडेशन के बजाय हम कहेंगे
- 3:18:37गेट यूजर रेमेंडेशन।
- 3:18:41ठीक है? ऐसे। और यहां पर रिक्वेस्ट नहीं
- 3:18:45लेंगे हम। हम रिक्वेस्ट लेंगे। हमें
- 3:18:48रिक्वेस्ट लेने की एक्चुअली जरूरत नहीं
- 3:18:50है। रिक्वेस्ट बॉडी में कुछ लेने की जरूरत
- 3:18:51नहीं है। क्योंकि यह रिक्वेस्ट यह गेट
- 3:18:53मैपिंग रिक्वेस्ट है। करेक्ट? गेट है। गेट
- 3:18:55रिक्वेस्ट। तो यहां पर इन सब की जरूरत
- 3:18:57नहीं है। यहां पर मैं क्या करूंगा? सिंपली
- 3:19:00यूजर आईडी को फैच कर लूंगा ऐसे। ठीक है?
- 3:19:03और यहां पर सेमी कॉललन नहीं आएगा। यूजर
- 3:19:05आईडी को फैच कर लूंगा। और ये यूजर आईडी
- 3:19:07आएगा मुझे पाथ वेरिएबल में से। ठीक है? और
- 3:19:10यहां पर ये जो
- 3:19:13यूजर आईडी मुझे मिल रहा है उसको मैं यहां
- 3:19:15पर लिख दूंगा। ठीक है? तो इसको नई लाइन
- 3:19:16में लेते हैं। यहां पर यूजर आईडी ऐसे। ठीक
- 3:19:20है? गेट यूजर रिकमेंडेशन।
- 3:19:22ओके? और यहां पर रिकमेंडेशन लिस्ट को
- 3:19:24रिट्रीव कर देंगे। रिटर्न कर देंगे। ठीक
- 3:19:26है? काफी सिंपल सी एंड पॉइंट है। देखिए,
- 3:19:28मैं एक बार और एक्सप्लेन कर देता हूं
- 3:19:30क्योंकि हमने कॉपी पेस्ट किया और अगर किसी
- 3:19:31को समझ में नहीं आया तो उनके बेनिफिट के
- 3:19:34लिए एक और बार एक्सप्लेन करता हूं। अगर
- 3:19:36आपको समझ में आ गया तो रिवीज़ है। ठीक है?
- 3:19:38तो देखिए ये पहले सबसे पहले तो मैंने मेथड
- 3:19:40को डिक्लेअर किया यहां पर। ठीक है? और गेट
- 3:19:42मैपिंग डिफाइन की है यहां पर। गेट मैपिंग
- 3:19:44का तो आपको पता है। यहां पर यूजर आईडी मैं
- 3:19:47एज एक पाथ वेरिएबल ले रहा हूं। यानी विद
- 3:19:49इन द पाथ मैं एक डायनामिक पैरामीटर को
- 3:19:52एक्सेप्ट कर रहा हूं। इतनी चीज समझ गई
- 3:19:54आपको? और फिर यहां पर यह यूजर आईडी आपको
- 3:19:58मिल गई। और फिर यूजर आईडी यहां पर अंदर हम
- 3:20:02क्या कर रहे हैं? सर्विस की मदद से गेट
- 3:20:03यूजर रेकमेंडेशन नाम की मेथड हम कॉल कर
- 3:20:06रहे हैं। ठीक है? यूजर आईडी और यहां पर ये
- 3:20:10जो रिटर्न करेगा वो रिटर्न करेगा लिस्ट ऑफ़
- 3:20:12रेकमेंडेशन। तो देखिए यहां पर लिस्ट क्यों
- 3:20:14किया मैंने? लिस्ट क्यों किया मैंने? अ
- 3:20:17यहां पर रिटर्न टाइप लिस्ट क्यों है?
- 3:20:19लिस्ट इसीलिए है क्योंकि देखिए एक यूजर के
- 3:20:23अगेंस्ट मल्टीपल रेकमेंडेशन हो सकती है।
- 3:20:25एक भी हो सकती है, जीरो भी हो सकती है और
- 3:20:27मल्टीपल भी हो सकती है। तो सेफ्टी के लिए
- 3:20:30लिस्ट लेना जरूरी है। क्योंकि अगर मल्टीपल
- 3:20:32होती है तो आप उसको लिस्ट में दिखा सकते
- 3:20:34हो। एक है तो भी लिस्ट में दिखा सकते हो।
- 3:20:35एक भी नहीं है तो भी एम्प्टी लिस्ट दिखा
- 3:20:37सकते हो। ठीक है? तो लिस्ट सारे सिनेरियोस
- 3:20:39को फुलफिल करता है। इसके लिए लिस्ट हमने अ
- 3:20:42रिटर्न की है। और इसको हमने रैप किया है
- 3:20:45रिस्पांस एंटिटी में यहां पर। जैसे कि आप
- 3:20:46देख पा रहे हो। और रिटर्न करते वक्त मैं
- 3:20:48यह लिस्ट को रिटर्न कर रहा हूं यहां पर।
- 3:20:50इतना क्लियर है? अब यहां पर अ इतना तो बन
- 3:20:54गया हमारे पास। अब इसे इस मेथड को मैं
- 3:20:56क्रिएट कर दूंगा सर्विस में। ठीक है? अब
- 3:21:00सर्विस में देखिए हमारा जो कोड रहने वाला
- 3:21:02है अ काफी सिंपल और टू द पॉइंट होने वाला
- 3:21:05है। ठीक है? तो मैं यहां पर क्या करूंगा?
- 3:21:08यहां पर मैं करूंगा रिटर्न और रिकमेंडेशन
- 3:21:12रिपॉज़िटरी डॉट। देखिए हमें सिर्फ डेटा को
- 3:21:14रिट्रीव करना है। तो मैं कहूंगा फाइंड बाय
- 3:21:17यूजर आईडी और यहां पर यूजर आईडी को सेव
- 3:21:21कर। ठीक है? फाइंड बाय यूजर आईडी क्यों
- 3:21:24लिखा है मैंने? क्योंकि अगर आप डेटाबेस
- 3:21:25में देखते हो तो हर रेकमेंडेशन के अगेंस्ट
- 3:21:28हम यूजर आईडी को सेव कर रहे हैं। तो यहां
- 3:21:30पर देखिए रेकमेंडेशन के अगेंस्ट यूजर आईडी
- 3:21:32सेव हो रही है। क्यों हो रही है? क्योंकि
- 3:21:34यूजर और रेकमेंडेशन में एक रिलेशनशिप है।
- 3:21:37करेक्ट? आप मॉडल में आते हो अगर तो यूजर
- 3:21:40और रेकमेंडेशन में एक रिलेशनशिप है। यहां
- 3:21:43पर आप देख पा रहे हो। ठीक है? और जॉइन
- 3:21:45कॉलम कौन सी है? जॉइन कॉलम का नाम है यूजर
- 3:21:47आईडी। ठीक है? तो यहां पर
- 3:21:51मैंने लिख दिया है फाइंड बाय यूजर आईडी।
- 3:21:53तो क्या ये मेथड क्या ये मेथड एक्सिस्ट
- 3:21:56करती है रेपोज़िटरी में? जी नहीं। ये तो
- 3:21:57कस्टम मेथड हो गई। फाइंड बाय आईडी
- 3:21:59एक्सिस्ट करती है। लेकिन हम फाइंड बाय
- 3:22:01आईडी क्यों इस्तेमाल नहीं कर रहे? तो
- 3:22:03फाइंड बाय आईडी क्यों इस्तेमाल नहीं कर
- 3:22:04रहा हूं? फाइंड बाय आईडी यह वाला मेथड
- 3:22:06क्यों नहीं इस्तेमाल कर रहा हूं? क्योंकि
- 3:22:08यह रेकमेंडेशन के आईडी से सर्च करेगा और
- 3:22:10मुझे बाय यूजर चाहिए। सर्च बाय यूजर। ठीक
- 3:22:12है? तो इसके लिए मैंने कंट्रोल सेट कर
- 3:22:14दूंगा। फाइंड बाय यूजर आईडी लिख दिया है।
- 3:22:16अब देखिए जीपीआईआई का मैजिक ऐसा है कि
- 3:22:18यहां पर अगर मैं क्रिएट मेथड करता हूं तो
- 3:22:20ये मेथड क्रिएट हो चुका है। यहां पर आप
- 3:22:22देख पा रहे हो। ठीक है? अब सेम लॉजिक
- 3:22:25अप्लाई होगा। फाइंड का मतलब क्या है?
- 3:22:27वेयर। अ सॉरी फाइंड का मतलब है सेलेक्ट।
- 3:22:30बाय का मतलब है वेयर क्लॉज़ और यूजर आईडी
- 3:22:33फील्ड है। यही कन्वेंशन हमने फॉलो किया और
- 3:22:35यहां पर यूजर आईडी पास भी कर दिया और यहां
- 3:22:37पर लिख दिया है कि हमें लिस्ट चाहिए
- 3:22:38रेकमेंडेशंस की। तो जेपीए हाइबरनेट इतने
- 3:22:41स्मार्ट है कि ये जो कन्वेंशन है वो देख
- 3:22:43के समझ जाएंगे कि उनको क्या क्वेरी जनरेट
- 3:22:45करनी है। ठीक है? आपका काम कितना आसान
- 3:22:47होता है। आपको एस्सक्यूएल क्वेरी लिखनी ही
- 3:22:49नहीं है अगर कोई कस्टम रिक्वायरमेंट होती
- 3:22:50है तो। ठीक है? इतना कर लिया हमने। बस बात
- 3:22:53खत्म हो चुकी है। अब और कुछ करने की जरूरत
- 3:22:56है नहीं। अगर
- 3:22:58अ एक हिसाब से जी और कुछ करने की तो लगभग
- 3:23:02जरूरत है नहीं। अगर आप चाहो तो इसको रन कर
- 3:23:08सकते हो।
- 3:23:10ठीक है? ये रन हो रहा है। तब तक मैं यहां
- 3:23:12पर आ जाता हूं। अब देखिए यहां पर मेरे पास
- 3:23:14एक यूजर आईडी है। ठीक है? ये यूजर आईडी
- 3:23:17है। तो मैं क्या करूंगा? यह जो एंड पॉइंट
- 3:23:19है जनरेट रेकमेंडेशन इसको ही डुप्लीकेट कर
- 3:23:21दूंगा इस तरीके से। अच्छा यहां पर क्लिक
- 3:23:24करके डुप्लीकेट कर दूंगा।
- 3:23:26ठीक है? और यह जो रिक्वेस्ट है, ठीक है?
- 3:23:29प्रीवियस रिक्वेस्ट को सेव कर लिया। यहां
- 3:23:31पर मैं लिख दूंगा गेट यूजर रेकमेंडेशन।
- 3:23:36ऐसे
- 3:23:38यूजर और फिर स्लैश यूजर आईडी यहां पर
- 3:23:41मेंशन करना है। इस तरीके से। अब यहां पर
- 3:23:44आएंगे हम। अ बॉडी वगैरह तो पास करने की
- 3:23:47जरूरत नहीं है। ये गेट रिक्वेस्ट है। ठीक
- 3:23:48है? और बॉडी में यहां पर पहले से यूजर
- 3:23:51आईडी मेंशंड है। तो यह एक वैलिड यूजर आईडी
- 3:23:53मैं ले लूंगा और यहां पर मैं लिख दूंगा
- 3:23:55ऐसे। ठीक है? और फिर इसको मैं नन कर
- 3:23:58दूंगा। बॉडी पास करने की जरूरत है नहीं।
- 3:24:01ठीक है? तो इतना हो गया। अब मैं इसे अगर
- 3:24:02रन करता हूं तो देखिए मुझे इस यूजर के
- 3:24:05अगेंस्ट जितनी भी रेकमेंडेशंस है वो दिखाई
- 3:24:07देगी इन द फॉर्म ऑफ़ अरे। यह अरे है एक
- 3:24:09हिसाब से। तो एक ही रेकमेंडेशन है तो मुझे
- 3:24:11एक ही दिखाई दे रही है। अगर मैं एक और
- 3:24:13रेकमेंडेशन जनरेट करता हूं यहां पर उस
- 3:24:14यूजर के अगेंस्ट और फिर गेट करता हूं तो
- 3:24:17देखिए मुझे एक और फिर दो दूसरी रेमेंडेशन
- 3:24:20दो रेमेंडेशंस फैच हुई है यहां। ठीक है?
- 3:24:23क्योंकि डेटाबेस में दो रेमेंडेशंस
- 3:24:25एक्सिस्ट करती है यह एक यूजर के अगेंस्ट।
- 3:24:27ठीक है? तो ये थी पहली गेट एंड पॉइंट। अब
- 3:24:30मैं क्या करूंगा? यहां पर आ जाता हूं।
- 3:24:33देखिए यहां पर क्वेरी भी जनरेट हो रही है।
- 3:24:34आपको दिखाई देगा। बाय यूजर आईडी। फाइंड
- 3:24:37बाय यूजर आईडी की क्वेरी है ये। ठीक है?
- 3:24:39जनरेट हो के प्रिंट भी हो रही है। ठीक है?
- 3:24:41तो इतना हो चुका है। अब रेकमेंडेशन
- 3:24:43कंट्रोलर में आ जाते हैं और यहां पर जो
- 3:24:45नेक्स्ट एपीआई है जहां पर हमें एक्टिविटी
- 3:24:47फैच करनी है एक एक्टिविटी आईडी की मदद से
- 3:24:50वो हम क्रिएट करेंगे। तो यहां पर आ जाते
- 3:24:52हैं और यहां पर मैं इसको कॉपी करता हूं और
- 3:24:56फिर यहां पर लिख देता हूं और फिर
- 3:24:58एक्टिविटी आईडी को मेंशन करता हूं यहां पर
- 3:25:02और यहां पर लिखता हूं एक्टिविटी ऐसे
- 3:25:05और फिर यहां पर लिस्ट ऑफ रेकमेंडेशन की
- 3:25:08बजाय गेट यूजर रेकमेंडेशन की बजाय गेट
- 3:25:10एक्टिविटी रिकमेंडेशन और यहां पर स्ट्रिंग
- 3:25:14यूजर आईडी के बजाय एक्टिविटी आईडी ऐसे लिख
- 3:25:17देंगे। ठीक है? अब बाकी सारी चीजें तो सेम
- 3:25:20ही होगी। रेकमेंडेशन लिस्ट और यहां पर गेट
- 3:25:23यूजर रेकमेंडेशन की बजाय गेट एक्टिविटी
- 3:25:26रेमेंडेशन और यहां पर यूजर आईडी के बजाय
- 3:25:28एक्टिविटी आईडी। ठीक है? इतना मैंने मेंशन
- 3:25:32कर दिया है। और यहां पर इसको क्लियर कर
- 3:25:35देंगे ऐसे। सॉरी क्लियर नहीं क्रिएट कर
- 3:25:37देंगे। ऐसे और फिर यहां पर मैं लिखूंगा
- 3:25:42ऐसे। अह यहां पर मैं लिखूंगा इसको कॉपी कर
- 3:25:46लूंगा। और यहां पर लिखूंगा फाइंड बाय
- 3:25:49एक्टिविटी आईडी।
- 3:25:52सिमिलर लॉजिक है और यूजर आईडी के बजाय
- 3:25:53एक्टिविटी आईडी पास करेंगे हम। और यहां पर
- 3:25:57होवर करके ये वाला जो मेथड है उसको भी
- 3:25:59क्रिएट कर देंगे यहां पर।
- 3:26:02ठीक है? तो आपको दिखाई दे रहा है लिस्ट।
- 3:26:05अब एक चीज़ यहां पर ये है कि अ लिस्ट यहां
- 3:26:10पर नहीं होगी क्योंकि यहां पर रिलेशनशिप
- 3:26:12देख लेते हैं। एक्टिविटी के अगेंस्ट एक ही
- 3:26:14रेकमेंडेशन होती है जनरली। यहां पर देखते
- 3:26:17हैं तो एक्टिविटी है, लिस्ट है एक हिसाब
- 3:26:22से। अच्छा लिस्ट ऑफ रेमेंडेशंस है तो
- 3:26:24लिस्ट ही आएगी। ये सही लिखा है हमने। ठीक
- 3:26:26है? यहां पर आपको लिस्ट ही मिलेगी और अब
- 3:26:30इसको रन कर लेते हैं। ठीक है? ये सेम एंड
- 3:26:32पॉइंट को रन कर लेते हैं। तो एक्टिविटी
- 3:26:34स्लश एक्टिविटी आईडी तो इसको रन कर लेते
- 3:26:36हैं। और यहां पर आ जाता हूं मैं और यह जो
- 3:26:39गेट यूजर रेकमेंडेशन है, इसको मैं कर लेता
- 3:26:41हूं डुप्लीकेट। ठीक है? इसको कर लेता हूं
- 3:26:45डुप्लीकेट और गेट यूजर रेमेंडेशन के बजाय
- 3:26:48इसको मैं रिनेम कर दूंगा गेट एक्टिविटी
- 3:26:52रेमेंडेशन ऐसे ठीक है और यहां पर एपीआई
- 3:26:57डॉट रेमेंडेशन डॉट यूजर सैश यूजर स्लैश
- 3:27:00यूजर के बजाय एक्टिविटी लिख दूंगा अब मुझे
- 3:27:03यहां पर एक्टिविटी आईडी लगानी है। ठीक है?
- 3:27:05तो यहां पर एक्टिविटी आईडी कहां मिलेगी?
- 3:27:08यह मैं एक्टिविटी को सेव कर रहा हूं। तो
- 3:27:10यह शायद एक्टिविटी आईडी है। इसको ले लेते
- 3:27:12हैं।
- 3:27:14यहां पर आ जाते हैं और यहां पर यह जो यूजर
- 3:27:18आईडी लगी हुई है इसको हटाकर एक्टिविटी
- 3:27:19आईडी ऐड कर देते हैं और फिर सेंड करते
- 3:27:22हैं। तो देखिए यहां पर एक्टिविटी के
- 3:27:24अगेंस्ट जितनी भी रेकमेंडेशंस हैं दो
- 3:27:26रेकमेंडेशंस है इस सेम एक्टिविटी के
- 3:27:27अगेंस्ट तो वो रिट्रीव हो चुकी है। ठीक
- 3:27:30है? आपको दिखाई दे रहा है। तो सिंपल है।
- 3:27:33ठीक है? सिंपल एंड पॉइंट सी और सारा का
- 3:27:35सारा डेटाबेस से आ रहा है। कोई दिक्कत
- 3:27:38वैसे है नहीं। हम ट्राई करते हैं कि एक
- 3:27:40गलत एक्टिविटी ऐड कर देता हूं मैं। तो
- 3:27:42लास्ट में वन ऐड कर दिया। अगर आप गलत
- 3:27:44एक्टिविटी ऐड करते हो तो आपको एम्प्टी
- 3:27:46रिस्पांस मिलेगा। ठीक है? आप इसको हैंडल
- 3:27:48भी कर सकते हो कि अगर एम्प्टी रिस्पांस है
- 3:27:50तो आप देखिए कि एक्टिविटी एक्सिस्ट करती
- 3:27:53है या नहीं डेटाबेस में और एक एक्सेप्शन
- 3:27:55थ्रू कीजिए वो सब आप कर सकते हो। ठीक है?
- 3:27:57लेकिन एम्प्टी अभी फिलहाल मैं रख रहा हूं
- 3:27:59और यहां पर इस तरीके से ये दोनों एंड
- 3:28:01पॉइंट्स काम कर रही है। ठीक है? तो उम्मीद
- 3:28:02करता हूं यह हेल्पफुल रहा और आपको पूरा जो
- 3:28:05प्रोसेस है ईपीआई बनाने का वह सारा के
- 3:28:07सारा क्लियर है।
- 3:28:14तो दोस्तों बात करते हैं स्प्रिंग
- 3:28:15सिक्योरिटी के बारे में और समझते हैं कि
- 3:28:18यह है क्या? देखिए इसके नाम से तो समझ ही
- 3:28:20गया होगा। आपको एक अंदाजा तो लग गया होगा
- 3:28:22कि ये नाम में सिक्योरिटी है तो कुछ
- 3:28:24सिक्योरिटी रिलेटेड होगा। जी हां ये
- 3:28:26एक्चुअली सिक्योरिटी रिलेटेड ही है। तो
- 3:28:28देखिए आप एप्लीकेशन एक बनाते हो। ठीक है?
- 3:28:32ये एप्लीकेशन और होता क्या है? इस
- 3:28:34एप्लीकेशन को कोई भी एक्सेस कर सकता है।
- 3:28:36करेक्ट? इस एप्लीकेशन को कोई भी एक्सेस कर
- 3:28:38सकता है। लेकिन आज की तारीख में किसी का
- 3:28:41भी हमारी एपीआई को एक्सेस करना सही नहीं
- 3:28:44है। ठीक है? हो सकता है हमारी एपीआई में
- 3:28:47ऐसी कुछ सेंसिटिव इनेशन हो या सेंसिटिव
- 3:28:50डेटा हो और हम नहीं चाहते कि हमारी जो एंड
- 3:28:54पॉइंट्स है वो पब्लिकली अवेलेबल रहे। तो
- 3:28:57आजकल की ऑर्गेनाइजेशंस क्या चाहती है कि
- 3:29:00हमारी जो एप्लीकेशन है वो सिक्योर हो। और
- 3:29:02अगर आप स्प्रिंग फ्रेमवर्क, स्प्रिंग बूट
- 3:29:05ये सारी टेक्नोलॉजी सीखते हैं, कोई बैक
- 3:29:07एंड एप्लीकेशन बनाते हैं, फुल स्टक
- 3:29:08एप्लीकेशन बनाते हैं, तो सिक्योरिटी के
- 3:29:11बिना तो बात ही नहीं होती है। ठीक है? हर
- 3:29:13कंपनी चाहे वो एंटरप्राइज हो, छोटा
- 3:29:15स्टार्टअप हो या कोई भी हो, ठीक है? बेसिक
- 3:29:18एप्लीकेशनेशंस में भी आजकल सिक्योरिटी की
- 3:29:20एक्सपेक्टेशंस हैं। ठीक है? और जनरली
- 3:29:24जनरली
- 3:29:26कंपनीज़ चाहती है कि हमारी सारी
- 3:29:28एप्लीकेशनेशंस में एक बढ़िया किस्म की
- 3:29:30सिक्योरिटी इंप्लीमेंटेड हो। ठीक है? तो
- 3:29:33इसे कहते हैं सिक्योरिटी और सिक्योरिटी
- 3:29:35काफी इंपॉर्टेंट आस्पेक्ट है एप्लीकेशन
- 3:29:37बिल्डिंग का। ठीक है? और यहीं पर अब आती
- 3:29:41है बात स्प्रिंग सिक्योरिटी की। अब
- 3:29:43स्प्रिंग सिक्योरिटी क्या है? तो स्प्रिंग
- 3:29:44सिक्योरिटी को मान लीजिए एक फ्रेमवर्क की
- 3:29:46तरह है स्प्रिंग बूट के एप्लीकेशन के लिए।
- 3:29:49ठीक है? तो अगर आप स्ट्रिंग बूट का
- 3:29:51इस्तेमाल करते हो बैक एंड पर तो अगर आपको
- 3:29:53ऑथेंटिकेशन, ऑथराइजेशन और सिक्योरिटी ऐसी
- 3:29:56कोई भी चीज ऐड करनी है अपनी एप्लीकेशन
- 3:29:58में। जैसे कि मैंने यहां पर कहा कि आपकी
- 3:30:00जो एप्लीकेशन है उसको हर कोई एक्सेस कर
- 3:30:02सकता है बाय डिफ़ॉल्ट। ठीक है? लेकिन मैं
- 3:30:04चाहता हूं कि हर कोई एक्सेस ना करें। और
- 3:30:06मैं चाहता हूं कि स्पेसिफिक सेट ऑफ यूज़र्स
- 3:30:08ही एक्सेस करें उसे। तो मैं क्या करूंगा?
- 3:30:10मैं स्प्रिंग सिक्योरिटी की मदद से उसमें
- 3:30:12सिक्योरिटी इंप्लीमेंट करूंगा। यानी कि
- 3:30:13ऑथेंटिकेशन, ऑथराइज़ेशन ये सारे फीचर्स
- 3:30:16इंप्लीमेंट करूंगा। ठीक है? है तो
- 3:30:17स्प्रिंग सिक्योरिटी एक ऐसा फ्रेमवर्क है
- 3:30:19जिसकी मदद से हम हमारी स्प्रिंग बूट
- 3:30:21एप्लीकेशन में प्रोटेक्शन ऐड कर सकते हैं।
- 3:30:24यानी कि सिक्योरिटी फीचर्स ऐड कर सकते
- 3:30:27हैं। और ये काफी सारी चीजें हमें देता है।
- 3:30:30ठीक है? तो मैं क्या करूंगा? मैं हमारे
- 3:30:33ब्राउज़र पे आ जाऊंगा। ठीक है? और यहीं पर
- 3:30:36हम जाएंगे स्प्रिंग.io पर। ठीक है?
- 3:30:38spring. ये ऑफिशियल वेबसाइट है अ और
- 3:30:42स्प्रिंग की ऑफिशियल वेबसाइट है। ठीक है?
- 3:30:44और यहां पर अगर आप आते हो तो यहां पर
- 3:30:45स्प्रिंग के बारे में आप सब कुछ पढ़ सकते
- 3:30:46हो। ठीक है? सब कुछ पढ़ सकते हो यहां पर।
- 3:30:49देखिए ये सारी चीजें हैं और यहां पर ऊपर
- 3:30:51आओगे आप तो आपको प्रोजेक्ट्स दिखाई देगा।
- 3:30:54इसको बंद कर देता हूं। प्रोजेक्ट्स दिखाई
- 3:30:56देगा। प्रोजेक्ट्स में एक प्रोजेक्ट है
- 3:30:57स्प्रिंग बूट, स्प्रिंग फ्रेमवर्क,
- 3:30:59स्प्रिंग क्लाउड, स्प्रिंग डाटा और यहां
- 3:31:02पर एक प्रोजेक्ट आपको दिखेगा वो है
- 3:31:03स्प्रिंग सिक्योरिटी। और अगर आप इस पर
- 3:31:05क्लिक करते हो तो देखिए आप इस पेज पर आ
- 3:31:07जाओगे और यहां पर आपको लेटेस्ट वर्जन
- 3:31:10दिखाई देगा स्प्रिंग सिक्योरिटी का। हो
- 3:31:12सकता है आपको अलग वर्जन दिखाई दे। ठीक है?
- 3:31:14इसमें घबराना नहीं है। देखिए वर्जनंस चेंज
- 3:31:15होते रहते हैं। अभी मैं कल तो थोड़े दिन
- 3:31:17बाद आऊंगा तो यहां पर 7.0.1 होगा। ठीक है?
- 3:31:21तो स्प्रिंग सिक्योरिटी, स्प्रिंग
- 3:31:22फ्रेमवर्क, स्प्रिंग मोड इनकी जो टीम है
- 3:31:24वो काफी एक्टिव है। अपडेट्स रिलीज़ करती
- 3:31:26रहती है। नए पैचेस आते रहते हैं और चीजों
- 3:31:29में चीजें चलती रहती है यहां पर। ठीक है?
- 3:31:32तो वर्जनंस आपको गारंटीड अलग दिखेगा
- 3:31:34डिपेंडिंग ऑन आप कब यह वीडियो देख रहे हो।
- 3:31:36लेकिन ये है स्प्रिंग सिक्योरिटी और यहां
- 3:31:38पर आप स्प्रिंग सिक्योरिटी के बारे में
- 3:31:39पढ़ भी सकते हो कि ये एक पावरफुल हाइली
- 3:31:42कस्टमाइजेबल ऑथेंटिकेशन और एक्सेस कंट्रोल
- 3:31:44फ्रेमवर्क है। ठीक है? इसमें सबसे ज्यादा
- 3:31:47इंपॉर्टेंट चीज क्या है पता है? हाइली
- 3:31:49कस्टमाइजेबल इसको आप अपने हिसाब से
- 3:31:52कस्टमाइज कर सकते हो। अपने रिक्वायरमेंट्स
- 3:31:54के हिसाब से कस्टमाइज कर सकते हो। और
- 3:31:56इसमें ऑथेंटिकेशन एक्सेस कंट्रोल जैसी
- 3:31:59चीजें आप ऐड कर सकते हो। ठीक है? ठीक है?
- 3:32:00एक्सेस कंट्रोल का मतलब है अगर आप चाहते
- 3:32:02हो कि कोई एपीआई को एडमिन इस्तेमाल करें
- 3:32:05या कोई एपीआई है, कोई एंड पॉइंट है उसको अ
- 3:32:08नॉर्मल यूज़र्स एक्सेस ना करें तो आप ये
- 3:32:10सारी चीजें इंप्लीमेंट कर सकते हो बड़ी
- 3:32:12आसानी से स्प्रिंग सिक्योरिटी की मदद से।
- 3:32:15ठीक है? और ये हिसाब ये एक हिसाब से ना
- 3:32:17स्टैंडर्ड हो चुका है। स्प्रिंग
- 3:32:18सिक्योरिटी जो है स्टैंडर्ड हो चुका है अ
- 3:32:20स्प्रिंग बूट बेस्ड एप्लीकेशन या स्प्रिंग
- 3:32:22बेस्ड एप्लीकेशनेशंस को सिक्योर करने के
- 3:32:24लिए। ठीक है? अगर आप स्प्रिंग बूट का
- 3:32:26इस्तेमाल कर रहे हो, स्प्रिंग फ्रेमवर्क
- 3:32:27का इस्तेमाल कर रहे हो, तो लोग अक्सर
- 3:32:29स्प्रिंग सिक्योरिटी का ही इस्तेमाल करते
- 3:32:31हैं। ठीक है? ये डिफॉल्ट हो गया है। ठीक
- 3:32:33है? और यहां पर देखिए ये एक फ्रेमवर्क है
- 3:32:35जो फोकस करता है ऑथेंटिकेशन ऑथराइजेशन
- 3:32:37प्रोवाइड करने में जावा एप्लीकेशनेशंस को।
- 3:32:40ठीक है? और हमारी ऑल हमारी सारी स्प्रिंग
- 3:32:43बूट प्रोजेक्ट्स स्प्रिंग प्रोजेक्ट्स की
- 3:32:45तरह। ठीक है?
- 3:32:47यह इसकी जो पावर है वह उसी में है कि यह
- 3:32:50कस्टम रिक्वायरमेंट्स को भी मीट करता है।
- 3:32:51तो आप इसमें हाईली चीजों को कस्टमाइज कर
- 3:32:54सकते हो। देखिए रेडीमेड चीज तो आपको मिल
- 3:32:57जाएगी लेकिन ऐसी चीज जिसको आप अपने हिसाब
- 3:33:00से कस्टमाइज कर पाओ ना वो बढ़िया होती है।
- 3:33:02ठीक है? तो स्प्रिंग सिक्योरिटी वहीं पर
- 3:33:05विन करता है। ठीक है? और काफी बढ़िया
- 3:33:07फ्रेमवर्क है। ठीक है? काफी चीजें आप
- 3:33:09इसमें इंप्लीमेंट कर सकते हो। यहां पर
- 3:33:10सारे फीचर्स दिख जाएंगे आपको। और अगर आप
- 3:33:12यहां पर आते हो लर्न पर तो यहां पर देखिए
- 3:33:14लेटेस्ट जो वर्जन है उसका रेफरेंस डॉक
- 3:33:16आपको मिल जाएगा। यहां पर आप रेफरेंस डॉक
- 3:33:18देख सकते हो। ये पूरा का पूरा रेफरेंस डॉक
- 3:33:20है। ठीक है? माइग्रेटिंग टू से ये सारी
- 3:33:22चीजें आपको दिखाई देगी। ठीक है? और यहां
- 3:33:24पर ईपीआई डॉक्यूमेंटेशन भी आपको मिल
- 3:33:25जाएगा। आप इसको भी ओपन कर सकते हो एक अलग
- 3:33:27टैब में। यहां पे सारी की सारी क्लासेस
- 3:33:29अगर आपको कोई क्लास ढूंढने की जरूरत पड़े
- 3:33:32कभी भी अ करियर में डेवलपमेंट के दौरान तो
- 3:33:35ये ऑफिशियल डॉक्यूमेंटेशन है और ये वर्जन
- 3:33:37वाइज़ अपडेट होते हैं। ठीक है? ये देखिए ये
- 3:33:39अभी ये करंट वर्जन का डॉक्यूमेंटेशन है।
- 3:33:41प्रीवियस वर्जन के डॉक्यूमेंटेशंस भी आप
- 3:33:42देख सकते हो यहां पर दिए गए हैं। ठीक है?
- 3:33:45और यहां पर आपको सैंपल वगैरह सपोर्ट मिल
- 3:33:47जाएगा, सैंपल मिल जाएगा। ये सारी चीजें
- 3:33:48यहां पर मिल जाएगी। ठीक है? तो ये ऑफिशियल
- 3:33:51डॉक्यूमेंटेशन है और यहां पर सोर्स कोड भी
- 3:33:53मिल जाएगा और स्टक ओवर फ्ल्लो की लिंक और
- 3:33:56यहां पर लेफ्ट साइड पे आपको अदर
- 3:33:57प्रोजेक्ट्स दिखेंगे। दूसरे जो
- 3:33:58प्रोजेक्ट्स हैं स्प्रिंग के। ठीक है?
- 3:34:00उम्मीद करता हूं आपको यह सम ओवरव्यू कि
- 3:34:04स्प्रिंग सिक्योरिटी है क्या असल में और
- 3:34:07किस तरह से हमारी लाइफ को आसान बनाता है
- 3:34:08वो समझ में आया।
- 3:34:15तो दोस्तों अब आगे बढ़ते हैं और बात करते
- 3:34:17हैं एक इंपॉर्टेंट कांसेप्ट के बारे में
- 3:34:19जो कि है ऑथेंटिकेशन वर्सेस ऑथोराइजेशन।
- 3:34:24ठीक है? तो देखिए अगर आप सिक्योरिटी पे
- 3:34:26काम कर रहे हो तो आपको ये दो टर्मिनोलॉजीस
- 3:34:29कि ऑथेंटिकेशन और ऑथराइजेशन ये कई बार
- 3:34:32सुनाई देगी और मैं चाहता हूं कि मैं इसको
- 3:34:34बढ़िया तरीके से एक्सप्लेन करूं कि इन
- 3:34:36दोनों चीजों का या इन दोनों टर्म्स का
- 3:34:39मतलब क्या है? देखिए सबसे पहले तो ये
- 3:34:41दोनों टर्म्स काफी लोग बिगिनर्स ये गलती
- 3:34:43कर बैठते हैं कि वो समझते हैं कि ये दोनों
- 3:34:45टर्म्स एक ही है। तो सबसे पहले तो ये
- 3:34:48दोनों टर्म्स एक नहीं है। ठीक है?
- 3:34:51ऑथेंटिकेशन का मतलब अलग है और ऑथराइजेशन
- 3:34:53का मतलब अलग है। ठीक है? तो देखिए
- 3:34:56ऑथेंटिकेशन का मतलब क्या है? सबसे पहले तो
- 3:34:58मैं आपको बता देता हूं। ऑथेंटिकेशन का
- 3:34:59मतलब ये है कि आप प्रूफ कर रहे हो कि आप
- 3:35:03कौन हो? ठीक है? अगर आप कौन हो इस बात का
- 3:35:07आप प्रूफ दे रहे हो तो इसका मतलब आप
- 3:35:09ऑथेंटिकेट कर रहे हो खुद को। ठीक है? तो
- 3:35:12एक सिंपल सा एग्जांपल अगर मैं आपको दे
- 3:35:14दूं। देखिए आपका ईमेल अकाउंट होगा। Google
- 3:35:16पे होगा, Microsoft पे होगा। कहीं तो ईमेल
- 3:35:18अकाउंट होगा। ईमेल आप ऐसे ही एक्सेस नहीं
- 3:35:20करते हो। आपको उसके लॉग इन पेज पर जाना
- 3:35:22है। यूजरनेम पासवर्ड डाल के अगर वो सही
- 3:35:25है, मैच करता है तो ही आप ईमेल एक्सेस कर
- 3:35:27सकते हो। सही है? तो यहां पर आप खुद को
- 3:35:31ऑथेंटिकेट कर रहे हो। आप बता रहे हो कि
- 3:35:34मैं यह बंदा हूं जिसका जिसका मेल बॉक्स
- 3:35:37है। ठीक है? मैं पर्सन ए हूं और मैं पर्सन
- 3:35:40ए का यूजरनेम और पासवर्ड डालूंगा और मैं
- 3:35:42पर्सन ए हूं तो मुझे मेरा ईमेल पढ़ना है।
- 3:35:45ठीक है? फॉर एग्जांपल मैं फैसल हूं। मैं
- 3:35:47चाहता हूं मेरा मेल बॉक्स एक्सेस करना तो
- 3:35:49मैं मेरा यूजरनेम, पासवर्ड या ईमेल, ईमेल
- 3:35:51या पासवर्ड जो भी है मैं डालूंगा और मुझे
- 3:35:54मेरे मेल बॉक्स का एक्सेस दिया जाएगा। ठीक
- 3:35:56है? तो मैंने क्या किया? यूजरनेम पासवर्ड
- 3:35:58की मदद से मैंने खुद को ऑथेंटिकेट किया।
- 3:36:00इसका मतलब मैंने खुद को प्रूफ किया कि मैं
- 3:36:03फैसल हूं। और मैं फैसल हूं। इसीलिए ये
- 3:36:07प्रूव हो गया क्योंकि मैंने यूजरनेम
- 3:36:09पासवर्ड दे दिया। वो करेक्ट है। ठीक है?
- 3:36:11तो इसीलिए मुझे मेरे मेल बॉक्स का एक्सेस
- 3:36:14मिला। ठीक है? इसे कहते हैं ऑथेंटिकेशन।
- 3:36:19ठीक है? ऑथेंटिकेशन इसे कहते हैं।
- 3:36:20ऑथेंटिकेशन इज़ लाइक प्रूविंग हु यू आर। आप
- 3:36:24अगर ये प्रूव कर रहे हो कि आप कौन हो? ठीक
- 3:36:26है? इसका प्रूफ दे रहे हो तो आप खुद को
- 3:36:28ऑथेंटिकेट कर रहे हो। तो अब ऑथराइजेशन
- 3:36:30क्या हो गया? ठीक है? ऑथोराइजेशन का मतलब
- 3:36:33क्या है? तो देखिए एक बार आप अगर आपको अगर
- 3:36:37कोई सिस्टम का एक्सेस मिल जाता है। जैसे
- 3:36:39मेल बॉक्स का एक्सेस मिल गया। कोई भी
- 3:36:41सिस्टम का एक्सेस मिल जाता है। ठीक है? उस
- 3:36:43सिस्टम में आप क्या-क्या कर सकते हो वो
- 3:36:46डिक्टेट करता है ऑथराइजेशन।
- 3:36:48ठीक है? तो देखिए आप अगर एक ई-कॉमर्स
- 3:36:52वेबसाइट पे जाते हो तो आप एडमिन रिलेटेड
- 3:36:54एक्शंस नहीं कर सकते हो। क्यों? क्योंकि
- 3:36:56आप ऑथराइज़ नहीं हो एडमिन रिलेटेड एक्सेस
- 3:36:58के लिए। ऑफ कोर्स आपने अपने अकाउंट में
- 3:37:00लॉगिन कर लिया। आपने ऑथेंटिकेट कर लिया
- 3:37:02खुद को। लेकिन आप एडमिन पैनल का एक्सेस
- 3:37:06नहीं कर पा रहे हो। इसका मतलब यू आर नॉट
- 3:37:08ऑथराइज्ड टू एक्सेस दैट। तो ऑथेंटिकेट तो
- 3:37:11आप हो चुके हो। यह प्रूव हो चुका है कि आप
- 3:37:13फैसल हो। आप ऑथेंटिकेट हो चुके हो
- 3:37:15ई-कॉमर्स वेबसाइट में। लेकिन आप एडमिन
- 3:37:17पैनल को एक्सेस नहीं कर पा रहे हो। इसका
- 3:37:19मतलब यू आर नॉट ऑथराइज। तो यहां पर ये
- 3:37:21ऑथराइजेशन का कांसेप्ट आ जाता है। ठीक है?
- 3:37:23मैं आपको और बढ़िया तरीके से एक्सप्लेन कर
- 3:37:25देता हूं। देखिए समझ जाइए। ये एक तरीके का
- 3:37:30बिल्डिंग है। ठीक है? एक बिल्डिंग सी बना
- 3:37:31देता हूं। ऐसी बिल्डिंग है। ठीक है? अब
- 3:37:33इसमें मल्टीपल फ्लोर्स हैं। ठीक है?
- 3:37:35मल्टीपल सेक्शंस हैं। मान लीजिए। तो यहां
- 3:37:37पे एक सेक्शन है। ठीक है? फिर यहां पर एक
- 3:37:40सेक्शन है। और मान लीजिए यहां पर एक
- 3:37:44सेक्शन है। ठीक है? अब आप यहां से एंटर
- 3:37:47करते हो। ठीक है? आपने यहां से एंटर किया।
- 3:37:49यहां से एंटर करने के बाद आपने खुद का
- 3:37:51एक्सेस कार्ड यहां पर लगाया। करेक्ट? यहां
- 3:37:54पर एक छोटा सा एक्सेस कार्ड डालने की जगह
- 3:37:55है। आपने खुद का एक्सेस कार्ड लगाया और आप
- 3:37:57बिल्डिंग के अंदर एंटर हो गए। अब अगर आपने
- 3:38:01जो एक्सेस कार्ड लगाया उससे हुआ क्या?
- 3:38:03उससे आप ऑथेंटिकेट हुए। ऑथेंटिकेट का मतलब
- 3:38:07अच्छा फैसल को बिल्डिंग के अंदर जाना है
- 3:38:08क्योंकि फैसल के पास एक्सेस कार्ड है।
- 3:38:10इसका मतलब यह फैसल है जो एंट्री कर रहा
- 3:38:12है। करेक्ट और मैंने एक्सेस कार्ड ऐसे
- 3:38:14दरवाजे पर लगा दिया और दरवाजा खुल गया और
- 3:38:17मैं अंदर हूं। तो मैं ऑथेंटिकेटेड हूं अब।
- 3:38:20ठीक है? मैंने खुद को ऑथेंटिकेट कर लिया।
- 3:38:22अब मैं एक नॉर्मल ह्यूमन हूं। ठीक है? हो
- 3:38:24सकता है यहां पर कोई एक रेस्ट्रिक्टेड
- 3:38:26सेक्शन हो। ठीक है? वहां पे जाना अलाउड ना
- 3:38:29हो। जैसे कि मान लीजिए यहां पर फ़ाइनेंस
- 3:38:31डिपार्टमेंट हो या कुछ यू नो किसी की शॉप
- 3:38:34है या कुछ कुछ भी हो वहां पे जाना अलाउड
- 3:38:37नहीं है मुझको। ठीक है? तो मान लीजिए अगर
- 3:38:39यह ऑफिस होता ऑफिस होता और मैंने खुद को
- 3:38:42ऑथेंटिकेट कर लिया यहां पर। मैं ऑफिस के
- 3:38:44अंदर घुस गया हूं। और यहां पर एक एडमिन
- 3:38:46डिपार्टमेंट है या फाइनेंस डिपार्टमेंट
- 3:38:48है। ठीक है? एडमिन डिपार्टमेंट में जाना
- 3:38:50ऐसे अलाउड नहीं है। तो मेरे पास एक्सेस
- 3:38:54होते हुए भी एक्सेस कार्ड होते हुए भी मैं
- 3:38:56एडमिन डिपार्टमेंट में एंटर नहीं कर
- 3:38:58पाऊंगा। ठीक है? मैं एडमिन डिपार्टमेंट के
- 3:39:00पास जा रहा हूं और एक्सेस कार्ड को लगा
- 3:39:02रहा हूं एडमिन डिपार्टमेंट के दरवाजे पर।
- 3:39:04वो देख रहा है। अच्छा यह फैजल है। एंटर
- 3:39:06करने की कोशिश कर रहा है। लेकिन इसको अलाउ
- 3:39:07नहीं करना है। करेक्ट? तो मुझे एक एरर भी
- 3:39:09पाएगी वहां पे टीटी एरर भी पाएगी और वो
- 3:39:12कहेगा कि नॉट नॉट दिस इज़ अ रेस्ट्रिक्टेड
- 3:39:14एरिया। ठीक है? तो यहां पर हो क्या रहा
- 3:39:16है? इस दरवाजे पर एडमिन एरिया के दरवाजे
- 3:39:18पर मुझे ऑथेंटिकेट तो किया जा रहा है।
- 3:39:20सिस्टम को समझ में आ रहा है। अच्छा ये
- 3:39:22फैसल है। लेकिन मुझे दरवाजे के अंदर नहीं
- 3:39:24जाने दे दिया जा रहा। दरवाजे को पार नहीं
- 3:39:27कर पा रहा मैं। क्यों? क्यों? क्योंकि मैं
- 3:39:28ऑथराइज नहीं हूं। अलाउड नहीं है अंदर जाना
- 3:39:31मुझे। ठीक है? क्योंकि मैं एडमिन
- 3:39:33डिपार्टमेंट को बिलोंग नहीं करता। ये
- 3:39:34सिस्टम को पता है। तो सिस्टम मुझे
- 3:39:36ऑथेंटिकेट तो कर पा रहा है। अच्छा कि ये
- 3:39:39फैसल है। और सिस्टम को ये भी पता है कि ये
- 3:39:42ऑथराइज़ नहीं है क्योंकि ये एडमिन
- 3:39:45डिपार्टमेंट है। करेक्ट? तो ये
- 3:39:47रेस्ट्रिक्टेड एरिया है। तो यहां पर ये
- 3:39:48अलाउड नहीं है। तो मुझे एरर दी जा रही है।
- 3:39:50तो ये हो गया ऑथराइज़ेशन इन एक्शन। ठीक है?
- 3:39:52तो यहां पर हो क्या रहा है? ऑथेंटिकेशन और
- 3:39:54ऑथराइजेशन दोनों साथ में काम करके ये
- 3:39:57डिसाइड कर रहे हैं कि किसको एक्सेस है और
- 3:39:58किसको नहीं है। ठीक है? तो ये होता है
- 3:40:01ऑथेंटिकेशन और ऑथराइजेशन। ठीक है?
- 3:40:04ऑथेंटिकेशन का मतलब आप मैंने मेरी आईडी जो
- 3:40:07है यानी कि एक्सेस कार्ड उसको स्कैन कर
- 3:40:09दिया। तो सिस्टम को पता चल गया अच्छा ये
- 3:40:10फैसल है। ऑथराइजेशन का मतलब आइडेंटिटी
- 3:40:14कंफर्म होने के बाद कि अच्छा ये फैसल है।
- 3:40:16क्या इस एक्सेस है इस एरिया का? यहां पर
- 3:40:18दरवाजे पर तो एक्सेस था यहां पर नीचे दरवा
- 3:40:20मेन डोर पर। ठीक है? क्योंकि ये ऑफिस का
- 3:40:23एक्सेस है मुझे तो मैं अंदर चला गया।
- 3:40:25लेकिन यहां पर एक्सेस नहीं था। तो यहां पर
- 3:40:27ऑथेंटिकेशन के बाद अच्छा उसने चेक किया कि
- 3:40:29अच्छा अंदर आने के लिए अलाउड है। अलाउड है
- 3:40:32तो आ जाइए अंदर। दरवाजा खुल गया। यहां पर
- 3:40:35मुझे ऑथेंटिकेट तो कर लिया उसने लेकिन
- 3:40:37ऑथराइजेशन के टाइम पे मुझे मना कर दिया
- 3:40:39उसने। उसने बोला नहीं भाई तो अलाउड नहीं
- 3:40:41है। अलाउड नहीं है बोल के मुझे अलाउ नहीं
- 3:40:44किया गया। तो यहां पर ऑथेंटिकेशन और
- 3:40:45ऑथराइजेशन दोनों अलग कांसेप्ट है। ठीक है?
- 3:40:49उम्मीद करता हूं आपको ये समझ में आया। ये
- 3:40:51समझना जरूरी है क्योंकि आगे चलके जब भी आप
- 3:40:53स्प्रिंग सिक्योरिटी या कोई भी एप्लीकेशन
- 3:40:55का की आप बात करो आप अगर उसमें ऑथेंटिकेशन
- 3:40:58बना रहे हो लॉग इन फॉर्म बना रहे हो तो
- 3:40:59आपको ये दोनों कांसेप्ट आना जरूरी है। मैं
- 3:41:03एक और चीज़ बता दूं ये जावा स्पेसिफिक
- 3:41:05कॉन्सप्ट कांसेप्ट नहीं है। ये जेनेरिक
- 3:41:07कांसेप्ट है। ठीक है? अगर आप कल को नोट js
- 3:41:09की एप्लीकेशन बनाते हो। नोट js का बैक एंड
- 3:41:12बनाते हो, फ्रंट एंड बनाते हो या आप गो
- 3:41:14लैंग में बनाते हो या आप कोई और लैंग्वेज
- 3:41:17यूज़ करते हो। Python में बनाते हो। ठीक
- 3:41:18है? Java में बनाते हो। कोई भी लैंग्वेज
- 3:41:20में बनाए हो ऑथेंटिकेशन और ऑथराइजेशन का
- 3:41:22कांसेप्ट सभी जगह होता है और आप कोई भी
- 3:41:26एप्लीकेशन बनाओ सिक्योरिटी अगर आप उसमें
- 3:41:28इंप्लीमेंट कर रहे हो तो ऑथेंटिकेशन क्या
- 3:41:29है? ऑथराइजेशन क्या है? ये सारी चीजें
- 3:41:32समझना काफी जरूरी है क्रिस्टल क्लियर
- 3:41:34तरीके से क्योंकि आगे चलके ये
- 3:41:36टर्मिनोलॉजीस काफी इस्तेमाल होती है कि
- 3:41:38ऑथेंटिकेशन क्या है? ऑथराइजेशन क्या है?
- 3:41:40या यूजर ऑथराइज़ नहीं है। क्या आपने यूजर
- 3:41:43को ऑथेंटिकेट किया है या नहीं? तो ये सारी
- 3:41:45जो टर्मिनोलॉजीस है ये समझना काफी जरूरी
- 3:41:47है। ठीक है? अगर हम एप्लीकेशन की बात करें
- 3:41:49तो देखिए ये एक एप्लीकेशन है सॉफ्टवेयर
- 3:41:51एप्लीकेशन। ठीक है? यहां पे है एक नॉर्मल
- 3:41:55यूजर मॉड्यूल। ठीक है? मान लीजिए और यहां
- 3:41:58पर है एक एडमिन मॉड्यूल। ठीक है? अब मैं
- 3:42:01एज अ यूजर अगर ऑथेंटिकेट करता हूं यहां
- 3:42:03पर। ठीक है? मैं एज अ यूजर अगर ऑथेंटिकेट
- 3:42:06करता हूं तो मुझे मैं मैं नॉर्मल यूजर
- 3:42:09हूं। मेरा रोल क्या है? मैं नॉर्मल यूजर
- 3:42:10हूं। ठीक है? तो मैं ये जो यूजर मॉड्यूल
- 3:42:13है उसकी एपीआई को एक्सेस कर सकता हूं। ठीक
- 3:42:16है? लेकिन क्या एडमिन एपीआई को एक्सेस
- 3:42:18करने का रोल है मेरे पास या ऑथराइज्ड हूं
- 3:42:21मैं? नहीं। तो अगर मैं एक्सेस करना चाहूं
- 3:42:23तो मुझे एरर आएगी। ठीक है? अगर मैं एडमिन
- 3:42:26की तरह लॉगिन करता हूं सिस्टम में एडमिन
- 3:42:28यूजरनेम पासवर्ड से तो मैं यूजर को भी
- 3:42:30एक्सेस कर सकता हूं और एडमिन को भी एक्सेस
- 3:42:32कर सकता हूं। ठीक है? तो यहां पर
- 3:42:33ऑथराइजेशन काम में आता है। एक नॉर्मल यूजर
- 3:42:36को एडमिन एपीआई का एक्सेस नहीं होगा। और
- 3:42:38अगर एडमिन लॉग इन करता है तो उसको एडमिन
- 3:42:40और यूजर दोनों का एक्सेस होगा। ठीक है? ये
- 3:42:42हो गया ऑथराइजेशन। ऑथेंटिकेशन मतलब आपको
- 3:42:46आपने यूजरनेम पासवर्ड डालकर खुद को
- 3:42:48ऑथेंटिकेट कर लिया और आइडेंटिफाई सिस्टम
- 3:42:50ने आइडेंटिफाई कर लिया आपको। ऑथराइजेशन
- 3:42:52मतलब इसको किस चीज का एक्सेस है, किस चीज
- 3:42:54का नहीं है। ठीक है? उम्मीद करता हूं इतना
- 3:42:57समझ में आया आपको। ठीक है? अब देखिए आप जब
- 3:43:00कभी भी अ एपीआईस बनाते हो। ठीक है? आप कभी
- 3:43:04भी एपीआई बनाते हो तो एक लीस्ट प्रिंसिपल
- 3:43:08लीस्ट प्रिविलेज प्रिंसिपल का। ठीक है?
- 3:43:11मैं लिख देता हूं यहां पे लीस्ट
- 3:43:15प्रिविलेज।
- 3:43:18ठीक है? लीस्ट लीस्ट प्रिविलेज का मतलब
- 3:43:20क्या है? देखिए आप कभी भी कोई भी एपीआई
- 3:43:23बनाते हो या किसी को भी एक्सेस देते हो।
- 3:43:26ठीक है? तो आप एक्सेस क्यों दोगे? क्योंकि
- 3:43:28उसको एक टास्क करने का अ टास्क करने का
- 3:43:32परमिशन होना चाहिए। राइट? तो आपको लीस्ट
- 3:43:35एक्सेस देना है। लीस्ट एक्सेस। सबसे छोटे
- 3:43:38लेवल का जो एक्सेस है वह देना है। यह एक
- 3:43:40इंपॉर्टेंट प्रिंसिपल है। ठीक है? आप जभी
- 3:43:42भी एक्सेस अह बेस्ड सिस्टम्स बनाते हो, तो
- 3:43:45लीस्ट प्रिविलेज हमेशा देना है और बस
- 3:43:48इसमें ऐसा कुछ बड़ी चीज नहीं है। लेकिन ये
- 3:43:50समझना जरूरी है कि ये क्यों देना है। ठीक
- 3:43:52है? क्योंकि अ अगर किसी टाइप का
- 3:43:54सिक्योरिटी ब्रीच होता है तो अगर आप अपने
- 3:43:57हर यूजर का एक्शंस को लिमिट करते हो तो जो
- 3:44:00ब्रीच का इंपैक्ट होगा वो काफी कम होगा।
- 3:44:02ठीक है? तो उम्मीद करता हूं कि ये
- 3:44:05हेल्पफुल रहा। ठीक है? ये कुछ कांसेप्ट्स
- 3:44:08थे जो मैं चाहता था कि आप सभी को समझ में
- 3:44:10आए।
- 3:44:17तो दोस्तों वेलकम करना चाहूंगा इस वीडियो
- 3:44:19में और इस वीडियो में हम बात करने वाले
- 3:44:21हैं स्प्रिंग सिक्योरिटी के आर्किटेक्चर
- 3:44:24के बारे में। अब देखिए अ आर्किटेक्चर हम
- 3:44:27इसीलिए सीख रहे हैं, समझ रहे हैं ताकि हम
- 3:44:29स्प्रिंग सिक्योरिटी को बेहतर तरीके से
- 3:44:31जाने और यह समझे कि वो इंटरनली किस तरीके
- 3:44:34से काम करता है। लेकिन जो बिगिनर्स हैं
- 3:44:36मैं जानता हूं अक्सर बिगिनर्स जो ये
- 3:44:38वीडियो देख रहे हैं उनके दिमाग में ऐसा
- 3:44:40क्वेश्चन आता होगा कि हमें अ स्प्रिंग
- 3:44:43सिक्योरिटी का आर्किटेक्चर क्यों समझना
- 3:44:44है? डायरेक्टली यूज़ कर लेते हैं ना उसको।
- 3:44:46अ सिक्योरिटी तो अप्लाई हो जाएगी हमारी
- 3:44:48एप्लीकेशन में। जी हां, अप्लाई हो जाएगी।
- 3:44:51लेकिन अगर आप एक सीरियस डेवलपर बनना चाहते
- 3:44:53हो, आगे चलकर अ आप अगर स्प्रिंग
- 3:44:56सिक्योरिटी में एडवांस काम करना चाहते हो,
- 3:44:57एडवांस प्रोडक्शन ग्रिड एप्लीकेशनेशंस
- 3:44:59बनाना चाहते हो, तो उसमें स्प्रिंग
- 3:45:01सिक्योरिटी के एडवांस फीचर्स भी इस्तेमाल
- 3:45:03होंगे। ठीक है? और लॉन्ग टर्म में आपको
- 3:45:06इंटरनली स्प्रिंग सिक्योरिटी कैसे काम
- 3:45:08करता है यह समझना बहुत जरूरी है। क्योंकि
- 3:45:10यहां पर जो टर्मिनोलॉजीस आप देख रहे हो
- 3:45:12जैसे कि फिल्टर चेन, सिक्योरिटी
- 3:45:14कॉन्टेक्स्ट ये सारी जो टर्मिनोलॉजीस है
- 3:45:17ये आपको आपकी टीम में काफी सुनाई देंगे।
- 3:45:20ठीक है? फ़्टर चेन, फ़िल्टर्स, अ सिक्योरिटी
- 3:45:23कॉन्टेक्स्ट और एरर्स में भी आपको दिखाई
- 3:45:25देगी। अगर आपको कोई एरर आता है, आप कोई
- 3:45:27कोड रन कर रहे हो और सिक्योरिटी रिलेटेड
- 3:45:28कोई एरर आता है, कोई बग आता है, तो उसमें
- 3:45:30भी ये टर्मिनोलॉजीस दिखाई देगी। तो आपको
- 3:45:32ये समझना जरूरी है कि स्प्रिंग सिक्योरिटी
- 3:45:35इंटरनली काम कैसे करता है। कौन से-कौ से
- 3:45:37कंपोनेंट्स होते हैं? हर कंपोनेंट का क्या
- 3:45:39रोल है? कौन से कंपोनेंट क्यों बिल्ड किए
- 3:45:42गए हैं। ठीक है? तो ये सारी चीजें समझना
- 3:45:44जरूरी है। और देखिए स्प्रिंग सिक्योरिटी
- 3:45:46के आर्किटेक्चर पे तो आपको बहुत सारी
- 3:45:48इनेशन ऑनलाइन मिल जाएगी। लेकिन मेरा गोल
- 3:45:51इस वीडियो में ये है कि मैं बिगिनर
- 3:45:52फ्रेंडली इन कंपोनेंट्स को इस आर्किटेक्चर
- 3:45:55को ब्रेकडाउन करूं और एकदम आसान शब्दों
- 3:45:58में आपको समझाऊं। ठीक है? तो शुरू करते
- 3:46:00हैं। देखिए सबसे पहले तो इस डायग्राम में
- 3:46:02यहां पर जो मैंने बनाया है सिंपल सा
- 3:46:04डायग्राम है। यहां पर राइट साइड पर आपको
- 3:46:06आपकी एप्लीकेशन के सारे के सारे
- 3:46:07कंट्रोलर्स दिखाई देंगे। ठीक है? अभी
- 3:46:09फिलहाल एक ही रेक्टेंगल डाला है लेकिन
- 3:46:11यहां पर समझ लीजिए बहुत सारे कंट्रोलर्स
- 3:46:13हैं आपके पास। ठीक है? तो कंट्रोलर्स यहां
- 3:46:15पर है और कंट्रोलर्स के बाद में है सर्विस
- 3:46:17लेयर, रेपोज़िटरी लेयर, डेटाबेस वो सब इसके
- 3:46:20बाद है। ठीक है? यहां पर मैं कंट्रोलर तक
- 3:46:22ही मैंने डायग्राम को स्टॉप कर दिया है।
- 3:46:24ठीक है? अब आपने अगर स्प्रिंग सिक्योरिटी
- 3:46:27की डिपेंडेंसी ऐड कर रखी है अपने
- 3:46:30एप्लीकेशन में तो स्प्रिंग सिक्योरिटी की
- 3:46:32एक डिपेंडेंसी आती है। अगर वो आपने ऐड कर
- 3:46:34रखी है। स्प्रिंग सिक्योरिटी को कॉन्फ़िगर
- 3:46:35कर रखा है तो कंट्रोलर्स के पहले ये सारी
- 3:46:39चीजें आएंगी। ठीक है? ये दोनों। ठीक है?
- 3:46:41तो ये क्या है? सबसे पहले तो देखिए यहां
- 3:46:43पर ये जो दो एरो देख रहे हो आप कि ये
- 3:46:46रिक्वेस्ट है। रिक्वेस्ट आ रही है आपकी
- 3:46:48एप्लीकेशन में और यहां से यहीं से
- 3:46:49रिस्पांस भी जा रहा है। ठीक है? तो ये
- 3:46:52रिक्वेस्ट आपकी एप्लीकेशन की ओर आ रही है।
- 3:46:53तो ये अब रिक्वेस्ट डायरेक्टली कंट्रोलर
- 3:46:55के पास नहीं आएगी। अगर आपने स्प्रिंग
- 3:46:57सिक्योरिटी कॉन्फ़िगर कर रखा है तो। सबसे
- 3:46:59पहले उस उसका वेलकम होगा फिल्टर चेन के
- 3:47:04थ्रू। ठीक है? अब फ़्टर चेन क्या है भाई?
- 3:47:06ये तो कुछ नया सुनने मिल गया। करेक्ट। तो
- 3:47:08देखिए फ़्टर चेन एक ऐसा कंपोनेंट है या मैं
- 3:47:12कहूंगा फ़्टर चेन का मतलब है सीरीज ऑफ़
- 3:47:14फ़िल्टर्स। अब फ़्टर्स क्या होता है? ये भी
- 3:47:17नहीं पता आपको। ठीक है? तो ये जो अंदर में
- 3:47:19रेक्टेंगल्स आप देख रहे हो ये सारे
- 3:47:21रेक्टेंगल्स मैंने तीन ही बनाए हैं लेकिन
- 3:47:22बहुत सारे होने चाहिए आइडली यहां पर। ठीक
- 3:47:24है? तो ये सारे है फिल्टर्स। तो ये एक
- 3:47:28रेक्टेंगल का मतलब है एक फ़्टर। ठीक है? और
- 3:47:30फ़्टर का मतलब क्या है? फ़्टर का मतलब है
- 3:47:33सिक्योरिटी चेक। तो ये एक फ़्टर है जो कोई
- 3:47:37एक चीज़ चेक करेगा। फिर ये दूसरा फ़िल्टर
- 3:47:39आएगा। यह कुछ दूसरी चीज़ चेक करेगा
- 3:47:41रिक्वेस्ट में। तीसरा फ़िल्टर आएगा। तीसरी
- 3:47:43चीज़ चेक करेगा। चौथा फ़्टर चौथी चीज़ चेक
- 3:47:46करेगा। और ऐसे करके हर फिल्टर कोई एक तरह
- 3:47:49की चेक इस रिक्वेस्ट पर करेंगे। ठीक है?
- 3:47:52तो ये एक सीरीज ऑफ फिल्टर्स है। ठीक है?
- 3:47:55तो इतना समझ में आ गया कि फिल्टर्स क्या
- 3:47:57है? फिल्टर्स एक तरीके का देखिए फ़्टर्स है
- 3:47:59ना जा यहां पर स्प्रिंग सिक्योरिटी में एक
- 3:48:02क्लास के फॉर्म में लिखे गए हैं। ये एक
- 3:48:03पीस ऑफ़ कोड है जो रिक्वेस्ट में कोई एक
- 3:48:07चीज़ चेक करने के लिए रिस्पांसिबल है। तो
- 3:48:09एक फ़िल्टर एक चीज़ चेक करेगा। ठीक है? और
- 3:48:12अलग-अलग तरह के सिक्योरिटी चेकक्स होते
- 3:48:13हैं। तो हर चेक के लिए एक फ़िल्टर बनाया
- 3:48:17गया है। ठीक है? तो मैं फ़्टर्स के बारे
- 3:48:19में बात करूंगा। कुछ आपको एग्जांपल
- 3:48:21फिल्टर्स के बारे में भी बताऊंगा। ठीक है?
- 3:48:23लेकिन अभी के लिए ये समझ लीजिए एक फ़्टर एक
- 3:48:25सिक्योरिटी चेक के लिए। ठीक है? और
- 3:48:28स्प्रिंग सिक्योरिटी में ऐसे सीरीज ऑफ़
- 3:48:30फ़िल्टर्स हैं। ठीक है? सीरीज ऑफ़ फ़िल्टर्स
- 3:48:32मतलब ऑर्डर में है सब के सब। ठीक है? और
- 3:48:34ये सीरीज ऑफ़ फ़िल्टर्स को ग्रुप करके कहा
- 3:48:36जाता है फ़्टर चेन। क्योंकि यह एक के बाद
- 3:48:39एक एग्ज़क्यूट होते हैं। जब भी रिक्वेस्ट
- 3:48:40हिट होती है, तो एक के बाद एक एग्ज़क्यूट
- 3:48:43होते हैं। सिक्योरिटी चेकक्स होती है। ठीक
- 3:48:45है? एक के बाद एक हर एक फ़िल्टर अ अपनी चीज़
- 3:48:49चेक करता है और फिर रिक्वेस्ट को आगे जाने
- 3:48:51देता है। ठीक है? तो इसीलिए ये चेन के
- 3:48:53फॉर्म में है। तो इसीलिए इसे फ़्टर चेन कहा
- 3:48:55जाता है क्योंकि ये चेन ऑफ़ फ़िल्टर्स है।
- 3:48:57ठीक है? उम्मीद करता हूं ये समझ में आ रहा
- 3:48:59है आपको। ठीक है? तो सिक्योरिटी स्प्रिंग
- 3:49:02सिक्योरिटी फिल्टर चेन का मतलब क्या है?
- 3:49:04यह एक सीरीज ऑफ सिक्योरिटी चेकक्स है जो
- 3:49:08आपके कंट्रोलर तक रिक्वेस्ट पहुंचने से
- 3:49:11पहले रन होती है। सिंपल इंटरव्यू में भी
- 3:49:14अगर पूछा जाए आप इस तरीके से उसको जवाब दे
- 3:49:17सकते हो। ठीक है? इंटरव्यू में इस तरीके
- 3:49:18से जवाब दे सकते हो। तो ये हो गया फ़्टर
- 3:49:21चेन का मतलब। अब देखिए फ़्टर चेन में कौन
- 3:49:24से कौन से फ़्टर्स हैं वो मैं आपको बता
- 3:49:26देता हूं। ठीक है? थोड़े इंपॉर्टेंट
- 3:49:27फ़िल्टर्स हैं। तो सबसे पहले एक फ़िल्टर है
- 3:49:29यूजरनेम पासवर्ड ऑथेंटिकेशन फ़्टर। ठीक है?
- 3:49:34यूजरनेम, पासवर्ड, ऑथेंटिकेशन फ़िल्टर।
- 3:49:36देखिए, अगर आपने स्प्रिंग सिक्योरिटी
- 3:49:37कॉन्फ़िगर कर रखा है तो हो सकता है आपने
- 3:49:42यूजरनेम और पासवर्ड का ऑथेंटिकेशन इनेबल
- 3:49:44कर रखा हो। और अगर यूजरनेम, पासवर्ड
- 3:49:45ऑथेंटिकेशन इनेबल्ड है, तो कोई एक पीस ऑफ़
- 3:49:48कोड होना चाहिए जो यह यूजरनेम, पासवर्ड
- 3:49:50करेक्ट है या नहीं, वो देखना चाहिए।
- 3:49:52करेक्ट? तो, यह जो फ़िल्टर है, यूजरनेम,
- 3:49:55पासवर्ड, ऑथेंटिकेशन फ़िल्टर, यह यूज़रनेम,
- 3:49:57पासवर्ड को वैलिडेट करता है कि यह करेक्ट
- 3:49:59है या नहीं। यह उस फिल्टर का काम है।
- 3:50:01दूसरा फिल्टर है ऑथराइजेशन फिल्टर। तो, वह
- 3:50:04चेक करेगा रोल्स और परमिशंस कि रिक्वेस्ट
- 3:50:06में रोल्स और परमिशन सही है या नहीं। आगे
- 3:50:08जा रही है रिक्वेस्ट। करेक्ट। सीएसआरएफ
- 3:50:11फ़्टर है एक। सीएसआरएफ फ़्टर सीएसआरएफ
- 3:50:13अटैक्स के अगेंस्ट एप्लीकेशन को प्रोटेक्ट
- 3:50:15करता है। ठीक है? आप सीएसआरएफ अटैक्स के
- 3:50:18बारे में पढ़ सकते हो Google करके ऑनलाइन।
- 3:50:20कॉर्स फ़्टर। तो कोर्स रिलेटेड जो
- 3:50:23सिक्योरिटी फीचर होता है, उसको हैंडल करने
- 3:50:25के लिए भी एक कॉर्स का अलग फ़िल्टर होता
- 3:50:26है। ठीक है? एक होता है जेडब्ल्यूटी
- 3:50:29फ़िल्टर बेसिक ऑथेंटिकेशन फ़िल्टर। तो जैसे
- 3:50:30जब भी आप JWT ऑथेंटिकेशन इंप्लीमेंट करते
- 3:50:33हो अपने एप्लीकेशन में। ठीक है? तो वहां
- 3:50:35पर ये JWT फ़िल्टर काम में आता है। अब JWT
- 3:50:38ऑथेंटिकेशन है क्या? ये एक तरीके का
- 3:50:40ऑथेंटिकेशन मैकेनिज़्म है टोकन बेस्ड। ठीक
- 3:50:42है? अगर आपको नहीं पता है तो पता है तो
- 3:50:44बढ़िया है। नहीं पता है तो टोकन बेस्ड
- 3:50:46ऑथेंटिकेशन को JWT ऑथेंटिकेशन बोलते हैं।
- 3:50:49ये एक टाइप का ऑथेंटिकेशन मेथड है। ठीक
- 3:50:51है? तो अलग-अलग टाइप के फ़िल्टर्स होते
- 3:50:53हैं। अब होता क्या है? देखिए यूजर एक बार
- 3:50:55ऑथेंटिकेट हो जाता है यहां पर फ़्टर चेन
- 3:50:57में तो उसकी जो आइडेंटिटी है ठीक है उसकी
- 3:51:01जो आइडेंटिटी है कि ये यूजर कौन है उसको
- 3:51:04स्टोर किया जाता है सिक्योरिटी
- 3:51:06कॉन्टेक्स्ट में ठीक है उसको स्टोर किया
- 3:51:08जाता है कहां सिक्योरिटी कॉन्टेक्स्ट में
- 3:51:10अब स्प्रिंग सिक्योरिटी कॉन्टेक्स्ट का ये
- 3:51:13काम है कि जो भी ऑथेंटिकेटेड यूजर है
- 3:51:16लॉक्ड इन यूजर है उसकी ऑथेंटिकेशन डिटेल्स
- 3:51:20ठीक है ऑथेंटिकेशन डिटेल्स और ऑथराइजेशन
- 3:51:22डिटेल्स को स्टोर करता है। तो देखिए
- 3:51:25एग्जांपल देता हूं। आपने एक एप्लीकेशन में
- 3:51:27लॉगिन कर दिया। यूजरनेम पासवर्ड डाल दिया।
- 3:51:29यूजरनेम पासवर्ड सही आ गया। यूजरनेम
- 3:51:32पासवर्ड सही है तो आप ऑथेंटिकेटेड और
- 3:51:35ऑथराइज़्ड यूजर हो। ठीक है? तो आपकी जो
- 3:51:37ऑथेंटिकेटेड ऑथेंटिकेशन डिटेल्स है और
- 3:51:40ऑथराइजेशन डिटेल्स है। ऑथराइजेशन डिटेल्स
- 3:51:42का मतलब आपको किस-किस लेवल का एक्सेस है।
- 3:51:45ये सारी चीजें सिक्योरिटी कॉन्टेक्स्ट में
- 3:51:46स्टोर हो जाती है। ताकि बार-बार अगर
- 3:51:48रिक्वेस्ट आए तो हर बार उसको यूजरनेम
- 3:51:50पासवर्ड ना पूछा जाए। तो वो एक हिसाब से
- 3:51:52मेमोरी की तरह स्टोर हो जाती है यहां पर।
- 3:51:54ठीक है? और हर कोई यानी कि ये रिक्वेस्ट
- 3:51:56आगे तो हर कोई सिक्योरिटी कंटक्स्ट में से
- 3:51:59एक्सेस कर सकता है ये ऑथेंटिकेशन डिटेल्स
- 3:52:01को। ठीक है? तो सिक्योरिटी कंटक्स्ट एक
- 3:52:03ऐसी चीज़ एक एक हिसाब से यहां पे अ जो
- 3:52:08अ जो लॉक्ड इन यूजर है उसकी डिटेल्स को
- 3:52:11स्टोर किया जाता है। ठीक है?
- 3:52:13फिर उसके बाद आता है अगर यूजर लॉक्ड इन
- 3:52:17है। देखिए अगर यूजर वैलिड नहीं है यानी कि
- 3:52:19यूजरनेम पासवर्ड आपने गलत दे दिया या टोकन
- 3:52:21गलत है। ऑथेंटिकेशन इनेशन गलत है तो यहीं
- 3:52:24पर रिक्वेस्ट को रिजेक्ट किया जाता है और
- 3:52:25वापस भेज दिया जाता है। कंट्रोलर तक तो
- 3:52:27आती भी नहीं है रिक्वेस्ट। ठीक है? लेकिन
- 3:52:29अगर तो अगर यूजरनेम पासवर्ड गलत है तो
- 3:52:32यहां पर सिक्योरिटी कंटेक्स्ट में भी उसकी
- 3:52:33इनेशन स्टोर नहीं होगी क्योंकि
- 3:52:35ऑथेंटिकेटेड ही नहीं है। यहीं से वापस चला
- 3:52:37जाएगा वो फ़्टर चेन से। ठीक है? और
- 3:52:39अनअथराइज़ का एरर भी आ जाएगा।
- 3:52:41लेकिन अगर यूजर ऑथेंटिकेट होता है तो सबसे
- 3:52:43पहले तो सिक्योरिटी कंटेक्स्ट में उसकी
- 3:52:45डिटेल स्टोर होगी और फिर रिक्वेस्ट आगे
- 3:52:47जाएंगी डिस्पैचर सर्लेट के पास। अब
- 3:52:48डिस्पैचर सर्वरेट एक ऐसा कंपोनेंट है। ठीक
- 3:52:51है? स्प्रिंग सिक्योरिटी का कंपोनेंट नहीं
- 3:52:53है। ये स्प्रिंग बूट का कंपोनेंट है जिसका
- 3:52:54काम है रिक्वेस्ट को देखना। और यह
- 3:52:57रिक्वेस्ट कौन से कंट्रोलर के पास जानी
- 3:52:59चाहिए वो डिसाइड करता है डिस्पैचर सर्वर।
- 3:53:02इसका नाम भी वैसे ही है। देखिए डिस्पैचर
- 3:53:04सर्लेट। तो वो डिस्पैच करेगा रिक्वेस्ट को
- 3:53:06एक पर्टिकुलर कंट्रोलर के पास और डिसाइड
- 3:53:08करेगा कि ये कंट्रोलर को ये रिक्वेस्ट
- 3:53:10हैंडल करनी चाहिए। ठीक है? तो ये होता है
- 3:53:12डिस्पैच सर्लेट और कंट्रोलर्स हो गए जो
- 3:53:15अपना-अपना काम करेंगे। ठीक है? तो ये है
- 3:53:18आर्किटेक्चर और इस तरीके से अ फ्लो होती
- 3:53:22है स्प्रिंग सिक्योरिटी में एक रिक्वेस्ट।
- 3:53:25ठीक है? तो आसान शब्दों में स्प्रिंग
- 3:53:27सिक्योरिटी में जो रिक्वेस्ट है अगर आप
- 3:53:29स्प्रिंग सिक्योरिटी को कॉन्फिगर कर रखे
- 3:53:31हो तो उसमें जो रिक्वेस्ट है वह सीरीज ऑफ
- 3:53:33फिल्टर्स से गुजरेगी। ठीक है? और ये सीरीज
- 3:53:36ऑफ़ फ़िल्टर कहां होगी? फ़्टर चेन में होगी।
- 3:53:38ठीक है? और यहां पर फ़्टर्स के जरिए यूजर
- 3:53:42को ऑथेंटिकेट किया जाएगा, ऑथोराइज़ किया
- 3:53:44जाएगा और जो हमारी एप्लीकेशन है, यानी कि
- 3:53:47जो कंट्रोलर से स्टार्ट हो रही है, यहां
- 3:53:48से यहां पे जो एप्लीकेशन है हमारी
- 3:53:50स्प्रिंग बूट की जो कोड है उसे प्रोटेक्ट
- 3:53:52किया जाएगा। ठीक है? ठीक है? और
- 3:53:53ऑथेंटिकेटेड यूजर की डिटेल आपको
- 3:53:56सिक्योरिटी कंटक्स्ट में मिलेगी। ठीक है?
- 3:53:58उम्मीद करता हूं ये सिंपल था और आपको समझ
- 3:54:01में आया।
- 3:54:08ठीक है दोस्तों? तो अब समय आ चुका है कि
- 3:54:11हम स्प्रिंग सिक्योरिटी को हैंड्स ऑन
- 3:54:14तरीके से देखें और इसके मैजिक को एक हिसाब
- 3:54:17से समझें। ठीक है? तो मैं क्या करने वाला
- 3:54:19हूं? मैंने यहां पर एक प्रोजेक्ट को
- 3:54:22बेसिकली ओपन कर लिया है। ठीक है? अब ये
- 3:54:24प्रोजेक्ट क्या है? यह एक बहुत ही सिंपल
- 3:54:27स्प्रिंग बूट का प्रोजेक्ट है। ठीक है? तो
- 3:54:29आप यहां पर अगर आएंगे यहां पर आपको आना है
- 3:54:32और यहां पर आप एक तरीके का कंट्रोलर आपको
- 3:54:34दिखाई देगा। बहुत ही सिंपल कंट्रोलर है।
- 3:54:36कुछ नहीं कर रहा है ये कंट्रोलर। ठीक है?
- 3:54:38ये कंट्रोलर सिर्फ अगर आप हेलो एंड पॉइंट
- 3:54:41को एक्सेस करते हो हेलो एंड पॉइंट को तो
- 3:54:43आपको यह हेलो बोल देगा बस और कुछ नहीं।
- 3:54:46ठीक है? काफी सिंपल एप्लीकेशन रखिए और
- 3:54:48जानबूझ के सिंपल रखिए क्योंकि सीखना हमें
- 3:54:50स्प्रिंग सिक्योरिटी है। ठीक है? तो
- 3:54:53स्प्रिंग सिक्योरिटी को बहुत ही अच्छी
- 3:54:55तरीके से हम समझेंगे कैसे काम कर रहा है,
- 3:54:57क्या कर रहा है और फिर आप ये जो नॉलेज है
- 3:55:00इसको लेके जाकर प्रोडक्शन ग्रेड
- 3:55:02एप्लीकेशनेशंस तो कभी भी बना सकते हो। ठीक
- 3:55:04है? तो ये है हमारी एप्लीकेशन। अब हम क्या
- 3:55:07करेंगे? ठीक है? यहां पर स्प्रिंग
- 3:55:09सिक्योरिटी को इनेबल करेंगे। ठीक है? तो
- 3:55:12स्प्रिंग सिक्योरिटी को इनेबल करने से
- 3:55:14पहले मैं ना आपको सबसे पहले तो ये
- 3:55:16एप्लीकेशन रन करके दिखा देना चाहता हूं।
- 3:55:17ठीक है? तो यहां पर आएंगे हम। अच्छा यहां
- 3:55:20पर नहीं और यहां पर ब्राउज़र में आ जाएंगे।
- 3:55:23ठीक है? और यहां पर मैं लिख दूंगा लोकल
- 3:55:25होस्ट कोलन ईटीईटी सश हेलो। ठीक है? और
- 3:55:29यहां पर चेक कर लेंगे कि एप्लीकेशन सही से
- 3:55:31रन हुई है या नहीं। रन तो हुई है। कोई
- 3:55:33दिक्कत वैसे आनी तो नहीं चाहिए। सिंपल सी
- 3:55:35एप्लीकेशन है। और यहां पर आप एंटर प्रेस
- 3:55:37करोगे। अच्छा एरर आ गई। ऐसे कैसे एरर आ गई
- 3:55:40यहां पर? क्या एरर आ गई भाई? स्लश हेलो
- 3:55:42नहीं है। मैप्ड स्लश हेलो और रिटर्न होना
- 3:55:46चाहिए। हेलो गेट मैपिंग। अच्छा देखो एक
- 3:55:48छोटी सी मिस्टेक तो मैंने यहां पर कर ही
- 3:55:50दी है इतने सिंपल एप्लीकेशन में भी कि
- 3:55:52रेस्ट कंट्रोलर नहीं लिखा मैंने। रेस्ट
- 3:55:54कंट्रोलर नहीं लिखते हो तो देखिए कंट्रोलर
- 3:55:56काम नहीं करेगा आपका। ठीक है? काफी सिंपल
- 3:55:58एप्लीकेशन थी। फिर भी रन नहीं हुई। और अब
- 3:56:01हमें हेलो दिखाई देगा। ठीक है? तो ये
- 3:56:03एप्लीकेशन हमें हेलो बोल रही है। ठीक है?
- 3:56:05बिल्कुल सिंपल। अब मैं स्प्रिंग
- 3:56:08सिक्योरिटी को इनेबल कर करूंगा इसमें। ठीक
- 3:56:10है? अब स्प्रिंग सिक्योरिटी को इनेबल करके
- 3:56:12हम क्या सीखेंगे? हम ये देखेंगे कि
- 3:56:14स्प्रिंग सिक्योरिटी का जो डिफ़ॉल्ट
- 3:56:15बिहेवियर है वो है क्या? ठीक है? तो बिना
- 3:56:18किसी कस्टमाइजेशन के स्प्रिंग सिक्योरिटी
- 3:56:20हमें देता क्या है? वो समझने मिलेगा हमें।
- 3:56:23तो यहां पर आ जाता हूं। ठीक है? यहां पर
- 3:56:24देखिए स्प्रिंग इनिशलाइजर ऑलरेडी ओपन है।
- 3:56:26अगर आपके पास ओपन नहीं है तो ओपन कर लीजिए
- 3:56:28और यहां पर जाइए और यहां पर सिक्योरिटी
- 3:56:32लिखिए। ठीक है? जैसे ही आप सिक्योरिटी
- 3:56:34लिखोगे तो देखिए आपको ये स्प्रिंग
- 3:56:36सिक्योरिटी आ जाएगा। हाइली कस्टमाइजेबल
- 3:56:38ऑथेंटिकेशन एंड एक्सेस कंट्रोल फ्रेमवर्क
- 3:56:41फॉर स्प्रिंग एप्लीकेशनेशंस। इसको सेलेक्ट
- 3:56:43कीजिए। ठीक है? ऐसे सेलेक्ट करोगे आप
- 3:56:45एक्सप्लोर पे क्लिक करोगे और नीचे स्क्रॉल
- 3:56:48डाउन करोगे। ठीक है? तो यहां पर आपको
- 3:56:51दिखाई देगा ये जो डिपेंडेंसी है स्प्रिंग
- 3:56:53बूट स्टार्टर सिक्योरिटी ये दिखाई देगी।
- 3:56:55इसको आपको कॉपी कर लेना है। ठीक है? यही
- 3:56:58डिपेंडेंसी है काम की और अपने प्रोजेक्ट
- 3:57:00में आ जाना है कोई भी प्रोजेक्ट में आप
- 3:57:02सिंपल प्रोजेक्ट बना सकते हो ऐसे हेलो
- 3:57:03कंट्रोलर बना सकते हो ठीक है और यहां पर
- 3:57:06पोmsl में चले जाना है आपको ठीक है ये
- 3:57:09सारी चीजों को कोलैप्स कर दूंगा और यहां
- 3:57:10पर डिपेंडेंसीज़ का आपको टैग दिख जाएगा
- 3:57:12देखिए डिपेंडेंसीज़ यहां पर डिपेंडेंसी
- 3:57:14लिखी हुई है तो यहां पर इन दो डिपेंडेंसी
- 3:57:16के बीच में मैंने स्प्रिंग बूट स्टार्टर
- 3:57:19सिक्योरिटी को भी ऐड कर दिया है ठीक है अब
- 3:57:21ये डिपेंडेंसी ऐड करने के बाद स्प्रिंग
- 3:57:24सिक्योरिटी हमारी एप्लीकेशन में एक्टिवेट
- 3:57:27हो जाएगाI
- 3:57:28ठीक है? हमने क्या किया? सिर्फ डिपेंडेंसी
- 3:57:30को ऐड किया। अभी कुछ किया भी नहीं है। ठीक
- 3:57:31है? मैं मेवन रीलोड कर लेता हूं क्योंकि
- 3:57:33ये तो स्टैंडर्ड प्रैक्टिस है। pmxl को टच
- 3:57:36किया। तो मेवन रीलोड तो करना जरूरी है। अब
- 3:57:38सारी जो डिपेंडेंसीज़ है स्प्रिंग बूट
- 3:57:41स्टार्टर सिक्योरिटी रिलेटेड यानी
- 3:57:42स्प्रिंग सिक्योरिटी रिलेटेड सारी की सारी
- 3:57:44हमारी एप्लीकेशन में आ चुकी है। अब मैं
- 3:57:46इसे रन करता हूं। ठीक है? अब जैसे ही रन
- 3:57:50करता हूं। ठीक है? रन करने के बाद आप
- 3:57:52बिहेवियर देखिएगा स्प्रिंग सिक्योरिटी का।
- 3:57:54ठीक है? अब मैं यहां पर आ जाता हूं
- 3:57:56ब्राउज़र में और ये जो हमारी यूआरएल पहले
- 3:57:59चल रही थी इसको रिफ्रेश कर लेता हूं। अब
- 3:58:00जैसे ही रिफ्रेश करता हूं तो देखिए ये
- 3:58:02क्या आ गया भाई? प्लीज साइन इन और लॉग इन
- 3:58:05पर आ गए हम लोग। लॉग इन तो हम गए भी नहीं।
- 3:58:08हमने हेलो पर गए थे। करेक्ट हम हेलो पर
- 3:58:11थे। हेलो को एंटर दबा दो तो लॉग इन आ जा
- 3:58:13रहा है। ठीक है? तो ये तो चल नहीं रहा। अब
- 3:58:17अब हेलो एक्सेसिबल नहीं है। हमने चेंज
- 3:58:19किया ही क्या है। हमने सिर्फ स्प्रिंग
- 3:58:21सिक्योरिटी को ऐड किया है। ठीक है? और
- 3:58:23यहां पर देखिए प्लीज साइन इन और ये
- 3:58:25यूजरनेम और पासवर्ड मांग रहा है। ये फॉर्म
- 3:58:27भी हमने नहीं बनाया। ये एप्लीकेशन में
- 3:58:29फॉर्म थी नहीं। मैंने आपको दिखाया ये
- 3:58:31एप्लीकेशन में सिर्फ हेलो कंट्रोलर था।
- 3:58:34बहुत ही सिंपल एप्लीकेशन थी लेकिन फिर ये
- 3:58:36फॉर्म आ गया। ठीक है? कोई बात नहीं। अब
- 3:58:39हुआ क्या है? इसको समझने की कोशिश करते
- 3:58:42हैं। तो देखिए यहां पर ना स्प्रिंग बूट का
- 3:58:45एक बढ़िया सा फीचर प्ले में आ गया है।
- 3:58:47जिसे कहते हैं ऑटो कॉन्फ़िगरेशन। हमने
- 3:58:49स्प्रिंग सिक्योरिटी को कॉन्फ़िगर नहीं
- 3:58:51किया है। ठीक है? तो स्प्रिंग बूट क्या
- 3:58:53करता है? देखता है कि कौन सी-कौ सी
- 3:58:55डिपेंडेंसीज़ ऐडेड है। तो देखता है कि
- 3:58:57स्प्रिंग सिक्योरिटी भी एक डिपेंडेंसी है
- 3:58:59जो ऐडेड है। तो इसका मतलब ये सिक्योरिटी
- 3:59:01ऐड करना चाहता है। तो जो डिफ़ॉल्ट बिहेवियर
- 3:59:03है उसको बाय डिफ़ॉल्ट कॉन्फ़िगर कर दिया
- 3:59:05स्प्रिंग बूट ने। और आपको यहां पर ये
- 3:59:07डिफ़ॉल्ट बिहेवियर के तौर पे ये साइन इन
- 3:59:09पेज दिख गया। ठीक है? साइन इन पेज दिख
- 3:59:12गया। अब साइन इन पेज पे हम यूजर आईडी और
- 3:59:14पासवर्ड डालें कहां से? हमें तो नहीं पता।
- 3:59:17तो मैं क्या करूंगा? यहां पर आऊंगा। ठीक
- 3:59:20है?
- 3:59:21यहां पर आएंगे और यहां पर तो यहां पर आप
- 3:59:25देखिए यहां पर आपको कहीं तो आप सिक्योरिटी
- 3:59:27को सर्च कर लीजिएगा अगर आपको यह मिल नहीं
- 3:59:29रहा है तो यहां पर आपको दिखाई देना चाहिए
- 3:59:32जनरेटेड सिक्योरिटी पासवर्ड ठीक है
- 3:59:36जनरेटेड सिक्योरिटी पासवर्ड तो यह हमें
- 3:59:39डिफॉल्ट पासवर्ड दे रहा है एक डमी पासवर्ड
- 3:59:42जिसकी मदद से आप लॉगिन कर सकते हो अपने
- 3:59:44एप्लीकेशन में और यहां पर यह बोल भी रहा
- 3:59:46है कि दिस जनरेटेड पासवर्ड इज़ फॉर
- 3:59:47डेवलपमेंट यूज़ ओनली ठीक है डेवलपमेंट यूज़
- 3:59:50के क्यों है? क्योंकि आपने कॉन्फ़िगर ही
- 3:59:52नहीं किया है कुछ। तो, स्प्रिंग क्या कर
- 3:59:54रहा है? स्प्रिंग सिक्योरिटी एक बाय
- 3:59:56डिफ़ॉल्ट ऑटो जनरेटेड पासवर्ड आपको दे दे
- 3:59:58रहा है। और बोल रहा है कि ये डेवलपमेंट
- 4:00:00यूज़ के लिए ही है। ठीक है? योर सिक्योरिटी
- 4:00:02कॉन्फ़िगरेशन मस्ट बी अपडेटेड बिफोर रनिंग
- 4:00:04इट इंटू प्रोडक्शन। ये बाय डिफ़ॉल्ट मैंने
- 4:00:06दिया है। इसको प्रोडक्शन में इस्तेमाल
- 4:00:08नहीं करना। ठीक है? ये तो चलो, बात हो गई
- 4:00:11पासवर्ड की, तो मैं पासवर्ड ले लेता हूं।
- 4:00:14और यूजरनेम बाय डिफ़ॉल्ट होता है एडमिन। और
- 4:00:17पासवर्ड मैं पेस्ट कर दूंगा यह वाला और कर
- 4:00:19दूंगा साइन इन। अच्छा इनवैलिड
- 4:00:22क्रेडेंशियल्स। अच्छा इनवैलिड क्रेडेंशियल
- 4:00:24इसलिए आ रहा है क्योंकि बाय डिफ़ॉल्ट जो
- 4:00:25यूजर होता है वो यूजर नाम से होता है।
- 4:00:27एडमिन से नहीं। मैंने एडमिन डाल दिया था।
- 4:00:29तो यूजर और पासवर्ड डाल देना है और साइन
- 4:00:31इन करना है। तो देखिए अब ये चल जाएगा। आप
- 4:00:33देख पा रहे हो। चल जाएगा। ठीक है? तो ये
- 4:00:36पासवर्ड आपको स्प्रिंग सिक्योरिटी दे रहा
- 4:00:39है। आपने दिया है पासवर्ड? जी नहीं। हमने
- 4:00:41नहीं दिया है। हमने कॉन्फ़िगर नहीं किया
- 4:00:43है। हमने कुछ नहीं किया है। ठीक है? तो ये
- 4:00:46है डिफॉल्ट बिहेवियर स्प्रिंग सिक्योरिटी
- 4:00:49का। अब यहां पर कुछ चीजों के बारे में बात
- 4:00:51करता हूं। ठीक है? लॉग्स को थोड़ा देखते
- 4:00:52हैं हम लोग। ठीक है? देखिए अक्सर आपको जब
- 4:00:54भी कुछ सीखना है मेरे हिसाब से ना आपको
- 4:00:58लॉग्स थोड़े एक बार पढ़ लेने चाहिए
- 4:01:00क्योंकि लॉग्स में काफी सारी इनेशन आती है
- 4:01:02और उसको पढ़ के हमें समझ में आता है कि
- 4:01:05अच्छा बिहाइंड द सीन्स हो क्या रहा है।
- 4:01:07ठीक है? तो देखिए यहां पर आप देखोगे टॉमcड
- 4:01:10इनिशलाइज़ हो रहा है। ये सारे तो
- 4:01:11स्टैंडर्ड प्रोसेससेस जो हो रहा है। यहां
- 4:01:12पर सिक्योरिटी ये सब ये सब एप्लीकेशन
- 4:01:14स्टार्ट हो रहा है। ठीक है? स्टार्टिंग
- 4:01:16सर्लेट अगेन। ठीक है? रूट इनिशियलाइजेशन
- 4:01:19कंप्लीट। और यहां पर देखिए यूजर डिटेल
- 4:01:22सर्विस ऑटो कॉन्फ़िगरेशन। यहां पर स्प्रिंग
- 4:01:25सिक्योरिटी पिक्चर में आ जाता है। ठीक है?
- 4:01:27और वो क्या करता है? एक सिक्योरिटी
- 4:01:28पासवर्ड जनरेट करके उसको थ्रो कर देता है
- 4:01:30कंसोल पर। और यहां पर आप देखोगे ग्लोबल
- 4:01:32ऑथेंटिकेशन मैनेजर कॉन्फ़िगरर्ड विद यूजर
- 4:01:35डिटेल सर्विस बीन विद नेम इन मेमोरी यूजर
- 4:01:39डिटेल मैनेजर। तो एक यूजर डिटेल सर्विस से
- 4:01:42ठीक है? देखिए एक ऑथेंटिकेशन मैनेजर
- 4:01:43कॉन्फ़िगर हुआ है और इन मेमोरी यूजर
- 4:01:46डिटेल्स मैनेजर इन तो यूजर की जो डिटेल है
- 4:01:47वो इन मेमोरी स्टोर हो रही है और यहां पर
- 4:01:49देखिए टॉम कैट रन हो रहा है। ठीक है? और
- 4:01:51यहां पर आएंगे तो स्टार्ट हो गई है
- 4:01:53एप्लीकेशन। ठीक है? तो ये सारी चीजें हो
- 4:01:56रही है और यहां पर डिस्पैच सर्लेट भी आपको
- 4:01:57देखने मिलेगा। डिस्पैच सर्ेट एक ऐसा
- 4:02:00कंपोनेंट है जो कि डिस्पैच करता है
- 4:02:02रिक्वेस्ट को सही कंट्रोलर के पास। ठीक
- 4:02:04है? यहां पर फ़्टर चेन कहीं दिखाई नहीं
- 4:02:07दिया। फ़िल्टर अच्छा फ़िल्टर चेन कहीं दिखाई
- 4:02:10नहीं दिया है मुझे। ठीक है? लेकिन कोई बात
- 4:02:12नहीं फिल्टर चेन दिखाई नहीं दिया लेकिन
- 4:02:15कोई बात नहीं फिल्टर चेन है एक्चुअली
- 4:02:17एक्शन में लेकिन उस पर कोई लॉग्स नहीं है।
- 4:02:19अगर लॉग्स होते तो बढ़िया मजा आता। मैं
- 4:02:21आपको वो भी दिखा देता। ठीक है? तो देखिए
- 4:02:23यहां पर स्प्रिंग सिक्योरिटी का डिफ़ॉल्ट
- 4:02:25बिहेवियर ये है कि यहां पर बाय डिफ़ॉल्ट सब
- 4:02:29कुछ ऑथेंटिकेट हो जाता है। आप स्प्रिंग
- 4:02:31सिक्योरिटी को कहो ऑथेंटिकेट करने के लिए
- 4:02:33या मत कहो। बाय डिफॉल्ट सब कुछ ऑथेंटिकेट
- 4:02:37हो जाता है। ठीक है? और आपको ये सारी
- 4:02:41चीजें स्प्रिंग सिक्योरिटी को बताने की
- 4:02:43कोई जरूरत है नहीं। अब देखिए मैंने लॉग इन
- 4:02:46तो कर लिया। अब मैं चाहता हूं लॉग आउट
- 4:02:47करूं। तो लॉगउ कैसे करूं मैं? यहां पर कोई
- 4:02:49लॉगउ का बटन तो है नहीं। तो मैं अपने सेशन
- 4:02:52को लॉगउ कर सकता हूं। ठीक है? लॉगउ करने
- 4:02:54के लिए मुझे लॉगउ नाम के पेज पर जाना
- 4:02:55होगा। स्लैश लॉगउ तो देखिए मैं बहुत ज़ूम्ड
- 4:02:58इन हूं। 300% से ज़ूम्ड इन हूं। ठीक है?
- 4:03:00स्लैश लॉगउ पे अगर आप जाते हो तो देखिए
- 4:03:02लॉगउ पेज भी दिया हुआ है। ठीक है? और यहां
- 4:03:04पर आप लॉगउ भी बोल सकते हो। लॉग आउट किया
- 4:03:06तो देखिए यू हैव बीन साइन आउट। अ फिर से
- 4:03:08आप दोबारा जाओगे हेलो पर तो आपको लॉग इन
- 4:03:11पेज दिखाई देगा। आप नहीं जा सकते हेलो पर।
- 4:03:14हेलो इज सिक्यर्ड। तो यहां पर ऑब्जरवेशन
- 4:03:17क्या थी? ऑब्जरवेशन सबसे पहले ये है कि
- 4:03:20बाय डिफॉल्ट एवरीथिंग इज़ ऑथेंटिकेटेड।
- 4:03:23सारी चीजें बाय डिफ़ॉल्ट ऑथेंटिकेटेड है।
- 4:03:27ठीक है? जैसे ही आप स्प्रिंग सिक्योरिटी
- 4:03:28को ऐड करते हो सारी चीजें सारी चीजों का
- 4:03:30मतलब है कोई भी एंड पॉइंट आप बना लो कोई
- 4:03:32भी एंड पॉइंट प्री एक्जिस्टिंग एंड पॉइंट
- 4:03:34थी आपके एप्लीकेशन में वो सारी की सारी
- 4:03:36ऑथेंटिकेटेड है और यहां पर जो डिफॉल्ट
- 4:03:39ऑथेंटिकेशन मैकेनिज्म आपको दिखाई दे रहा
- 4:03:41है ये डिफॉल्ट ऑथेंटिकेशन मैकेनिज्म ये है
- 4:03:43फॉर्म बेस्ड ऑथेंटिकेशन यानी कि यहां पर
- 4:03:47ऑथेंटिकेट करने के लिए यूजर को फॉर्म्स का
- 4:03:50इस्तेमाल किया जा रहा है। क्या ये फॉर्म्स
- 4:03:51हमने बनाए हैं? जी नहीं हमने नहीं बनाए।
- 4:03:53ये इनबिल्ट फॉर्म्स हैं जो स्प्रिंग
- 4:03:55सिक्योरिटी हमें प्रोवाइड कर दे रहा है।
- 4:03:57ठीक है? तो पहला ऑब्जरवेशन क्या था?
- 4:03:59एवरीथिंग इज़ ऑथेंटिकेटेड। सब कुछ
- 4:04:01ऑथेंटिकेटेड है बाय डिफ़ॉल्ट बिहेवियर। ठीक
- 4:04:03है? डिफ़ॉल्ट बिहेवियर में सबसे पहला
- 4:04:05ऑब्जरवेशन ये था। दूसरा ऑब्जरवेशन क्या
- 4:04:07है? कि एक डिफ़ॉल्ट फॉर्म हमें प्रोवाइड
- 4:04:10किया जाता है। और ये जो ऑथेंटिकेशन टाइप
- 4:04:12है, ये है फॉर्म बेस्ड ऑथेंटिकेशन।
- 4:04:14क्योंकि इसमें फॉर्म्स का इस्तेमाल किया
- 4:04:15हुआ है। ठीक है? और ये बाय डिफ़ॉल्ट है।
- 4:04:17हमने नहीं किया है। ठीक है? थर्ड
- 4:04:19ऑब्जरवेशन क्या है? हमारे पास एक इनबिल्ट
- 4:04:22यूजर बाय डिफॉल्ट क्रिएट हो जाता है।
- 4:04:24ऑटोमेटिक हमने क्रिएट किया है। जी नहीं यह
- 4:04:28बाय डिफॉल्ट क्रिएट होता है। ठीक है? और
- 4:04:30यूजर की जो क्रेडेंशियल्स है ठीक है? वो
- 4:04:34बाय डिफ़ॉल्ट क्रिएट होती है और यहां पर
- 4:04:35आपको कंसोल पर देखने मिल जाएगी और ये ना
- 4:04:38चेंज होते रहती है। ठीक है? ये चेंज होते
- 4:04:40रहती है। तो ऐसा नहीं है कि ये यूजर ये
- 4:04:42पासवर्ड प्रिंट हुआ है। तो आप रिस्टार्ट
- 4:04:44करोगे एप्लीकेशन को तो ये पासवर्ड चेंज हो
- 4:04:46जाएगा। तो अभी कुछ A7 से स्टार्ट हो रहा
- 4:04:49था। ठीक है? ठीक है? और अभी आप देखोगे तो
- 4:04:50ये 0 बी से स्टार्ट हो रहा है। देखिए
- 4:04:52पासवर्ड चेंज सर्वर रिस्टार्ट पे जो है
- 4:04:55पासवर्ड चेंज हो रहा है। ठीक है? तो ये
- 4:04:58यूजर बाय डिफ़ॉल्ट क्रिएट होता है और इसकी
- 4:05:00पासवर्ड हर रिस्ट पर चेंज होती है क्योंकि
- 4:05:02ये इन मेमोरी यूजर का पासवर्ड है। ये डमी
- 4:05:05यूजर है जो क्रिएट किया जा रहा है ताकि आप
- 4:05:08अपनी जो एप्लीकेशन है उसको यूज़ कर पाओ।
- 4:05:11ठीक है? यूजर नेम इसका बाय डिफ़ॉल्ट यूजर
- 4:05:14है और पासवर्ड इसका जो भी प्रिंटेड है वो
- 4:05:16है प्रिंटेड। वो है पासवर्ड और आपके लिए
- 4:05:19पासवर्ड ये नहीं रहेगा। आपके लिए जो
- 4:05:20पासवर्ड आपकी एप्लीकेशन जनरेट कर रही है
- 4:05:22वो रहेगा। ठीक है? मेरा पासवर्ड देख के
- 4:05:24कॉपी नहीं करने लग जाना। आपकी एप्लीकेशन
- 4:05:26नया पासवर्ड दूसरा पासवर्ड जनरेट करेगी।
- 4:05:28ठीक है? और आप कोई भी एप्लीकेशन की यूआरएल
- 4:05:32को एक्सेस करने की कोशिश करो। ठीक है?
- 4:05:35आपने कोई भी तरह का कोड लिखा हो वो आप
- 4:05:37एक्सेस नहीं कर पाओगे विदाउट प्रॉपर
- 4:05:39ऑथेंटिकेशन। यह है डिफ़ॉल्ट बिहेवियर। ठीक
- 4:05:42है? मैं आपको थोड़ी रिक्वेस्ट भी बता देता
- 4:05:44हूं। देखिए, यहां पर राइट क्लिक कीजिए
- 4:05:45ब्राउज़र में। आपको करने की जरूरत है नहीं।
- 4:05:47आप देख भी सकते हो मैं क्या कर रहा हूं।
- 4:05:48तो यहां पर इंस्पेक्ट कीजिए। ठीक है? और
- 4:05:51यहां पर नेटवर्क में जाइए। अब आप नेटवर्क
- 4:05:52में जाओगे। अच्छा इंस्पेक्ट कर रहा हूं तो
- 4:05:54मुझे यह अ क्रेडेंशियल्स मांग रहा था। ठीक
- 4:05:57है? तो अभी देखिए नेटवर्क में आओगे ना आप
- 4:05:59और मैं नेटवर्क में आने के बाद यहां पर ना
- 4:06:01आपको सारे नेटवर्क कॉल्स दिखाई देंगे।
- 4:06:04यहां पर आने के बाद मैं सिर्फ हेलो पे
- 4:06:05जाता हूं। ठीक है? हेलो। हेलो पे मैं एंटर
- 4:06:08दबाता हूं। तो देखिए मुझे यूजरनेम पासवर्ड
- 4:06:10पूछ रहा है। ये तो मैं इसको कैंसिल करता
- 4:06:11हूं। ठीक है? तो यहां पर देखते हैं क्या
- 4:06:14हुआ है। तो देखिए मैं हेलो पर जा रहा हूं।
- 4:06:16हेलो पर यह हेलो की रिक्वेस्ट थी मेरी।
- 4:06:18करेक्ट? हेलो पर मैं 304 नॉट फाउंड करके
- 4:06:22मुझे रीडायरेक्ट किया जा रहा है लॉग इन
- 4:06:24पेज पर। करेक्ट? और अब लॉग इन पेज पर अगर
- 4:06:28मैं मेरे क्रेडेंशियल्स डालूं तो मैं यूजर
- 4:06:30डाल रहा हूं। और फिर पासवर्ड ये जो भी है
- 4:06:32इसको मैं कॉपी कर रहा हूं और फिर यहां पर
- 4:06:34आके ये पासवर्ड भी डाल रहा हूं। तो जैसे
- 4:06:36ही मैं यूजरनेम पासवर्ड डालता हूं तो
- 4:06:38देखिए यहां पर अच्छा ये क्या हो गया? एरर
- 4:06:42आ गई। ओके। एक हिसाब से हेलो पर जाना है
- 4:06:46मुझे। ठीक है? तो हेलो पर अगर मैं आता हूं
- 4:06:47तो देखिए हेलो पर अगर मैं आऊंगा तो यहां
- 4:06:50पर ना हेलो की रिक्वेस्ट जो थी देखिए ये
- 4:06:52हेलो की रिक्वेस्ट है। इसमें मुझे 200 ओके
- 4:06:54मिल चुका है। ठीक है? ईटीईटी पोर्ट पे रन
- 4:06:57हो रहा है ये। और अगर आप यहां पर कुछ
- 4:07:01हेटर्स नहीं दिखाई दे रहे। 1 मिनट यहां पर
- 4:07:04आप देखोगे तो प्रीव्यू में जाइए रिस्पांस।
- 4:07:09ठीक है? तो यहां पर यह वैल्यू देखिए। यह
- 4:07:11जो जेई सेशन आईडी है। ठीक है? यह कुकी है
- 4:07:14जे सेशन आईडी। तो, इसकी मदद से आपकी जो
- 4:07:16ऑथेंटिकेशन जर्नी है, उसको ट्रैक किया जा
- 4:07:18रहा है ब्राउज़र में। ठीक है? और यहां पर
- 4:07:21आपको सारी डिटेल्स रिक्वेस्ट की दिख
- 4:07:23जाएगी। ठीक है? तो, इस तरीके से अ
- 4:07:27स्प्रिंग सिक्योरिटी का डिफ़ॉल्ट बिहेवियर
- 4:07:28होता है। ठीक है? डिफ़ॉल्ट बिहेवियर तो आप
- 4:07:30समझ ही गए होंगे। डिफ़ॉल्ट बिहेवियर ये है
- 4:07:32कि सब कुछ ऑथेंटिकेट कर दो बाय डिफ़ॉल्ट।
- 4:07:35ठीक है? यूजर भले बोले ना बोले, अब आपको
- 4:07:38इसके ऊपर काम करना है। ठीक है? आप आपने
- 4:07:40देखिए स्प्रिंग सिक्योरिटी को अपनी
- 4:07:42एप्लीकेशन में ऐड कर दिया। सब कुछ
- 4:07:44ऑथेंटिकेट हो गया। फॉर्म बेस्ड ऑथेंटिकेशन
- 4:07:46इनेबल्ड हो गया। अब आपको कुछ कस्टमाइजेशन
- 4:07:48करना है तो वो आपको करना है। आपको उसके
- 4:07:50लिए कोड लिखना है। कॉन्फ़िगरेशंस लिखनी है
- 4:07:52कि मुझे ये ऐसे इस तरीके से सिक्योर
- 4:07:54चाहिए। यह वाली एपीआई में इस तरीके की
- 4:07:56सिक्योरिटी चाहिए। वो सारी चीजें आप
- 4:07:59डिफाइन करो और चीजें आपके हिसाब से चलेगी।
- 4:08:01फिर उम्मीद करता हूं यह इतना हेल्पफुल रहा
- 4:08:03आपके लिए।
- 4:08:10तो देखिए दोस्तों आगे बढ़ते हैं और यहां
- 4:08:13पर मैंने एप्लीकेशन तो चला ली और यहां पर
- 4:08:16आप देख रहे हो डिफॉल्ट सेटिंग्स में हमें
- 4:08:19यहां पर सिक्योरिटी का पासवर्ड दिया जाता
- 4:08:20है। ठीक है? इस पासवर्ड को आप इस्तेमाल कर
- 4:08:22सकते हो इस फॉर्म पर। अब देखिए मैं एक
- 4:08:25यूजर हूं। ठीक है? और मैं नहीं चाहता कि
- 4:08:29मैं कंसोल से ये पासवर्ड उठाऊं। ठीक है?
- 4:08:31तो मैं खुद का पासवर्ड सेट करना चाहता
- 4:08:33हूं। यूजरनेम भी सेट करना चाहता हूं। वो
- 4:08:35मैं कैसे करूं? तो मैं मैं एक आपको सिंपल
- 4:08:37तरीका बता देता हूं। तो आप यहां पर आ सकते
- 4:08:39हो। रिसोर्सेज में जा सकते हो। एप्लीकेशन
- 4:08:41प्रॉपर्टीज को खोल लीजिए। तो ये आपकी वो
- 4:08:44फाइल है जहां पर आप सारे कॉन्फ़िगरेशंस को
- 4:08:46डिफाइन कर सकते हो। और स्प्रिंग बूट ये
- 4:08:48कॉन्फ़िगरेशंस को देखेगा। ठीक है? तो यहां
- 4:08:50पर मैं क्या करूंगा? यहां पर सिक्योरिटी
- 4:08:52का यूजरनेम और पासवर्ड दोनों मेंशन कर
- 4:08:55सकता हूं। और वो यूजरनेम और पासवर्ड अ यूज़
- 4:08:58होगा ऑथेंटिकेशन के लिए। और अगर यहां पर
- 4:09:02ये दो प्रॉपर्टीज मिलती है यूजरनेम
- 4:09:04पासवर्ड स्प्रिंग सिक्योरिटी को तो वो ऑटो
- 4:09:06जनरेट नहीं करेगा पासवर्ड। ठीक है? मैं
- 4:09:08आपको दिखा देता हूं अभी फिलहाल। तो हमें
- 4:09:10कहना है स्प्रिंग सिक्योरिटी यूजर और फिर
- 4:09:14यहां पर कहना है नेम। ठीक है? तो इसकी मदद
- 4:09:18से हम क्या करेंगे? यूजरनेम डिफाइन कर
- 4:09:21पाएंगे। और फिर यहां पर कहना है पासवर्ड
- 4:09:23ऐसे। ठीक है? तो मान लीजिए मैं यूजरनेम
- 4:09:26चाहता हूं एडमिन। ठीक है? और पासवर्ड
- 4:09:28चाहता हूं एडमिन 1 2 3 ठीक है? काफी सिंपल
- 4:09:31रखा है पासवर्ड। और यह एक्चुअली रेकमेंडेड
- 4:09:33नहीं है। इसे आप हार्ड कोड करो प्रॉपर्टीज
- 4:09:35फाइल में। ठीक है? एडवांस लेवल के
- 4:09:36एप्लीकेशनेशंस बनाते हो तो ऐसे नहीं करना।
- 4:09:38लेकिन मैं आपको दिखा रहा हूं चीजें कैसे
- 4:09:39करते हैं। ठीक है? तो यहां पर एडमिन लिखना
- 4:09:41है। अच्छा सबसे पहले तो रिफ्रेश कर लूं।
- 4:09:43तो यहां पर एडमिन लिखना है और फिर एडमिन 1
- 4:09:462 3 अब इसको साइन इन करते हैं। तो देखिए
- 4:09:49यहां पर आ गया मैं। और यह ऑथेंटिकेटेड है।
- 4:09:51अभी मैं रूट यूआरएल पे जा रहा हूं। इसके
- 4:09:53लिए कुछ दिखाई नहीं दे रहा लेकिन हेलो पर
- 4:09:55मैं एक्सेस कर सकता हूं। ठीक है? तो इस
- 4:09:57तरीके से आप हार्ड कोर कर सकते हो चीजों
- 4:10:01को। ठीक है? आप हार्ड कोड कर सकते हो
- 4:10:03चीजों को यहां अ आपकी जो प्रॉपर्टीज फाइल
- 4:10:08है उसमें। ठीक है?
- 4:10:16तो दोस्तों, अभी फिलहाल आप फॉर्म बेस्ड
- 4:10:18ऑथेंटिकेशन की मदद से ईपीआई को तो एक्सेस
- 4:10:21कर पा रहे हो। ठीक है? आप लॉग आउट भी कर
- 4:10:23सकते हो यहां से और लॉग इन भी। ठीक है? यह
- 4:10:25लॉग इन पेज है और यहां पर आपको लॉगउ पेज
- 4:10:27भी मिल जाएगा। लेकिन मैं इस फॉर्म का
- 4:10:31इस्तेमाल नहीं करना चाहता। ठीक है? तो इस
- 4:10:34फॉर्म बेस्ड ऑथेंटिकेशन को तो हमने देख
- 4:10:35लिया है लेकिन एक और तरह का ऑथेंटिकेशन
- 4:10:38मैकेनिज्म है स्प्रिंग सिक्योरिटी में
- 4:10:40जिसे कहते हैं बेसिक ऑथेंटिकेशन। ठीक है?
- 4:10:44उसमें फॉर्म नहीं होगा और उसके लिए आपको
- 4:10:46थोड़ी कस्टमाइजेशंस करनी होगी और उसके लिए
- 4:10:50आपको सिक्योरिटी का जो फिल्टर चेन होता है
- 4:10:52जिसके बारे में मैंने बात की थी उस फिल्टर
- 4:10:54चेन में थोड़ी सी मॉडिफिकेशंस करनी होगी।
- 4:10:56क्या मॉडिफिकेशंस करनी होगी वो अब हम
- 4:10:58देखेंगे और इस फॉर्म को हटाएंगे। ठीक है?
- 4:11:00तो यहां पर आ जाएंगे और यहां पर मैं क्या
- 4:11:03करूंगा? यहां पर ये सिंपल सी ऐप है। एक ही
- 4:11:06फाइल है इसमें। लेकिन मैं यहां पर एक
- 4:11:08दूसरी जावा क्लास बना लूंगा और इसे कहूंगा
- 4:11:11सिक्योरिटी कॉन्फिग। ऐसे। ठीक है? अब
- 4:11:15देखिए, यह कॉन्फ़िगरेशन फाइल है सिक्योरिटी
- 4:11:19की। ठीक है? यह क्या है? यह कॉन्फ़िगरेशन
- 4:11:21फाइल है सिक्योरिटी की। तो, सबसे पहले तो
- 4:11:25मैं यहां पर इस फाइल को एज़ ए कॉन्फ़िगरेशन
- 4:11:28मार्क कर दूंगा। एज़ ए कॉन्फ़िगरेशन मार्क
- 4:11:30क्यों करना है? हमें स्प्रिंग बूट को या
- 4:11:32स्प्रिंग फ्रेमवर्क को, स्प्रिंग बूट को
- 4:11:34हमें ये बताना है कि ये जो फाइल है, ये
- 4:11:36कॉन्फ़िगरेशन फाइल है। ठीक है? मैं इसकी इस
- 4:11:38फाइल की जो क्लास फाइल है उसको भी ओपन कर
- 4:11:41लिया और यहां पर सोर्सर्सेस को भी डाउनलोड
- 4:11:42कर लिया। ठीक है? तो थोड़ी डॉक्यूमेंटेशन
- 4:11:44देखने मिल जाएगा हमें। देखिए ये जो फाइल
- 4:11:46है अच्छा यहां पर काफी कुछ दिया हुआ है।
- 4:11:48ये सब कुछ तो नहीं पढ़ने वाले हम। अ लेकिन
- 4:11:52अच्छा यहां पर जी नहीं काफी सारी इनेशन
- 4:11:55है। काफी सारी इनेशन है। बट फिलहाल के लिए
- 4:11:58मैं मैं चाह रहा था कि मैं आपको इसका
- 4:11:59एक्चुअल डेफिनेशन दिखाऊं डॉक्यूमेंटेशन
- 4:12:01में से।
- 4:12:02लेकिन कॉन्फ़िगरेशन क्लास का ये मतलब है कि
- 4:12:05अगर आप कोई भी अ कॉन्फ़िगरेशन डिफाइन करते
- 4:12:08हो जावा कोड के अंदर तो अ स्प्रिंग बूट
- 4:12:12उसे पिकअप करना चाहिए। करेक्ट? तो आप क्या
- 4:12:14कर सकते हो? उस क्लास को मार्क कर सकते हो
- 4:12:16एज़ ए कॉन्फ़िगरेशन। और उसके लिए आपको
- 4:12:18कॉन्फ़िगरेशन एनोटेशन का इस्तेमाल करना है।
- 4:12:20ठीक है? तो स्प्रिंग और स्प्रिंग
- 4:12:23सिक्योरिटी इस क्लास को देखेंगे और समझ
- 4:12:26जाइए कि यहां पर आपने कुछ कॉन्फ़िगरेशंस
- 4:12:28डिफाइन कर रखे हैं। ठीक है? एक और एनोटेशन
- 4:12:30हम लिखेंगे यहां पर जो कि है इनेबल वेब
- 4:12:34सिक्योरिटी। ठीक है? इससे क्या होगा? यह
- 4:12:37एनोटेशन सिक्योरिटी इनेबल करेगा। ठीक है?
- 4:12:39और यहां पर मैं क्या लिखने वाला हूं? मैं
- 4:12:41एक मेथड लिखने वाला हूं जो कि सिक्योरिटी
- 4:12:44का फ़्टर चेन रिटर्न करेगा। क्योंकि हम
- 4:12:46सिक्योरिटी फ़्टर चेन को मॉडिफाई करने वाले
- 4:12:49हैं। ठीक है? और मेथड का नाम तो मैं कुछ
- 4:12:51भी दे सकता हूं। सिक्योरिटी फ़िल्टर चेन दे
- 4:12:53देता हूं। और यहां पर हम लेंगे HTTP
- 4:12:56सिक्योरिटी का एक ऑब्जेक्ट यहां पर इस
- 4:13:00तरीके से। ठीक है? और यहां पर इस मेथड को
- 4:13:03क्लोज़ कर देंगे ऐसे। ठीक है? इतना हो चुका
- 4:13:06है। अब यहां पर मैं क्या करूंगा? इस जो ये
- 4:13:09जो मेथड है इसको मैं एज़ अ बीन मार्क कर
- 4:13:12दूंगा। ठीक है? अब बीन का मतलब तो आप
- 4:13:14जानते हो ये स्प्रिंग मैनेज कंपोनेंट मैं
- 4:13:17चाहता हूं ये स्प्रिंग मैनेज कंपोनेंट
- 4:13:18रहे। और सिक्योरिटी फिल्टर का जो बीन है
- 4:13:21वो मैं रिटर्न कर रहा हूं स्प्रिंग बूट
- 4:13:23को। ठीक है? अब यहां पर हम थोड़ी सी
- 4:13:25कस्टमाइजेशन करेंगे। तो यहां पर देखिए
- 4:13:27सिक्योरिटी का ऑब्जेक्ट है हमारे पास। तो
- 4:13:28मैं कहूंगा http डॉट ऑथोराइज रिक्वेस्ट।
- 4:13:32ठीक है? और यहां पर मैं कहूंगा ऑथोराइज़
- 4:13:38रिक्वेस्ट। इस तरीके से और यहां पर इस
- 4:13:42तरीके से लैम्ब्डा सिंटेक्स का इस्तेमाल
- 4:13:44करके मैं कहूंगा ऑथोराइज़ रिक्वेस्ट डॉट
- 4:13:47एनी रिक्वेस्ट। तो कोई भी रिक्वेस्ट आए
- 4:13:49अगर सारी रिक्वेस्ट है ऑथेंटिकेटेड।
- 4:13:52ठीक है? तो मैं कह रहा हूं यहां पर सारी
- 4:13:54रिक्वेस्ट जो भी आती है वो ऑथेंटिकेटेड
- 4:13:57है। ऐसा मैंने लिख दिया है। और फिर यहां
- 4:13:58पर मैं कहूंगा http डॉट http बेसिक। देखिए
- 4:14:03मैं बेसिक ऑथेंटिकेशन इनेबल कर रहा हूं
- 4:14:05विथ डिफ़ॉल्ट्स। ठीक है? बेसिक ऑथेंटिकेशन
- 4:14:09इनेबल कर रहा हूं विथ डिफ़ॉल्ट्स। डिफ़ॉल्ट
- 4:14:11कॉन्फ़िगरेशन के साथ बेसिक ऑथेंटिकेशन को
- 4:14:12इनेबल कर रहा हूं। और फिर रिटर्न कर रहा
- 4:14:14हूं http डॉट बिल्ट यहां पर। ठीक है? तो
- 4:14:19बस इतनी सी मेथड है। ठीक है? इतनी सी मेथड
- 4:14:21के साथ हमारा काम हो जाएगा। हमने
- 4:14:23सिक्योरिटी कॉन्फ़िगरेशन को डिफाइन कर
- 4:14:25लिया। अब मैं अगर इसे रन करता हूं। ठीक
- 4:14:27है? इसको रन करते हैं और देखते हैं क्या
- 4:14:28आउटपुट मिलता है। तो यहां पर देखिए सबसे
- 4:14:30पहले तो हमने हार्ड कोड कर रखी है
- 4:14:31एप्लीकेशन प्रॉपर्टीज में यूजर नेम
- 4:14:33पासवर्ड। तो यहां पर पासवर्ड तो कोई
- 4:14:34प्रिंट नहीं होगी। एप्लीकेशन ऐसी ही
- 4:14:36स्टार्ट हो गई। अब यहां पर अगर आप आते हो
- 4:14:38और हेलो जो यूआरएल है उसे एक्सेस करने की
- 4:14:41कोशिश करते हो। ठीक है? ओके। अच्छा तो अभी
- 4:14:43तो मैं साइन आउट हूं। अच्छा मैंने लॉग आउट
- 4:14:46नहीं किया था खुद को। तो मेरा सेशन जो है
- 4:14:48वो एक्टिव है। ठीक है। देखिए लॉगउ नाम का
- 4:14:50जो पेज है वो अभी है नहीं। ठीक है? तो मैं
- 4:14:52क्या करूंगा? यहां से कुकीज़ को हटा दूंगा।
- 4:14:55तो मेरी जो ऑथेंटिकेशन रिलेटेड इनेशन थी
- 4:14:58पहले जो सेव थी वो चली जाएगी। ठीक है? अब
- 4:15:01मैं हेलो पर आ जाता हूं। हेलो। अच्छा हेलो
- 4:15:04पर भी आ रहा हूं। ठीक है। तो मैं मुझे
- 4:15:07सेशन क्लियर क्लियर करने में थोड़ी सी
- 4:15:09दिक्कत हो रही थी। सेशन क्लियर नहीं हो
- 4:15:11रहा था। तो मैंने ब्राउज़र को रिस्टार्ट कर
- 4:15:12दिया। ठीक है? तो सेशन हट गया है। इसका
- 4:15:14मतलब जो मेरा ऑथेंटिकेटेड सेशन था वो हट
- 4:15:17गया है। और मैंने जैसे ही हेलो एंड पॉइंट
- 4:15:19को एक्सेस करने की कोशिश की। यहां पर
- 4:15:21देखिए मैंने हेलो एंड पॉइंट टाइप किया।
- 4:15:22यहां पर फॉर्म नहीं दिखाई दिया मुझे। ये
- 4:15:24ब्राउज़र का पॉप अप दिखाई दिया। ठीक है?
- 4:15:25देखिए मैं जैसे ही हेलो को एक्सेस करता
- 4:15:27हूं। मुझे ये ब्राउज़र का पॉप अप दिखाई
- 4:15:29देता है। ठीक है? तो फॉर्म हट गया है। ठीक
- 4:15:31है? फॉर्म हट गया है और हम बेसिक
- 4:15:33ऑथेंटिकेशन पर है और यहां पर मैं एडमिन
- 4:15:35टाइप करूंगा और यहां पर एडमिन 1 2 3 या जो
- 4:15:38भी पासवर्ड आपने एप्लीकेशन प्रॉपर्टीज
- 4:15:40फाइल में लिख रखा है उसको साइन इन करेंगे
- 4:15:42तो देखिए यहां पर हेलो दिखाई दे रहा है
- 4:15:43आपको ठीक है लॉगिन आप कर रहे हो बिना
- 4:15:47फॉर्म्स के कैसे कर रहे हो लॉग इन बिना
- 4:15:49फॉर्म्स के अब बेसिक का बेसिक ऑथेंटिकेशन
- 4:15:53को आप पोस्टमैन में भी इस्तेमाल कर सकते
- 4:15:55हो पोस्टमैन में कैसे इस्तेमाल करना है
- 4:15:56मैं वह भी दिखा देता हूं आपको ठीक है तो
- 4:15:59यहां पर आ जाते हैं
- 4:16:07अब यह जो बेसिक ऑथेंटिकेशन है इसको आप
- 4:16:09पोस्टमैन में भी इस्तेमाल कर सकते हो।
- 4:16:15तो अब ये सारा ऑथेंटिकेशन का जो सिस्टम
- 4:16:17आपने यहां पर देखा ये आप पोस्टमैन में भी
- 4:16:20ट्राई कर सकते हो। तो क्या है? पोस्टमैन
- 4:16:21में जाना है आपको। पोस्टमैन ओपन है। यहां
- 4:16:24पर एक नई रिक्वेस्ट बना लेनी है और आपको
- 4:16:26यह जो यूआरएल है इसको पेस्ट कर देना है।
- 4:16:28ठीक है? अब देखिए पोस्टमैन में एक तरीका
- 4:16:31है जिसकी मदद से आप यहां पर ऑथेंटिकेशन की
- 4:16:35जो डिटेल्स है वो आप ऑथराइजेशन टैब में
- 4:16:38पास कर सकते हो। ठीक है? अब यहां पर
- 4:16:39इन्हहेरिट ऑर्थ बाय पैरेंट बाय डिफ़ॉल्ट
- 4:16:41सिलेक्टेड होता है। तो आपको क्या करना है?
- 4:16:43यहां पर क्लिक करना है और यहां पर देखिए
- 4:16:45बेसिक ऑथ का ऑप्शन है। ठीक है? बेसिक ऑथ
- 4:16:48को सेलेक्ट कर लीजिए। तो यहां पर देखिए
- 4:16:50यूजरनेम पासवर्ड पूछा जाएगा आपको। तो
- 4:16:52यूजरनेम तो एडमिन है। पासवर्ड में टाइप कर
- 4:16:54दीजिए एडमिन 1 2 3 ठीक है? और इसको सेंड
- 4:16:57करके देखिए। सेंड करोगे तो यह रिक्वेस्ट
- 4:16:59चल जाएगी। अगर आप यह डिटेल्स नहीं भेजते
- 4:17:03हो तो मैं अगर नो ऑथ सेलेक्ट करता हूं और
- 4:17:05एक्सेस करने की ट्राई करता हूं तो देखिए
- 4:17:07401 अन ऑथराइज़्ड और यहां पर ये बोल रहा है
- 4:17:09मुझे कि पास द करेक्ट ऑथेंटिकेशन
- 4:17:11क्रेडेंशियल्स। इसका मतलब क्या है? यह
- 4:17:13एपीआई जो है वो ऑथेंटिकेटेड है और इसको
- 4:17:16एक्सेस करने के लिए आपको लगेगी एक आपको
- 4:17:20लगेगा यूजरनेम पासवर्ड यानी कि ऑथेंटिकेशन
- 4:17:22डिटेल्स। ठीक है? तो आपको यहां पर आना है
- 4:17:24बेसिक ऑथ में यूजरनेम पासवर्ड एंटर कीजिए
- 4:17:27और जो भी एंटर कर रहे हो इसको सेंड कीजिए।
- 4:17:29तो देखिए यहां पर सारी डिटेल्स ये जे सेशन
- 4:17:31आईडी वगैरह ये सब सेट हो जाएगी। कुकीज़
- 4:17:33हेडर्स आप देख सकते हो सारी चीजें। ठीक
- 4:17:35है? तो जे सेशन आईडी क्या करता है? जे
- 4:17:38सेशन आईडी आपकी जो ऑथेंटिकेशन की सेशन है
- 4:17:41उसको मैनेज करता है। तो अगर आप ब्राउज़र
- 4:17:43में भी एंटर करते हो। ठीक है? तो ब्राउज़र
- 4:17:46में भी अगर आप यहां पर आओगे इंस्पेक्ट और
- 4:17:48यहां पर एप्लीकेशन में जाइए और लोकल होस्ट
- 4:17:50ईटी80 को सेलेक्ट कीजिए। अच्छा यहां पर
- 4:17:52अभी दिखाई नहीं दे रही है। स्टोरेज में
- 4:17:54जाइए। अच्छा यहां पर दिखाई नहीं दे रही
- 4:17:57है। सेशन स्टोरेज में भी दिखाई नहीं दे
- 4:17:59रही है। अच्छा यहां पर तो दिखाई नहीं दे
- 4:18:02रही है। लेकिन अगर आप नेटवर्क में जाओगे
- 4:18:06और यहां पर जाओगे तो यहां पर आपको दिखाई
- 4:18:08देगी कुकी के तौर पे जे सेशन आईडी। देखिए
- 4:18:12ये कुकी की तरफ तौर पे सेव्ड है। तो यहां
- 4:18:14पर कुकी में दिखाई देती है क्या? कुकीज़
- 4:18:15में जाते हो अगर हां तो कुकीज़ में दिखाई
- 4:18:18दे रही है देखिए आपको कुकीज़ में एप्लीकेशन
- 4:18:20में कुकीज़ के अंदर दिखाई दे रही है जे
- 4:18:22सेशन आईडी तो ऐसे काम करता है पोस्टमैन
- 4:18:24में और ब्राउज़र में बेसिक ऑथेंटिकेशन हमने
- 4:18:27यहां पर किया क्या है उसको एक बार रिवाइज़
- 4:18:29कर लेते हैं देखिए हमने एक कस्टम
- 4:18:31कॉन्फ़िगरेशन डिफाइन की है जहां पर हम
- 4:18:33सिक्योरिटी फ़्टर चेन को थोड़ा सा मॉडिफाई
- 4:18:35कर रहे हैं। ठीक है? हम ये कह रहे हैं कि
- 4:18:37फॉर्म बेस्ड ऑथेंटिकेशन जो है आपके पास
- 4:18:40उसको इस्तेमाल ना करें और बेसिक
- 4:18:42ऑथेंटिकेशन का इस्तेमाल किया जाए। हमने
- 4:18:44छोटी सी कॉन्फ़िगरेशन लिखी है उसके लिए
- 4:18:46जहां पर हम ये बोल रहे हैं कि बेसिक
- 4:18:47ऑथेंटिकेशन का इस्तेमाल करो और सिक्योरिटी
- 4:18:50फिल्टर चेन के ऑब्जेक्ट को हम एज अ बीन
- 4:18:52रिटर्न कर रहे हैं। और इस फाइल की जानकारी
- 4:18:55स्प्रिंग बूट को देने के लिए हमने इसे
- 4:18:57कॉन्फ़िगरेशन मार्क कर रखा है और वेब
- 4:18:59सिक्योरिटी को इनेबल भी कर रखा है। उम्मीद
- 4:19:02करता हूं यह हेल्पफुल रहा है और आप अपने
- 4:19:05मशीन पर यह सब कुछ कॉन्फ़िगर भी कर पाए हो।
- 4:19:14तो चलिए दोस्तों बात करते हैं इन मेमोरी
- 4:19:17ऑथेंटिकेशन के बारे में। ठीक है? अब ये इन
- 4:19:19मेमोरी ऑथेंटिकेशन क्या है? देखिए फिलहाल
- 4:19:22आपने जो कोड लिखा है यहां पर मैंने उसमें
- 4:19:26यूजर की जो क्रेडेंशियल्स है यानी कि
- 4:19:28यूजरनेम और पासवर्ड को डिफाइन किया है।
- 4:19:30यानी कि एक यूजर एग्ज़िस्ट करता है हमारे
- 4:19:32स्प्रिंग सिक्योरिटी और स्प्रिंग बूट
- 4:19:34एप्लीकेशन में। ठीक है? अब ये यूजर कहां
- 4:19:37एग्ज़िस्ट करता है? क्या ये यूजर डेटाबेस
- 4:19:39में एक्सिस्ट करता है? जी नहीं यह यूजर
- 4:19:41एग्ज़िस्ट करता है इन मेमोरी। ठीक है?
- 4:19:43लेकिन हमने इसे अह डिक्लेअ किया है या
- 4:19:46इसकी चीजें या क्रेडेंशियल्स डिफाइन किए
- 4:19:49हैं प्रॉपर्टीज फाइल में। ठीक है? अब यहां
- 4:19:51पर प्रॉपर्टीज फाइल में तो आप यूज़र्स
- 4:19:54डिफाइन कर सकते हो इस तरीके से। लेकिन आप
- 4:19:56एक ही यूजर के क्रेडेंशियल्स डिफाइन कर
- 4:19:58सकते हो। तो ये लिमिटेशन है प्रॉपर्टीज़
- 4:19:59फाइल की। अब देखिए जनरली आप अगर एप्लीकेशन
- 4:20:02पे काम करते हो तो मल्टीपल यूज़र्स होते
- 4:20:04हैं। मल्टीपल रोल्स होते हैं उसके। ठीक
- 4:20:06है? अलग-अलग तरह के यूज़र्स होते हैं
- 4:20:08एप्लीकेशन में। तो एक यूजर से तो काम होता
- 4:20:10नहीं है। अनलेस एंड अंटिल अगर आप कोई
- 4:20:12सिंपल एप्लीकेशन या सिंगल यूजर एप्लीकेशन
- 4:20:14बना रहे हो तो। ठीक है? जनरली प्रोडक्शन
- 4:20:17ग्रेड एप्लीकेशनेशंस मल्टी यूजर
- 4:20:18एप्लीकेशनेशंस होती है। और इसीलिए आपको यह
- 4:20:21पता होना चाहिए कि मल्टीपल यूज़र्स को किस
- 4:20:24तरीके से स्प्रिंग बूट में मैनेज किया
- 4:20:26जाए। तो इसके लिए मल्टी यूजर ऑथेंटिकेशन
- 4:20:29या मल्टीपल यूज़र्स को आप किस तरीके से
- 4:20:31मैनेज और स्टोर कर सकते हो। सिक्योरिटी के
- 4:20:33स्टैंड पॉइंट से ऑथेंटिकेट ऑथराइज कर सकते
- 4:20:35हो ये जरूरी है। ठीक है? तो हम क्या करने
- 4:20:38वाले हैं? इन मेमोरी ऑथेंटिकेशन का
- 4:20:40इस्तेमाल करके हम मल्टीपल यूज़र्स बनाने
- 4:20:42वाले हैं। और इन मेमोरी ऑथेंटिकेशन का
- 4:20:44मतलब है कि जो यूजर है वो कोड में
- 4:20:47एक्सिस्ट करेगा। डेटाबेस में नहीं। जनरली
- 4:20:49आप एप्लीकेशन बनाते हो तो डेटाबेस में
- 4:20:52यूज़र्स एक्सिस्ट करते हैं। और जो
- 4:20:53ऑथेंटिकेशन होता है वो डेटाबेस के यूज़र्स
- 4:20:55के अगेंस्ट होता है। वहां पर भी पहुंचेंगे
- 4:20:57हम। लेकिन फिलहाल इन मेमोरी के बारे में
- 4:21:00बात करते हैं। स्टेप बाय स्टेप पढ़ेंगे।
- 4:21:01फिर उन यूज़र्स को डेटाबेस की ओर भी लेके
- 4:21:04जाएंगे। ठीक है? तो देखिए यहां पर अब हमने
- 4:21:06क्या किया हुआ है? प्रॉपर्टीज में एक यूजर
- 4:21:09के क्रेडेंशियल्स डाल दिए। ठीक है? और अगर
- 4:21:11आप ये ऐप चलाते हो और एंड पॉइंट को एक्सेस
- 4:21:15करते हो तो ये क्रेडेंशियल्स के बिहाफ पर
- 4:21:17आपको एप्लीकेशन की एक्सेस दी जाती है।
- 4:21:20लेकिन मैं चाहता हूं मेरा एप्लीकेशन जो है
- 4:21:22मल्टी यूजर रहे। ठीक है? एक यूजर नहीं
- 4:21:24मुझे सिंगल यूजर नहीं चाहिए। मुझे चाहिए
- 4:21:27क्या चाहिए? मुझे चाहिए मल्टी यूजर
- 4:21:29एप्लीकेशन। तो इसके लिए मैं क्या करूंगा?
- 4:21:32मैं इसे कमेंट कर दूंगा। ठीक है? इसको
- 4:21:34कमेंट करना जरूरी है। अब मैं सिक्योरिटी
- 4:21:36कॉन्फ़िगरेशन में आ जाऊंगा। यहां पर मैंने
- 4:21:38सिक्योरिटी कॉन्फ़िगरेशन डिफाइन कर रखा है।
- 4:21:40अब यहां पर मैं अ एक कोड लिखूंगा जिसके
- 4:21:44जरिए मैं यूजर यूजर डिटेल्स सर्विस की जो
- 4:21:48बीन है, ठीक है? अ उसको क्रिएट करूंगा। अब
- 4:21:52यूजर डिटेल सर्विस क्या है? ठीक है? यूजर
- 4:21:55डिटेल सर्विस की बीन क्यों बनानी है? तो
- 4:21:57देखिए आप स्प्रिंग सिक्योरिटी का इस्तेमाल
- 4:21:59करेंगे तो यहां पर मैं लिख देता हूं यूजर
- 4:22:01डिटेल सर्विस एक हिसाब से यूजर डिटेल
- 4:22:04देखिए यहां पर आपको यूजर डिटेल सर्विस
- 4:22:06दिखाई देगी यूजर डिटेल्स भी दिखाई दे रही
- 4:22:07है और यूजर डिटेल सर्विस ये दोनों जो है
- 4:22:10इनबिल्ट अ इंटरफसेस है स्प्रिंग
- 4:22:13सिक्योरिटी के हमने क्रिएट नहीं किए तो
- 4:22:14यूजर डिटेल सर्विस में अगर आप ऐसे लिखते
- 4:22:16हो और कंट्रोल प्रेस करके इसके अंदर जाते
- 4:22:19हो यहां पर डाउनलोड सोर्सर्सेस मैं कर
- 4:22:21लूंगा ठीक है तो यूजर डिटेल सर्विस है
- 4:22:24क्या ये एक ऐसा अह इंटरफ़ेस है जिसके ज़रिए
- 4:22:29स्प्रिंग सिक्योरिटी अह देखता है यूज़र की
- 4:22:32इनेशन को। तो देखिए कोर इंटरफ़ेस व्हिच
- 4:22:35लोड्स द यूजर स्पेसिफिक डेटा। तो इस
- 4:22:38इंटरफ़ेस की मदद से सिक्योरिटी के लिए यानी
- 4:22:41कि ऑथेंटिकेशन ऑथराइज़ेशन के लिए स्प्रिंग
- 4:22:43फ्रेमवर्क को काम करने के लिए जो यूजर
- 4:22:45इनेशन लोड की जाती है, वह इस इंटरफ़ेस की
- 4:22:48मदद से की जाती है। ठीक है? और यह इंटरफ़ेस
- 4:22:52ही है अह इनबिल्ट इंटरफ़ेस। ठीक है? हमने
- 4:22:54क्रिएट नहीं किया यह इंटरफ़ेस को। तो देखिए
- 4:22:56इसमें एक मेथड भी है लोड बाय यूजरनेम जो
- 4:22:59कि लोकेट करता है यूजर को बेस्ड ऑन द
- 4:23:02यूजरनेम। देखिए आपको अगर ऑथेंटिकेट करना
- 4:23:03है यूजर को तो आपकी उसकी इंफॉर्मेशनेशन तो
- 4:23:06लोड करनी होगी। आप इन मेमोरी लोड कीजिए या
- 4:23:09डेटाबेस से लोड कीजिए। आप कहीं से भी लोड
- 4:23:11कीजिए लेकिन लोड तो करनी ही होगी। ठीक है?
- 4:23:13तो यूजर डिटेल्स सर्विस की मदद से
- 4:23:14स्प्रिंग सिक्योरिटी जो है यूजर की
- 4:23:16डिटेल्स को लोड करता है। बस इतना समझ
- 4:23:18लीजिए। ठीक है? अब लोड कहां से करता है?
- 4:23:20उसका सोर्स क्या है? ये डिपेंड करता है आप
- 4:23:22किस टाइप के एप्लीकेशन बना रहे हो। आप
- 4:23:24फाइल से लोड कर सकते हो। यूजर की इनेशन आप
- 4:23:27डेटाबेस से लोड कर सकते हो। आप इन मेमोरी
- 4:23:30लोड कर सकते हो। डिपेंडिंग ऑन आप किस
- 4:23:31तरीके की एप्लीकेशन बना रहे हो। आप कहीं
- 4:23:33से भी लोड कर सकते हो। ठीक है? तो ये तो
- 4:23:35क्लियर हो गया यूजर डिटेल सर्विस। और इसकी
- 4:23:37बीन क्यों बनानी है? क्योंकि यही वो
- 4:23:38इंटरफ़ेस है या इसी की मदद से जो यूजर की
- 4:23:42इनेशन है लोड की जाती है स्प्रिंग
- 4:23:43सिक्योरिटी में। तो हमें इसकी बीन बनानी
- 4:23:45होगी। और इसकी बीन बनाते वक्त हम यूजर
- 4:23:48डिटेल्स का भी इस्तेमाल करेंगे। ठीक है?
- 4:23:50देखिए यूजर डिटेल्स सर्विस तो आपने देख
- 4:23:52ली। अभी मैं यहां पर ना ऐसे यूजर डिटेल्स
- 4:23:54भी लिख देता हूं। अच्छा यहां पर सेमी
- 4:23:56कॉललन डाल देता हूं। ऐसे यूजर डिटेल्स। तो
- 4:23:58देखिए यह भी इनबिल्ट इंटरफ़ेस है। ठीक है?
- 4:24:01इसके अंदर भी आप अगर जाओगे तो ये देखिए ये
- 4:24:03क्या है? ये प्रोवाइड करता है कोर यूजर की
- 4:24:06इनेशन। देखिए स्प्रिंग सिक्योरिटी है।
- 4:24:08स्प्रिंग सिक्योरिटी को चाहिए होती है
- 4:24:10यूजर की इनेशन। ठीक है? तो मैं यहां पर आ
- 4:24:12जाता हूं। ठीक है? देखिए अ यहां पर मैं
- 4:24:16बना लेता हूं यूजर डिटेल्स सर्विस। ठीक
- 4:24:19है? यूजर डिटेल्स डिटेल सर्विस ऐसे ठीक है
- 4:24:25और दूसरी चीज है यूजर डिटेल्स
- 4:24:30ठीक है तो देखिए ये दोनों इंटरफसेस है
- 4:24:33यूजर डिटेल सर्विस क्या करेगी यूजर डिटेल
- 4:24:35सर्विस यूजर इनेशन को लोड करेगी कोई भी
- 4:24:38सोर्स से सोर्स चाहे डेटाबेस हो फाइल हो
- 4:24:40या इन मेमोरी हो ठीक है डिपेंडिंग ऑन योर
- 4:24:43एप्लीकेशन आपकी जो भी एप्लीकेशन है उसके
- 4:24:45बिहाफ पर अब यूजर की जो इनेशन फैच हो रही
- 4:24:48है उसको उसको एक फॉर्म में तो रिप्रेजेंट
- 4:24:50करना होगा ना। आप कैसे रिप्रेजेंट करोगे
- 4:24:52यूजर की इनेशन को? यूजर की इनेशन है उसमें
- 4:24:54काफी सारी प्रॉपर्टीज हो सकती है। जैसे कि
- 4:24:56नाम, यूजर का ईमेल हो सकता है, यूजरनेम हो
- 4:24:59सकता है, पासवर्ड हो सकता है। काफी सारी
- 4:25:00इनेशन हो सकती है। तो, उस यूजर की इनेशन
- 4:25:03को आप कैसे रिप्रेजेंट करोगे? उसके लिए
- 4:25:05क्लास होनी चाहिए, कुछ तो होना चाहिए,
- 4:25:06इंटरफ़ेस होना चाहिए। करेक्ट? तो, यूजर
- 4:25:08डिटेल्स एक ऐसा इंटरफ़ेस है जिसके जरिए
- 4:25:11यूजर की इनेशन को रिप्रेजेंट किया जाता है
- 4:25:13स्प्रिंग सिक्योरिटी में। देखिए दोनों जो
- 4:25:16इंटरफसेस है यह काफी इंपॉर्टेंट इंटरफसेस
- 4:25:18हैं। देखिए अगर आप स्प्रिंग बूट बैक एंड
- 4:25:21डेवलपमेंट को सीरियसली ले रहे हो। ठीक है?
- 4:25:24तो स्प्रिंग सिक्योरिटी से आप बच नहीं
- 4:25:26पाओगे। ठीक है? स्प्रिंग सिक्योरिटी का
- 4:25:28इस्तेमाल होना ही है। ठीक है? आप बिगिनर
- 4:25:31हो, मिड लेवल डेवलपर हो, एडवांस लेवल
- 4:25:33डेवलपर हो, आप लॉन्ग टर्म डेवलपर बने रहना
- 4:25:36चाहते हो। स्प्रिंग सिक्योरिटी डिफ़ॉल्ट
- 4:25:38फ्रेमवर्क है। सिक्योरिटी इंप्लीमेंट करने
- 4:25:40के लिए स्प्रिंग बूट में। अगर आप कोई भी
- 4:25:43कंपनी जॉइन करते हो तो स्प्रिंग
- 4:25:44सिक्योरिटी का इस्तेमाल तो होना ही है
- 4:25:45वहां पर। ठीक है? तो आपको ये दोनों जो
- 4:25:48चीजें हैं यूजर डिटेल सर्विस और यूजर
- 4:25:50डिटेल्स ये तो बार-बार सुनाई देगी आपको।
- 4:25:52बार-बार नहीं हर बार सुनाई देगी। ठीक है?
- 4:25:54तो यूजर डिटेल सर्विस जैसे कि मैं कहा
- 4:25:56यूजर की इनेशन लोड करने के लिए यूजर डिटेल
- 4:25:59सर्विस काम आती है। यूजर की इनेशन को
- 4:26:01रिप्रेजेंट करने के लिए यूजर डिटेल्स होती
- 4:26:03है। ठीक है? और आप यह जो डॉक्यूमेंटेशन है
- 4:26:06देखिए यह यूजर डिटेल्स की जो
- 4:26:08डॉक्यूमेंटेशन है प्रोवाइड स्कोर यूजर
- 4:26:10इनेशन। ठीक है? प्रोवाइड स्कोर यूजर
- 4:26:13इनफेशन आप देख सकते हो यहां पर। ठीक है?
- 4:26:15पासवर्ड, यूजरनेम, यह सारी अथॉरिटीज का
- 4:26:18मतलब है रोल्स। ठीक है? अथॉरिटीज का मतलब
- 4:26:20क्या है? रोल्स। तो रोल्स जो हम बोलते हैं
- 4:26:23तो अगर लाइक एक यूजर को एक एंड पॉइंट
- 4:26:26एक्सेस करने की परमिशन है, दूसरी एंड
- 4:26:29पॉइंट एक्सेस करने की नहीं है, तो उसे
- 4:26:31कहेंगे अथॉरिटी। ठीक है? तो, वह उस इस
- 4:26:34लैंग्वेज में अथॉरिटी बोलते हैं। इज़
- 4:26:36अकाउंट एक्सपायर्ड, नॉन एक्सपायर्ड, नॉन
- 4:26:38लॉक्ड। ये सारी जो चीजें हैं ये बाय
- 4:26:40डिफॉल्ट आपको दी जाती है यहां पर इस
- 4:26:42इंटरफेस में। ठीक है? तो उम्मीद करता हूं
- 4:26:44ये दोनों चीजें आपको समझ में आ गई है। ठीक
- 4:26:46है? अब हम करने क्या वाले हैं और इन दोनों
- 4:26:49चीजों के बारे में मैं क्यों बात कर रहा
- 4:26:50हूं? एक तो सबसे पहली चीज तो है कि ये
- 4:26:53दोनों इंटरफेस काफी इंपॉर्टेंट है। जैसे
- 4:26:54कि मैं 10 बार बता बता चुका हूं। आपको समझ
- 4:26:56भी आ गया रहेगा। ठीक है? लेकिन स्ट्रेस
- 4:26:58करना जरूरी है। इंपॉर्टेंट है ये। स्किप
- 4:27:00नहीं कीजिएगा। अब हम यूजर डिटेल सर्विस की
- 4:27:03बीन को एक्सपोज़ करेंगे। यहां पर क्रिएट
- 4:27:05करेंगे। ठीक है? और यूजर डिटेल्स को
- 4:27:10इस्तेमाल करके हम यूज़र्स क्रिएट करेंगे।
- 4:27:12ठीक है? तो चलिए आ जाते हैं यहां पर। ठीक
- 4:27:15है? इतना समझ में आ गया। अब मैं क्या
- 4:27:17करूंगा? पब्लिक यूजर डिटेल्स सर्विस को
- 4:27:20इस्तेमाल करूंगा यहां पर और मैं कहूंगा
- 4:27:22यूजर डिटेल्स सर्विस। ऐसे मैं मेथड का नाम
- 4:27:24तो वैसे कुछ भी लिख सकता हूं यहां पर। और
- 4:27:26यहां पर इसको एज़ ए बीन मार्क कर दूंगा।
- 4:27:29बीन मार्क करूंगा तो ये क्या हो जाएगा?
- 4:27:31स्प्रिंग मैनेज कंपोनेंट हो जाएगा। यानी
- 4:27:33कि स्प्रिंग इस कंपोनेंट को यूजर डिटेल
- 4:27:35सर्विस को मैनेज करेगा। ठीक है? अब यहां
- 4:27:37पर यूजर बनानी है हमें। तो मैं क्या
- 4:27:39कहूंगा? यूजर डिटेल्स और यूजर वन।
- 4:27:43चलिए यूजर वन बनाते हैं। और इज़ इक्वल टू
- 4:27:46यूजर डॉट वि यूजर नेम। ठीक है? और देखिए
- 4:27:51यूजर क्या है? इस पर अगर आप ओवर करते हो।
- 4:27:54ठीक है?
- 4:27:58इस पर अगर आप ओवर करते हो तो ये देखिए
- 4:28:00यहां पर ये ये यूजर की क्लास है। और ये
- 4:28:03कहां पे है? स्प्रिंग सिक्योरिटी में है।
- 4:28:06ठीक है? तो यह जो यूजर की क्लास है उसका
- 4:28:12जो फील्ड्स है वगैरह वो सब यहां पर
- 4:28:14डिफाइंड होता है। तो यहां पर अगर आप
- 4:28:16स्क्रॉल करोगे तो जो आपने यूजर डिटेल्स
- 4:28:18में देखा था। ठीक है? जो गेटर्स आपने देखे
- 4:28:20थे उन सारी की फील्ड्स जो है वो यहां पर
- 4:28:22डिफाइंड होंगी। आप देख सकते हो। ठीक है?
- 4:28:24उन सों की जो फील्ड्स है वो यहां पर
- 4:28:26डिफाइंड होगी। ठीक है? तो ये है और यहां
- 4:28:28पर गेटर सेटर्स पूरी की पूरी क्लास दिखाई
- 4:28:30देगी आपको। ठीक है? यहां पर देखिए पूरी की
- 4:28:33पूरी और यहां पर लिखा भी हुआ है कि मॉडल्स
- 4:28:36कोर यूजर इंफॉर्मेशनेशन रिट्रीव्ड बाय ए
- 4:28:39यूजर डिटेल्स सर्विस एंड डेवलपर्स मे यूज़
- 4:28:42दिस क्लास मे यूज़ दिस क्लास डायरेक्टली सब
- 4:28:45क्लास इट और राइट देयर ओन यूजर डिटेल्स
- 4:28:48इंप्लीमेंटेशन फ्रॉम स्क्रैच। तो आप इस
- 4:28:50क्लास के डायरेक्टली इस्तेमाल कर सकते हो।
- 4:28:52अगर देखिए स्प्रिंग सिक्योरिटी क्या बोलता
- 4:28:54है? यूजर जो रिप्रेजेंट होता है स्प्रिंग
- 4:28:56सिक्योरिटी में उसका मैंने एक डिफ़ॉल्ट
- 4:28:58स्ट्रक्चर मैंने बना दिया है। ठीक है?
- 4:29:01डिफ़ॉल्ट स्ट्रक्चर मैंने बना दिया। इसका
- 4:29:02मतलब यूजर में अह यूजर की जो डिटेल्स है
- 4:29:05उसमें होगा पासवर्ड यूजरनेम होगा,
- 4:29:07अथॉरिटीज़ होगा, अकाउंट एक्सपायर्ड है या
- 4:29:09नहीं है वो होगा। ये बुलियन फील्ड्स हैं
- 4:29:11बाय द वे सारी अकाउंट लॉक्ड है या नहीं ये
- 4:29:13होगा। क्रेडेंशियल्स एक्सपायर्ड है या
- 4:29:15नहीं होगा और इनेबल्ड है या नहीं ये सारी
- 4:29:17चीजें होगी। ठीक है? ऐसा स्प्रिंग
- 4:29:19सिक्योरिटी बोलता है। अब आप एक बैंकिंग ऐप
- 4:29:22अगर बना रहे हो। आपको यहां पे यूजर की
- 4:29:24इनेशन के अगेंस्ट स्टोर करना होगा। कस्टमर
- 4:29:26आईडी, बैंक का कस्टमर आईडी, अकाउंट नंबर,
- 4:29:29लोन अकाउंट नंबर। तो ये सारी चीजें स्टोर
- 4:29:31करनी होगी। ये स्प्रिंग सिक्योरिटी
- 4:29:32प्रोवाइड कर रहा है क्या? नहीं कर रहा है।
- 4:29:34तो आपको क्या करना होगा? आपको एक कस्टम
- 4:29:36यूजर बनाना होगा आपके एंड पे। वो आप कैसे
- 4:29:39बनाओगे? इसको मॉडिफाई करके। और वो ही चीज
- 4:29:41यहां पर बोली जा रही है। ठीक है? आप
- 4:29:44डायरेक्टली इस्तेमाल करें। डायरेक्टली
- 4:29:45इस्तेमाल कब करोगे आप? डायरेक्टली
- 4:29:47इस्तेमाल करोगे जब आपकी ये रिक्वायरमेंट
- 4:29:48को सेटिस्फाई कर रहा है। अगर आप सिंपल
- 4:29:51यूजर की इनफेशन स्टोर करना चाहते हो
- 4:29:52सिंपली। ठीक है? ज्यादा कुछ आपको
- 4:29:54कॉम्प्लेक्स नहीं करना है तो आप
- 4:29:55डायरेक्टली इसको इस्तेमाल कर सकते हो।
- 4:29:57लेकिन अगर आपको कुछ डोमेन स्पेसिफिक
- 4:29:59इनफेशन स्टोर करनी है जैसे कि आप बैंकिंग
- 4:30:01डोमेन मैप बना रहे हो। ठीक है? अकाउंट
- 4:30:02नंबर, लोन अकाउंट नंबर ये सारी चीजें तो
- 4:30:04अब यहां पर प्रोवाइड नहीं हो रही है। तो
- 4:30:06आप इसको सब क्लास करके ठीक है? इन्हहेरिट
- 4:30:08करके आप एक कस्टम यूजर की क्लास बना सकते
- 4:30:11हो और उसको इस्तेमाल कर सकते हो। ऐसा ऐसी
- 4:30:13सारी चीजें अलाउड है। आप कर सकते हो। ठीक
- 4:30:16है? ठीक है? उम्मीद करता हूं इतना क्लियर
- 4:30:18है। ठीक है? तो यहां पर हम क्या करेंगे?
- 4:30:20अब यहां पर मैंने यूजर को बनाया विद
- 4:30:23यूजरनेम और यहां पर आप कोई भी यूजरनेम दे
- 4:30:25सकते हो। जैसे कि मैं दे रहा हूं यूजर वन।
- 4:30:27ठीक है? और फिर यहां पर आप पासवर्ड दे
- 4:30:29सकते हो। पासवर्ड मैं दे रहा हूं पासवर्ड
- 4:30:31वन। उप्स पासवर्ड वन ऐसे। और यहां पर मैं
- 4:30:35बोल देता हूं बिल्ट। ठीक है? बिल्ट। अब
- 4:30:38देखिए ये जो पासवर्ड वन है इसको मैंने अ
- 4:30:42किसी तरीके से हैश या हार्ड कोड नहीं किया
- 4:30:45है। ठीक है? तो मुझे यहां पर स्प्रिंग
- 4:30:47सिक्योरिटी को बोलना होगा। बोलना क्या
- 4:30:50होगा कि ये जो पासवर्ड है इसको ऐसे ही
- 4:30:52प्लेन टेक्स्ट फॉर्मेट में अभी स्टोर
- 4:30:53कीजिए। ठीक है? अभी मैं डेवलपमेंट मोड पे
- 4:30:55हूं और मैं इसको हार्ड कोड एनकोड नहीं
- 4:30:57करना चाहता। ठीक है? तो अभी एनकोडिंग नहीं
- 4:30:59कर रहे हम। तो यहां पर कर्ली बसेस लिखेंगे
- 4:31:01और यहां पर एन ओपी लिखेंगे। ठीक है? ये
- 4:31:04सिंटेक्स की मदद से हम क्या बोल रहे हैं?
- 4:31:06हम बोल रहे हैं कि पासवर्ड को प्लेन
- 4:31:08टेक्स्ट में ही रखिए। क्योंकि ये
- 4:31:09डेवलपमेंट मोड में हम थोड़ा सीख रहे हैं।
- 4:31:11ठीक है? तो अभी एनकोडिंग वगैरह को लाते
- 4:31:13नहीं है। थोड़ी चीजें कॉम्प्लेक्स हो
- 4:31:14जाएगी। तो अभी के लिए सिंपल रख रहा हूं।
- 4:31:16एन ओपी लिख के मैं स्प्रिंग सिक्योरिटी को
- 4:31:18ये बोल रहा हूं कि इस पासवर्ड को एज अ
- 4:31:20प्लेन टेक्स्ट कंसीडर कीजिए। ठीक है?
- 4:31:22जनरली स्प्रिंग सिक्योरिटी क्या एक्सपेक्ट
- 4:31:24करता है कि आप एनकोड करके पासवर्ड दोगे
- 4:31:27क्योंकि देखिए पासवर्ड ऐसे ही प्लेइंटेक्स
- 4:31:29में स्टोर करना सबसे पहली बात तो सही
- 4:31:32प्रैक्टिस नहीं है। ठीक है? लेकिन आप सीख
- 4:31:34रहे हैं तो ठीक है? ऐसी कोई बात नहीं है।
- 4:31:36सीखते हुए ये सारी चीजें करना बिल्कुल ओके
- 4:31:38है। ठीक है? अब मैं क्या करूंगा? अब यहां
- 4:31:40पर मैं रिटर्न करूंगा और रिटर्न करते वक्त
- 4:31:43मैं कहूंगा न्यू इन मेमोरी
- 4:31:48इन मेमोरी अ और यहां पर एक सजेशन आ रहा है
- 4:31:51आपको ठीक है इन मेमोरी यूजर डिटेल्स
- 4:31:54मैनेजर देखिए यूजर डिटेल्स मैनेजर इन
- 4:31:56मेमोरी इसका इस्तेमाल करेंगे हम तो सबसे
- 4:31:58पहले तो मैं आपको यह भी बता दूं देखिए अगर
- 4:32:00मैं यूजर डिटेल्स मैनेजर लिखता हूं तो
- 4:32:03यहां पर अलग-अलग टाइप के यूजर डिटेल्स
- 4:32:05मैनेजर है जैसे कि इन मेमोरी है जीडीबीसी
- 4:32:07यूजर डिटेल्स मैनेजर है ठीक है तो हम इन
- 4:32:10मेमोरी का इस्तेमाल कर रहे हैं। अभी
- 4:32:11फिलहाल डेटाबेस का इस्तेमाल नहीं कर रहे।
- 4:32:13तो इन मेमोरी यूजर डिटेल्स मैनेजर का
- 4:32:15इस्तेमाल करेंगे यहां पर। और यहां पर
- 4:32:17जितने भी हमारे यूज़र्स हैं उसको पास कर
- 4:32:19देंगे। तो हमारे यूजर क्या है? एक ही यूजर
- 4:32:21है फिलहाल तो तो उसको पास कर देंगे। कॉमा
- 4:32:23कर देंगे। ठीक है? अभी फिलहाल एक ही यूजर
- 4:32:25क्रिएट किया है। हम और भी बनाएंगे। अभी
- 4:32:27मैं फिलहाल इसको रन करता हूं और देखते हैं
- 4:32:29ये सही तरीके से रन होता है या नहीं। तो
- 4:32:31यूजर वन और पासवर्ड वन हमारे
- 4:32:32क्रेडेंशियल्स हैं। इसको ध्यान में
- 4:32:34रखिएगा। ठीक है? और अब यहां पर आ जाते हैं
- 4:32:37पोस्टमैन में। ठीक है? एडमिन और एडमिन 1 2
- 4:32:403 से कोशिश करता हूं पहले। तो देखिए यह
- 4:32:43अनऑथराइज्ड आ गया क्योंकि गलत पासवर्ड हो
- 4:32:45गया। क्यों गलत हो गया? क्योंकि मैंने
- 4:32:47एप्लीकेशन डॉट प्रॉपर्टीज में जो हमने
- 4:32:48डिफाइन किया था पहले उसको मैंने कमेंट कर
- 4:32:50दिया है। तो ये गलत हो गया। ठीक है? अब
- 4:32:52यहां पर क्या डालना होगा मुझे? यूजर वन और
- 4:32:55फिर यहां पर डालना होगा पासवर्ड। पासवर्ड
- 4:32:58वन डालना होगा। लेकिन मैं गलत डालता हूं
- 4:33:00पासवर्ड। ठीक है? ये देखिए फिर भी नहीं
- 4:33:03चलेगा ये। पासवर्ड वन डालता हूं अब। ठीक
- 4:33:05है? पासवर्ड वन डालूंगा तो देखिए यह चल
- 4:33:09गया। देख रहे हो आप? ठीक है? यह चल गया।
- 4:33:12अगर मैं गलत यूजरनेम पासवर्ड डालता हूं
- 4:33:14फिर से अगर कोई गलती होती है। पासवर्ड टू
- 4:33:16और यूजर टू डालता हूं यहां पर और इसको रन
- 4:33:19करता हूं। तो देखिए 401 अनऑथराइज्ड। तो ये
- 4:33:22जो रिक्वेस्ट है ये ऑथेंटिकेटेड है और यह
- 4:33:24तभी चलेगी जब आप यूजरनेम और पासवर्ड सही
- 4:33:27दोगे। ठीक है? अब मैंने आपको प्रॉमिस किया
- 4:33:30था कि हम एक नहीं मल्टीपल यूज़र्स के साथ
- 4:33:32काम करेंगे। अभी तो एक ही यूज़र्स बनाया
- 4:33:34हमने। करेक्ट? एक ही यूजर बनाया। तो हम एक
- 4:33:36और यूजर बनाते हैं। चलिए कौन क्या नाम दें
- 4:33:38इसको? तो इसको दे देते हैं एडमिन दे देते
- 4:33:41हैं। चलिए यहां पर एक एडमिन बना देते हैं।
- 4:33:44ठीक है? और फिर अ एडमिन पासवर्ड ऐसे लिख
- 4:33:49देते हैं। ठीक है? एक और यूजर बना देते
- 4:33:51हैं। ठीक है? तीन यूजर बनाएंगे हम। यूजर
- 4:33:54टू भी बना लेते हैं क्योंकि मैंने वहां पे
- 4:33:56यूजर टू टाइप किया हुआ है। ठीक है? यूजर
- 4:34:00टू। ठीक है? यूजर टू पासवर्ड टू और यहां
- 4:34:02पर आएंगे यूजर वन। यूजर टू और फिर एडमिन।
- 4:34:08ठीक है? इसको रन करते हैं। अब रन करेंगे
- 4:34:10तो देखिए आपको क्या दिखाई देगा? आपको
- 4:34:13दिखाई देगा तीनों के तीनों यूजर आपके
- 4:34:15क्रिएट हो चुके हैं। ठीक है? यूजर टू
- 4:34:17पासवर्ड टू पहले नहीं चल रहा था। अब मैं
- 4:34:19सेंड करूंगा तो ये चल जाएगा। ठीक है?
- 4:34:21एडमिन और एडमिन पासवर्ड भी लिखूंगा और
- 4:34:26चलाऊंगा तो यह भी चल जाएगा। ठीक है? तो
- 4:34:29हमारी जो एप्लीकेशन है वो तीन यूज़र्स को
- 4:34:31भी सर्व कर रही है। तीन क्रेडेंशियल्स को
- 4:34:34ऑथेंटिकेट कर रही है और उतनी कैपेबल हो
- 4:34:37चुकी है। कैसे हुई है इतनी कैपेबल? हमने
- 4:34:39ज्यादा कोड नहीं लिखा है। देखिए आप ध्यान
- 4:34:41से देखोगे तो मैंने सिर्फ इतना कोड ऐड
- 4:34:44किया है। बस
- 4:34:46बस ज्यादा कोड ऐड नहीं किया है मैंने। तो
- 4:34:49देखिए आप स्प्रिंग सिक्योरिटी की पावर को
- 4:34:50समझे। यहां पर स्प्रिंग सिक्योरिटी कितनी
- 4:34:53बड़ी चीज है। चीजों को कितना आसान कर देती
- 4:34:55है। यहां पर हमने मल्टी यूजर एप्लीकेशन
- 4:34:59बनाने के लिए सिर्फ तीन सिर्फ तीन यूजर
- 4:35:03डिटेल्स के ऑब्जेक्ट्स बनाए हैं। ठीक है?
- 4:35:05और एक यूजर डिटेल्स सर्विस का इंस्टेंस
- 4:35:09बनाकर हमने एज अ बीन एक्सपोज किया है। बस
- 4:35:11बाकी सारा काम स्प्रिंग सिक्योरिटी कर रहा
- 4:35:14है। क्या हमने यूजर नेम, पासवर्ड के चेक्स
- 4:35:16लगाए? जी नहीं। हमने पासवर्ड के चेकक्स
- 4:35:18हमने पासवर्ड, रोल्स वगैरह कुछ चेक्स
- 4:35:19लगाए? जी नहीं। हमने कोई चेक्स नहीं
- 4:35:21लगाया। ठीक है? ये ऐसे ही काम कर रहा है।
- 4:35:24ठीक है? तो ये है बेनिफिट स्प्रिंग
- 4:35:26सिक्योरिटी का। और देखिए स्प्रिंग
- 4:35:27सिक्योरिटी इतना जबरदस्त है। इसलिए
- 4:35:29स्प्रिंग सिक्योरिटी को इतना इस्तेमाल
- 4:35:31किया जाता है। लाइक आप अगर आप प्रोडक्शन
- 4:35:33ग्रिड एप्लीकेशनेशंस बनाओगे आगे चलके कोई
- 4:35:35भी एप्लीकेशनेशंस बनाते हो स्प्रिंग
- 4:35:37सिक्योरिटी डिफेक्ट होता है। ठीक है? तो
- 4:35:40देखिए हमने क्या किया यहां पर? सबसे पहले
- 4:35:43तो एप्लीकेशन डॉट प्रॉपर्टीज में पासवर्ड
- 4:35:45सेव था। ठीक है? और हमारी एप्लीकेशन
- 4:35:47लिमिटेड थी जो कि एक पासवर्ड के साथ ही
- 4:35:49काम करती एक यूजरनेम पासवर्ड के साथ काफी
- 4:35:51लिमिटेड थी। तो मैंने वो चीज वो लिमिटेशन
- 4:35:54को हटाकर मैंने एप्लीकेशन डॉट प्रॉपर्टीज
- 4:35:57में वो चीज को कमेंट कर कर मैंने
- 4:35:59सिक्योरिटी कॉन्फ़िगरेशन में थोड़े से
- 4:36:01कस्टमाइजेशंस लाए जहां पर मैंने इन मेमोरी
- 4:36:03ऑथेंटिकेशन को इस्तेमाल किया। इन मेमोरी
- 4:36:05ऑथेंटिकेशन को इस्तेमाल किया ये कैसे पता
- 4:36:07चल रहा है? क्योंकि यहां पर मैंने इन
- 4:36:09मेमोरी यूजर डिटेल्स मैनेजर का इस्तेमाल
- 4:36:12किया है। और जो यूज़र्स हैं वो डेटाबेस में
- 4:36:14स्टोर ही नहीं हो रहे। वह ऑन द फ्लाई
- 4:36:16क्रिएट हो रहे हैं यहां पर और एप्लीकेशन
- 4:36:17में ऑथेंटिकेशन के लिए इस्तेमाल हो रहे
- 4:36:19हैं। तो देखिए जनरली प्रोडक्शन ग्रेड
- 4:36:22एप्लीकेशनेशंस में आप इस तरीके से
- 4:36:23ऑथेंटिकेशन या इस तरीके से यूज़र्स नहीं
- 4:36:25बनाओगे। आप डेटाबेस में स्टोर करते हो
- 4:36:27यूज़र्स में। लेकिन ये ये जो मेथड है वो भी
- 4:36:30जानना जरूरी है। क्योंकि अगर आप कोई
- 4:36:31क्लाइंट के लिए पीओसी बना रहे हो। ठीक है?
- 4:36:33प्रूफ ऑफ कॉनसेप्ट क्लाइंट को दिखाने के
- 4:36:36लिए कुछ डेमो पर्पस के लिए कुछ बना रहे हो
- 4:36:38जो किसी क्लाइंट से कॉन्ट्रैक्ट जीतने के
- 4:36:40लिए आप जनरली कंपनीज़ करती है पीओसी वगैरह
- 4:36:42बनाती है तो उसमें अगर कुछ डेमो यूज़र्स
- 4:36:45आपको लोड करने हैं और डेटाबेस वगैरह जैसी
- 4:36:47कॉम्प्लेक्सिटी नहीं चाहिए और ऑथेंटिकेशन
- 4:36:49हो रहा है यह क्लाइंट को बताना है तो इस
- 4:36:51तरीके से आप कर सकते हो। ठीक है? लेकिन ये
- 4:36:53प्रोडक्शन ग्रेड प्रैक्टिस नहीं है। यह आप
- 4:36:56डेमो प्रोजेक्ट्स के लिए कर सकते हो। ठीक
- 4:36:58है? तो इन मेम मेरी ऑथेंटिकेशन क्या इनेबल
- 4:37:01करता है? हमें मल्टीपल यूज़र्स क्रिएट करने
- 4:37:04इनेबल करता है। हम रोल्स को कंट्रोल कर
- 4:37:06सकते हैं। यहां पर अब रोल्स की तो बात
- 4:37:07मैंने की ही नहीं है। लेकिन रोल्स को भी
- 4:37:09बढ़िया तरीके से कंट्रोल कर सकते हैं।
- 4:37:10अथॉरिटीज़ को जैसे कि मैंने कहा। ठीक है?
- 4:37:13और यूजर डिटेल्स सर्विस का इंटरनली हम
- 4:37:15इस्तेमाल कर रहे हैं क्योंकि इन मेमोरी
- 4:37:17ऑथेंटिकेशन उसी का इस्तेमाल करता है। और
- 4:37:20हमने अ जो पासवर्ड है उसको भी फिलहाल
- 4:37:23टेक्स्ट में स्टोर किया है। ठीक है? अभी
- 4:37:26अकोडिंग जैसी कॉम्प्लेक्स चीज को हमने अभी
- 4:37:29इंट्रोड्यूस नहीं किया। लेकिन स्प्रिंग
- 4:37:30सिक्योरिटी उसको भी बढ़िया तरीके से
- 4:37:32सपोर्ट करता है बिल्कुल कम कोड के साथ।
- 4:37:34ठीक है? उम्मीद करता हूं अब तक मजा आ रहा
- 4:37:36है आपको और आगे भी आता ही रहेगा।
- 4:37:45तो दोस्तों, अब बात करते हैं रोल बेस्ड
- 4:37:48एक्सेस कंट्रोल के बारे में। और आप यह
- 4:37:52देखकर शॉक हो जाओगे कि रोल बेस्ड एक्सेस
- 4:37:54कंट्रोल इंप्लीमेंट करना स्प्रिंग
- 4:37:56सिक्योरिटी में कितना आसान है। ठीक है? और
- 4:37:59एक्चुअली आपको और मजा आएगा स्प्रिंग
- 4:38:01सिक्योरिटी में जैसे ही आप रोल बेस्ड
- 4:38:02एक्सेस कंट्रोल की लॉजिक देखते हो। ठीक
- 4:38:04है? तो देखिए रोल बेस्ड एक्सेस कंट्रोल
- 4:38:07सबसे पहले तो होता क्या है? अगर आप लोगों
- 4:38:09को नहीं पता तो मैं वो बता दूं आप लोगों
- 4:38:11को। ठीक है? देखिए आपके पास एक एंड पॉइंट
- 4:38:14होगी। ठीक है? ये एंड एंड पॉइंट वन। ठीक
- 4:38:18है? ये एंड पॉइंट होगी जो कोई भी एक्सेस
- 4:38:21कर सकता है। ठीक है? एनीवन इन द वर्ल्ड
- 4:38:23कोई भी कहीं से भी हो। तो मान लीजिए ये
- 4:38:25प्रोडक्ट्स की एंड पॉइंट है। आप ई-कॉमर्स
- 4:38:27एप्लीकेशन बना रहे प्रोडक्ट्स के एंड
- 4:38:28पॉइंट है। कोई भी एक्सेस कर सकता है और
- 4:38:30आपके एप्लीकेशन में क्या-क्या प्रोडक्ट्स
- 4:38:31हैं, क्या-क्या प्राइस है वो सारी चीजें
- 4:38:33देख सकता है। ठीक है? तो ये हो गई एंड
- 4:38:36पॉइंट और ये एंड पॉइंट कोई भी मतलब कोई भी
- 4:38:39रोल हो यूजर का वो एक्सेस कर सकता है इसे।
- 4:38:43ठीक है? एक वैलिड रोल होना जरूरी है। ऐसे
- 4:38:44ही बिना रोल के कोई भी एक्सेस नहीं कर
- 4:38:47सकता। ठीक है? तो हर कोई विद एनी रोल
- 4:38:49एक्सेस कर सकता है। ठीक है? लेकिन कुछ एंड
- 4:38:52पॉइंट्स ऐसी होगी जहां पर आप चाहोगे कि
- 4:38:55एडमिन ओनली हो। ठीक है? तो एडमिन ओनली
- 4:38:59स्लैश एडमिन एंड पॉइंट्स ये एडमिन ओनली हो
- 4:39:02जैसे कि आप यूजर को डिलीट करना चाहते हो।
- 4:39:04आप मास ईमेल भेजना चाहते हो। आप प्राइस
- 4:39:08चेंज करना चाहते हो प्रोडक्ट की तो ऐसी
- 4:39:10एंड पॉइंट्स जो होगी वो आप रिस्ट्रिक्टेड
- 4:39:12रखना चाहोगे और चाहोगे कि कोई स्पेसिफिक
- 4:39:16यूजर जिनके पास एक पर्टिकुलर रोल हो एक
- 4:39:18पर्टिकुलर अथॉरिटी हो वही इस एंड पॉइंट को
- 4:39:21एक्सेस कर पाए। ठीक है? देखिए रोल रोल मैं
- 4:39:24दो-तीन बार बोल रहा हूं। ठीक है? तो मैं
- 4:39:26आपको रोल का मतलब भी बता दूं। तो देखिए एक
- 4:39:28यूजर होता है आपके पास। ये यूजर है। ठीक
- 4:39:31है? यूजर में यूजर की इनेशन होगी। ठीक है?
- 4:39:34यूजर की इनेशन क्या-क्या होगी? जैसे कि
- 4:39:36यूजर का नाम हो गया, ईमेल हो गया और
- 4:39:38पासवर्ड हो गया। और यूजर के पास यूजर का
- 4:39:40रोल भी होगा। रोल क्या होता है? रोल का
- 4:39:43मतलब है कि ये यूजर जो है वो क्या-क्या कर
- 4:39:46सकता है अपने आपके एप्लीकेशन में? इसको
- 4:39:48किस लेवल की अथॉरिटी देनी है। ठीक है? और
- 4:39:51ये आपको समझाने के लिए मैं आपको एक और
- 4:39:53एग्जांपल दे देता हूं। देखिए अगर आपके आप
- 4:39:55एक ऑफिस में जाते हो। ठीक है? आप ऑफिस में
- 4:39:57जाते हो। ठीक है? और ये ऑफिस है और आपने
- 4:40:01ऑफिस में एंट्री कर ली आई कार्ड दिखा के।
- 4:40:03अब आप उस आई कार्ड की मदद से कहां-कहां जा
- 4:40:07सकते हो ऑफिस में यह डिक्टेट करता है कौन?
- 4:40:10आपका रोल। ठीक है? तो आप देखिए आप अगर कोई
- 4:40:12फ्रेशर हो तो आपको हो सकता है जो फाइनेंस
- 4:40:15डिपार्टमेंट है उस फ्लोर का एक्सेस ना हो।
- 4:40:18आपको जो सीनियर मैनेजमेंट जहां बैठते हैं
- 4:40:21उस फ्लोर का एक्सेस ना हो। आपको कैफेट
- 4:40:23एरिया का एक्सेस हो। आपको जिम का एक्सेस
- 4:40:25हो। ठीक है? अगर आप फाइनेंस टीम से हो तो
- 4:40:28ऑफ कोर्स आपको सारी चीजों का एक्सेस होगा
- 4:40:30और फाइनेंस का जो डिपार्टमेंट है उसका भी
- 4:40:32एक्सेस होगा। ठीक है? करेक्ट? लेकिन आपको
- 4:40:35सीनियर मैनेजमेंट या सीईओ ऑफिस का एक्सेस
- 4:40:37नहीं होगा। अब आप सीईओ हो तो आपको पूरी
- 4:40:40ऑफिस का एक्सेस होगा। करेक्ट? तो आप एज अ
- 4:40:45यूजर ऑफिस में कहां-कहां जा सकते हो?
- 4:40:47क्या-क्या चीजें एक्सेस कर सकते हो? यह
- 4:40:49कैसे डिक्टेट होता है? आपके रोल पे। ठीक
- 4:40:51है? आप कौन हो? आप चलो ऑफिस में तो अंदर आ
- 4:40:54गए। ऑफिस में अंदर आके क्योंकि आप एंप्लई
- 4:40:56हो, आप काम कर रहे हो, आप प्रोडक्ट बना
- 4:40:57रहे हो। लेकिन आपको किस लेवल का एक्सेस
- 4:41:00है। यह डिक्टेट करता है आपका रोल। ठीक है?
- 4:41:03और वैसे ही एप्लीकेशन में रोल होता है जो
- 4:41:06हर यूजर से एसोसिएटेड होता है। और यह रोल
- 4:41:10डिक्टेट करता है कि आप एप्लीकेशन में
- 4:41:12क्या-क्या कर सकते हो? आप कौन सी-कौन सी
- 4:41:13एंड पॉइंट्स यूज़ कर सकते हो। क्या आप
- 4:41:15डिलीट यूजर की एंड पॉइंट यूज़ कर सकते हो?
- 4:41:17जी नहीं। वो सिर्फ एडमिन ओनली है। क्या आप
- 4:41:20डिलीट प्रोडक्ट की इस्तेमाल कर सकते हो?
- 4:41:22जी हां। क्योंकि आप एडमिन हो। तो उस हिसाब
- 4:41:25से बेसिकली आपका आपका रोल डिसाइड करता है
- 4:41:27कि आप क्या करते हो और रोल अलग-अलग किस्म
- 4:41:29के होते हैं। ठीक है? देखिए आप अपने
- 4:41:32एप्लीकेशन में किसी भी तरह की रोल्स
- 4:41:33डिफाइन कर सकते हो। फॉर एग्जांपल मैं आपको
- 4:41:36बताऊं अगर आप ई-कॉमर्स एप्लीकेशन बना रहे
- 4:41:39हो तो आपके पास होगा एक नॉर्मल यूजर का
- 4:41:41रोल। आपके पास होगा एडमिन का रोल। आपके
- 4:41:44पास होगा सेलर का रोल। ठीक है? तो देखिए
- 4:41:47एडमिन सारे सेलर्स को देख सकता है। यूजर
- 4:41:49तो देखिए यूजर सिर्फ यूजर रिलेटेड इनेशन
- 4:41:52देख सकता है। ठीक है? जैसे कि प्रोडक्ट्स
- 4:41:54क्या है? अह वह प्रोडक्ट को एडिट नहीं कर
- 4:41:56सकता, क्रिएट नहीं कर सकता। प्रोडक्ट को
- 4:41:58ऑर्डर ज़रूर कर सकता है। करेक्ट? एडमिन
- 4:42:00क्या कर सकता है? एडमिन सारे सेलर्स की
- 4:42:03इनेशन देख सकता है। सेलर को क्रिएट कर
- 4:42:05सकता है। किसी सेलर को डिलीट करना है, वह
- 4:42:07भी कर सकता है। किसी यूजर को डिलीट करना
- 4:42:09है, वह भी कर सकता है। हर प्रोडक्ट की
- 4:42:11प्राइस चेंज कर सकता है। चाहे वह किसी भी
- 4:42:13सेलर से हो। ठीक है? सेलर क्या कर सकता
- 4:42:16है? सेलर सिर्फ खुद एज अ सेलर वह खुद के
- 4:42:19ही प्रोडक्ट्स को देख सकता है। खुद के ही
- 4:42:22प्रोडक्ट्स को मॉडिफाई कर सकता है। खुद के
- 4:42:24ही शॉप के अंदर प्रोडक्ट्स न्यू क्रिएट कर
- 4:42:27सकता है। प्रोडक्ट्स लिस्ट कर सकता है और
- 4:42:30खुद के प्रोडक्ट्स की प्राइस चेंज कर सकता
- 4:42:31है। दूसरे सेलर्स की इनेशन, दूसरे सेलर्स
- 4:42:34की इनफेशन को एडिट करना, मॉडिफाई करना,
- 4:42:36अपडेट करना ये सारी चीजें सेलर नहीं कर
- 4:42:38सकता है। वो सिर्फ एडमिन कर सकता है। तो
- 4:42:40देखिए ये हो गया ई-कॉमर्स का एग्जांपल।
- 4:42:42बैंकिंग का एग्जांपल अलग होगा। उसमें
- 4:42:43रोल्स अलग होंगे। उसमें भी होगा यूजर
- 4:42:45होगा, एडमिन होगा। फिर हो सकता है कुछ लोन
- 4:42:49डिपार्टमेंट से कोई हो तो उसका लोन के लिए
- 4:42:51कुछ रोल हो। ठीक है? कोई अकाउंट्स
- 4:42:53डिपार्टमेंट से हो तो उसके लिए अकाउंट्स
- 4:42:55का रोल हो। तो ऐसे डिपेंडिंग ऑन द
- 4:42:56एप्लीकेशन आप खुद के रोल्स बना सकते हो।
- 4:42:58आप जो डोमेन में हो उस हिसाब से। ठीक है?
- 4:43:01तो रोल रहता है और रोल के बेसिस पर एक्सेस
- 4:43:03डिसाइड होता है। इतना आपको समझ में आ गया।
- 4:43:05अब हम एप्लीकेशन में आ जाते हैं यहां पर।
- 4:43:08ठीक है? इस एप्लीकेशन में अब हम रोल की
- 4:43:10इनेशन को किस तरीके से मैनेज करें? तो
- 4:43:12देखिए यूजर में अगर आप जाओगे यहां पर यह
- 4:43:15यूजर जो मिल रहा है हमें यह स्प्रिंग
- 4:43:18सिक्योरिटी से ही मिल रहा है। ठीक है?
- 4:43:20स्प्रिंग सिक्योरिटी से मिल रहा है। देखिए
- 4:43:21यूजर हमने नहीं बनाया यूजर। तो ये यूजर का
- 4:43:24जो स्ट्रक्चर है उसको डिफाइन करता है। ठीक
- 4:43:26है? यहां पर देखिए पासवर्ड है, लॉगर है,
- 4:43:29यूजरनेम है, सब कुछ है। ठीक है? और यहां
- 4:43:32पर अथॉरिटीज़ है। अथॉरिटीज़ होनी चाहिए। ये
- 4:43:35रही अथॉरिटीज़। अब इसको सेट कैसे किया जाए?
- 4:43:37तो अगर आप नीचे जाओगे अगर आप नीचे जाते हो
- 4:43:40तो यहां पर अ रोल्स करके कुछ होना चाहिए।
- 4:43:44ठीक है? यहां पर अगर आप स्क्रॉल करते हो
- 4:43:46ठीक है?
- 4:43:50रोल्स। तो देखिए यहां पर एग्जांपल्स दिए
- 4:43:52गए।
- 4:43:54देखिए यह जो है रोल्स यहां पर आपको रोल्स
- 4:43:58डालने हैं। ये मेथड को कॉल करना है और
- 4:44:00यहां पर रोल्स को पास करना है। जो भी आप
- 4:44:02रोल्स असाइन करना चाहते हो और वो रोल्स
- 4:44:04अथॉरिटीज़ मतलब वो अथॉरिटीज़ का ऑब्जेक्ट
- 4:44:07क्रिएट करेगा इंटरनली। ये कोड से आपको कुछ
- 4:44:09लेना देना नहीं है। ये कोड आप लिख नहीं
- 4:44:11रहे हो। लेकिन समझना जरूरी है किस तरीके
- 4:44:13से रोल्स स्टोर होते हैं। और यह मैं क्यों
- 4:44:15बता रहा हूं यह भी मैं आपको बोलता हूं। ये
- 4:44:16भी उस पर भी मैं आता हूं। लेकिन पहले मैं
- 4:44:18ये एक्सप्लेनेशन फिनिश कर लेता हूं। ठीक
- 4:44:19है? आप कहेंगे कि अच्छा ये इंटरनल क्लासेस
- 4:44:22के कोड क्यों एक्सप्लेन कर रहा है? मैं
- 4:44:23बताता हूं आपको क्यों एक्सप्लेन कर रहा
- 4:44:25हूं। ठीक है? तो देखिए आप जब भी रोल्स सेट
- 4:44:27करोगे तो आपको रोल्स ऐसे पास कर देना है
- 4:44:30मल्टीपल रोल्स जैसे कि एडमिन सेलर। तो
- 4:44:32देखिए एक यूजर के पास मल्टीपल रोल्स भी हो
- 4:44:34सकते हैं। तो मैं एज अ यूजर मैं नॉर्मल
- 4:44:37यूजर भी हो सकता हूं। ठीक है? मैं
- 4:44:39ई-कॉमर्स साइट से प्रोडक्ट भी ऑर्डर कर
- 4:44:41सकता हूं और मैं एडमिन भी हूं या मैं सेलर
- 4:44:44भी हूं। मैं प्रोडक्ट बेच भी रहा हूं और
- 4:44:46दूसरे सेलर्स के प्रोडक्ट खरीद भी रहा
- 4:44:48हूं। ठीक है? Amazon पर आप सेलर भी बन
- 4:44:50सकते हो। आप प्रोडक्ट्स खरीद भी सकते हो,
- 4:44:53यूजर भी हो सकते हो। करेक्ट? तो मल्टीपल
- 4:44:55रोल्स भी आप असाइन कर सकते हो। तो इसके
- 4:44:56लिए देखिए यहां पर मल्टीपल रोल्स की अ
- 4:44:59फैसिलिटी की हुई है और उस रोल्स को अंदर
- 4:45:01लिया जाता है मेथड के अंदर और एक ग्रांटेड
- 4:45:04अथॉरिटी की एक लिस्ट बनाई जाती है और फिर
- 4:45:07अथॉरिटीज में उस उस रोल को ऐड किया जाता
- 4:45:11है। अभी देखिए ये जो कोड है ना ये यहां पर
- 4:45:13काफी सारी चीजें आपको समझ में आएगी। ठीक
- 4:45:15है? सबसे पहले तो मैं आपको ये बता देता
- 4:45:17हूं कि इसको क्रिएट कैसे करना है। तो
- 4:45:19देखिए यहां पर है ना एग्जांपल दिया हुआ
- 4:45:21था। देखिए इस तरीके से आपको इस्तेमाल करना
- 4:45:23है। इस तरीके से ठीक है? यूजर विद डिफ़ॉल्ट
- 4:45:26पासवर्ड एनकोडर और यहां पर ये देखिए ये
- 4:45:28पासवर्ड एनकोडर का इस्तेमाल कर रहा है।
- 4:45:30यानी कि पासवर्ड को एनकोड कर रहा है। हमने
- 4:45:32एनकोड नहीं किया हुआ है। लेकिन ये जो
- 4:45:34तरीका है या ऐसे यूजर को यूजर में रोल सेट
- 4:45:38करना है। ठीक है? तो यहां पर अगर मैं रोल
- 4:45:39सेट करना चाहूं तो यहां पर मैं यूजर रोल
- 4:45:41सेट कर दिया इसका इन दोनों का और इसका मैं
- 4:45:44रोल सेट कर दूंगा एडमिन।
- 4:45:46एडमिन ऐसे अब ये रोल तो सेट कर दिया। ठीक
- 4:45:50है? तो ये रोल कैसे सेट हो रहा है?
- 4:45:51इंटरनली इसको स्प्रिंग सिक्योरिटी क्या
- 4:45:53कहता है? इंटरनली इसको स्प्रिंग
- 4:45:55सिक्योरिटी कहता है अथॉरिटीज। सबसे पहले
- 4:45:58तो यही चीज आपको समझना जरूरी है कि यहां
- 4:46:00पर देखिए रोल्स यहां पर सेट करने दे रहा
- 4:46:02है आपको। आप रोल सेट कर रहे हो इस तरीके
- 4:46:04से। लेकिन इंटरनली इसको एज एन अथॉरिटी
- 4:46:06स्टोर कर रहा है ये। देखिए यहां पर
- 4:46:08अथॉरिटीज़ रिटर्न अथॉरिटीज़। ठीक है?
- 4:46:11अथॉरिटीज़ बोलते हैं इंटरनली स्प्रिंग
- 4:46:13सिक्योरिटी को रोल्स। ठीक है? रोल्स को
- 4:46:15इंटरनली स्प्रिंग सिक्योरिटी अथॉरिटीज़
- 4:46:17बोलते हैं। ठीक है? सॉरी। तो यह समझना
- 4:46:19जरूरी है क्योंकि अगर आपको कोई एरर आती है
- 4:46:21कुछ भी आपको स्टक ट्रेज देखनी है एरर आएगी
- 4:46:24तो आप यहां पर स्टैक ट्रेस देखोगे करेक्ट
- 4:46:26कि क्या एरर आई है यहां पर लिखा हुआ होगा
- 4:46:29अथॉरिटीज तो अथॉरिटीज होती क्या है ये
- 4:46:32समझना जरूरी है लोग क्या कंफ्यूज हो जाते
- 4:46:34हैं क्या अथॉरिटीज अथॉरिटीज बोल रहा है
- 4:46:36अथॉरिटीज है रोल्स ठीक है बस और दूसरी चीज
- 4:46:40रोल अंडरस्कोर आप देखोगे यहां पे जो भी आप
- 4:46:42रोल पास कर रहे हो ना वहां पर रोल
- 4:46:45अंडरस्कोर ऐड किया जा रहा है देखिए यहां
- 4:46:48पर रोल अंडरस्कोर ऐड किया जा रहा है। आप
- 4:46:50देख रहे हो यहां पर पहले वह चेक कर रहा है
- 4:46:53कि रोल स्टार्ट होता है क्या रोल
- 4:46:55अंडरस्कोर से। अगर होता है तो ठीक है। अगर
- 4:46:58नहीं होता है तो यहां पर देखिए रोल
- 4:47:00अंडरस्कोर ऐड किया जा रहा है। रोल
- 4:47:02अंडरस्कोर क्यों ऐड किया जा रहा है? ठीक
- 4:47:05है? रोल अंडरस्कोर क्यों ऐड किया जा रहा
- 4:47:06है? क्योंकि इंटरनली स्प्रिंग सिक्योरिटी
- 4:47:09में रोल्स को रोल अंडरस्कोर और फिर एडमिन।
- 4:47:13रोल अंडरस्कोर और फिर यूजर तो उस तरीके से
- 4:47:16अह रिप्रेजेंट किया जाता है। ठीक है? तो
- 4:47:18देखिए यहां पर स्प्रिंग सिक्योरिटी में
- 4:47:20आपने यूजर और एडमिन पास कर दिया लेकिन
- 4:47:21इंटरनली यहां पर उसको स्टोर किया जाएगा
- 4:47:24रोल अंडरस्कोर यूजर। ठीक है? और इसको
- 4:47:27स्टोर किया जाएगा रोल अंडरस्कोर एडमिन। तो
- 4:47:30यहां पर आ जाएगा एडमिन इस तरीके से। ठीक
- 4:47:32है? ये इंटरनल चीजें हैं। लेकिन ये आपको
- 4:47:35हेल्प करती है समझने में। इंटरव्यूज वगैरह
- 4:47:37में ये सारी चीजें हेल्प करती है जो मैं
- 4:47:39बता रहा हूं आपको। आप इंटरव्यू प्रूफ भी
- 4:47:41होते जा रहे हो और आपको यह भी समझ में आ
- 4:47:44रहा है किस तरीके से चीजें इंटरनली वर्क
- 4:47:46करती है तो आगे चलकर कोई इशू आती है, कोई
- 4:47:48एरर आती है, कुछ डिब करना है, कुछ नहीं चल
- 4:47:50रहा है तो वो सारी चीजें आप कर सकते हो।
- 4:47:52अनलेस एंड अंटिल आपको ये समझ में नहीं
- 4:47:54आएगा। आप वो सब नहीं कर पाओगे। ठीक है? तो
- 4:47:56मैं इसके लिए ज्यादा टाइम लगता नहीं है ये
- 4:47:58सब एक्सप्लेन करने के लिए। ठीक है? लेकिन
- 4:48:00ये सारी चीजें काफी इंपॉर्टेंट है। ठीक
- 4:48:02है? तो ये सारी चीजें समझ में आ गई। देखिए
- 4:48:04ये जो प्रैक्टिस है ना यहां पर मैं जाके
- 4:48:06सोर्स कोड खोल लेता हूं इंटरनल। यहां पर
- 4:48:09मैंने जो मेथड लिखा है उसका सोर्स कोड ही
- 4:48:10मैं खोल लेता हूं। देखिए इसको अगर आप ओवर
- 4:48:12करके यहां पर आओगे तो यह सेम मेथड पर
- 4:48:14आएगा। अब यह मेथड में हो क्या रहा है मैं
- 4:48:16देख लेता हूं। तो ये जो प्रैक्टिस है ये
- 4:48:19आप भी कीजिए। आप अगर कुछ भी बना रहे हो
- 4:48:21बिल्ड कर रहे हो तो ये प्रैक्टिस रहना
- 4:48:22जरूरी है ताकि आप आप यू नो आपको पता रहे
- 4:48:26कि बिहाइंड द सीन्स क्या हो रहा है। बाहर
- 4:48:28से तो क्या हो रहा है वो सबको पता है। ठीक
- 4:48:30है? आप ऑनलाइन एक एग्जांपल सर्च कर लोगे
- 4:48:33आपको मिल जाएगा जो मैं कर रहा हूं। लेकिन
- 4:48:34इंटरनली हो क्या रहा है यह आपको कोई नहीं
- 4:48:36बताएगा। तो यह समझना जरूरी है और उसके लिए
- 4:48:39यह प्रैक्टिस जरूरी है। जो प्रैक्टिस आप
- 4:48:40देख रहे हो मेरे स्क्रीन पर जहां पर हम
- 4:48:43इंटरनल क्लास फाइल्स को ओपन करके
- 4:48:45इंटेलिजेंट में डॉक्यूमेंटेशन देखते हैं
- 4:48:48वो जरूरी है। ठीक है? ऑनलाइन आर्टिकल्स
- 4:48:50गलत हो सकते हैं। लेकिन ये डॉक्यूमेंटेशन
- 4:48:52कभी गलत नहीं होगा। ये रियल है। ठीक है?
- 4:48:53क्योंकि ये ऑफिशियल है। करेक्ट? तो ये
- 4:48:55देखिए मैंने रोल असाइन कर दिया है। ठीक
- 4:48:58है? अब मैं क्या करता हूं? यहां पर आ जाता
- 4:49:01हूं। ठीक है? अब हम क्या करेंगे? एक चीज
- 4:49:04को सिमुलेट करेंगे। ठीक है? मैं यहां पर
- 4:49:07एक एक नहीं दो एंड पॉइंट बना देता हूं।
- 4:49:10ठीक है? एक बनाता हूं स्लश एडमिन हेलो।
- 4:49:14ठीक है? और सी एडमिन हेलो बोल देता हूं
- 4:49:16इसे। और यहां पर कहूंगा हेलो कॉमा एडमिन
- 4:49:20ऐसे। ठीक है? तो ये हो गई एडमिन को एक्सेस
- 4:49:23होने वाली एपीआई। ठीक है? और दूसरी मैं
- 4:49:26एंड पॉइंट बनाता हूं जो कि रहेगा यूजर।
- 4:49:29यूजर हेलो। तो यहां पर कहूंगा हेलो यूजर।
- 4:49:33ठीक है? और हेलो यूजर और यहां पर कहूंगा
- 4:49:36हेलो से यूजर हेलो इस तरीके से ठीक है तो
- 4:49:39अब हमारे पास तीन एंड पॉइंट है एक स्लैश
- 4:49:41हेलो एडमिन हेलो स्लश यूजर स्लैश ये हमने
- 4:49:45क्यों किया है ताकि मैं आपको रोल बेस्ड
- 4:49:47एक्सेस कंट्रोल का डेमोंस्ट्रेशन दे पाऊं
- 4:49:49सिंपल सिंपल एंड पॉइंट्स रखे हैं सिर्फ ये
- 4:49:51जो टेक्स्ट मैसेज है उसको चेंज किया है जो
- 4:49:53हमें रिटर्न में मिल रहा है ठीक है अब मैं
- 4:49:55यहां पर आ जाऊंगा सिक्योरिटी कॉन्फिग में
- 4:49:57अब रोल्स तो हमने असाइन कर दिए यूजर को
- 4:49:59ठीक है अब इन रोल का इस्तेमाल कैसे करना
- 4:50:01है ठीक है तो हमें यहां पर ऊपर आना है और
- 4:50:04यहीं पर हम रोल बेस्ड एक्सेस कंट्रोल को
- 4:50:08इंप्लीमेंट करेंगे। तो यहां पर मैं क्या
- 4:50:09करूंगा? यहां पर मैं करूंगा रिक्वेस्ट
- 4:50:11मैचर्स। ठीक है? अच्छा यहां पर
- 4:50:16ऑथराइज़ रिक्वेस्ट ऑथराइज़ रिक्वेस्ट डॉट
- 4:50:19रिक्वेस्ट मैच ऐसे और यहां पर लिख दूंगा
- 4:50:23स्लैश एडमिन स्लैश एडमिन की जो एंड
- 4:50:25पॉइंट्स है तो मैंने ऐसे पैटर्न लिख दिया
- 4:50:28यहां पर देखिए ये पैटर्न। सो स्लैश एंड
- 4:50:30पॉइंट स्लैश एडमिन सॉरी नॉट स्लैश एंड
- 4:50:33पॉइंट स्लैश एडमिन जो भी एंड पॉइंट में है
- 4:50:36वो मैं चाहता हूं कि सिर्फ एडमिन लोग ही
- 4:50:39इस्तेमाल कर पाए। तो हैज़ रोल हैज़ रोल और
- 4:50:44यहां पर लिख दूंगा एडमिन। तो ये जो एंड
- 4:50:47पॉइंट है सिर्फ एडमिन ही यूज़ कर पाएगा।
- 4:50:50ठीक है? करेक्ट। और फिर मैं यहां पर लिखता
- 4:50:53हूं फिर से डॉट रिक्वेस्ट मैचर्स। ठीक है?
- 4:50:57और यहां पर लिखूंगा
- 4:51:00यूज़र्स यूजर था कि यूज़र्स था वो देख लेते
- 4:51:03हैं। यूजर ठीक है? स्लश यूजर जो भी एंड
- 4:51:06पॉइंट में है वो इस्तेमाल कर पाए
- 4:51:11डॉट हैज़ रोल और वो इस्तेमाल कर पाए यूजर
- 4:51:15और एडमिन को भी उसका एक्सेस दे देते हैं।
- 4:51:18ठीक है? एडमिन ऊप्स
- 4:51:22ऐसे। ठीक है? इतना हो गया। अब
- 4:51:27ठीक है? ठीक है? अब यहां पर रेड मार्क आ
- 4:51:28रहा है तो यहां पर मुझे डॉट लगाना होगा इस
- 4:51:30तरीके से। ठीक है? और आई थिंक ऑथराइज़्ड
- 4:51:33रिक्वेस्ट की जरूरत है नहीं यहां पर। ठीक
- 4:51:36है? इतना हो गया। और यहां पर एरर आ रही
- 4:51:39है। ठीक है? ये एरर इसलिए आ रही है
- 4:51:41क्योंकि ये हैज़ रोल दो पैरामीटर्स नहीं
- 4:51:43लेता है। ठीक है? हैज़ एनी रोल लेता है।
- 4:51:46हैज़ एनी रोल का इस्तेमाल करना होगा। लेकिन
- 4:51:48मैं हैज़ रोल इस्तेमाल करता हूं अभी के
- 4:51:49लिए। तो एक काम करते हैं। यूजर के यूजर को
- 4:51:52ही रखते हैं। यहां पर एडमिन को हटा देते
- 4:51:53हैं। ठीक है? चीजों को सिंपल रखते हैं और
- 4:51:56इसको जो है मैं रन कर दूंगा। ठीक है? इसको
- 4:51:58रन करते हैं। देखते हैं क्या आउटपुट आता
- 4:52:00है। तो यहां पर आ जाता हूं मैं। ठीक है?
- 4:52:02और यहां पर स्लैश हेलो है हमारे पास।
- 4:52:05करेक्ट एक नई एंड पॉइंट बना लेता। लेता
- 4:52:08हूं। यहां पर आ जाता हूं। और यहां पर
- 4:52:10ऑथराइजेशन में आ जाता हूं। बेसिक ऑथ अच्छा
- 4:52:14अब क्या हो गया? बेसिक ऑथ और यहां पर
- 4:52:17स्लैश एडमिन
- 4:52:19हेलो। ठीक है? एडमिन हेलो। तो अब देखिए ये
- 4:52:23एप्लीकेशन तो स्टार्ट हो गई है एडमिन हेलो
- 4:52:25एडमिन का यूजरनेम पासवर्ड डालते हैं और
- 4:52:27इसको रन करते हैं तो देखिए चल जाएगी हेलो
- 4:52:29एडमिन ठीक है हेलो एडमिन अब यहां पर मैं
- 4:52:32स्लैश यूजर ऐड कर देता हूं स्लैश यूजर रन
- 4:52:35करोगे तो देखिए 403 फॉरबिडन आ गया 403
- 4:52:39फॉरबिडन का मतलब यह है कि एक्सेस टू द
- 4:52:42रिसोर्स इज़ प्रोहिबिटेड
- 4:52:44ठीक है देखिए यहां पर दो स्टेटस कोड्स
- 4:52:47हमने देखे 401 अनऑथराइज्ड और 403 फॉरबिडन
- 4:52:51ठीक है? 401 अन ऑथराइज का मतलब ये है कि
- 4:52:55आपने जो यूजरनेम पासवर्ड डाला है वो
- 4:52:57इनकरेक्ट है। ऐसा कोई यूजर है ही नहीं।
- 4:52:59ठीक है? 403 फॉरबिडन का मतलब ये है कि
- 4:53:02यूजरनेम पासवर्ड तो करेक्ट है लेकिन ये जो
- 4:53:04चीज आप एक्सेस करना चाह रहे हो इसकी आपको
- 4:53:06परमिशन नहीं है। आप नहीं कर सकते इसे
- 4:53:09एक्सेस। तो ये दोनों स्टेटस कोड्स में
- 4:53:12डिफरेंस है। समझना जरूरी है। 401 क्यों
- 4:53:15है? 403 क्यों है? 401 अनअथराइज़्ड। 403
- 4:53:19फॉरबिडन बट यू आर ऑथराइज्ड। ठीक है? आप
- 4:53:21ऑथेंटिकेट हो चुके हो लेकिन फॉरबिडन हो।
- 4:53:24ठीक है? तो यह दिखाई दे रहा है आपको और
- 4:53:27यहां पर देखिए कुछ लॉग्स में कुछ आया
- 4:53:28नहीं। यहीं पर रिक्वेस्ट रिजेक्ट हो गई
- 4:53:30है। ठीक है? अब मैं इसके बजाय अगर मैं
- 4:53:33यूजर और फिर सॉरी यू पासवर्ड वन ये
- 4:53:38पासवर्ड वन हो गया। और यह यूजर वन हो गया।
- 4:53:40इसको अगर लेकर रिक्वेस्ट चलाता हूं तो
- 4:53:42देखिए चल जाएगी। क्योंकि यह सिर्फ यूजर
- 4:53:45एक्सेस कर सकता है। ठीक है? अकॉर्डिंग टू
- 4:53:48जो हमने रूल एस्टैब्लिश किया है। यह जो
- 4:53:50रूल मेंशन किया है उसी के हिसाब से सब चल
- 4:53:52रहा है। करेक्ट आप देख पा रहे हो। और
- 4:53:55स्लैश हेलो तो वैसे भी काम करेगा। एडमिन
- 4:53:57के लिए भी काम करेगा। स्लैश हेलो और यहां
- 4:54:01पर अगर मैं यूजर का पासवर्ड भी डाल दूं तो
- 4:54:04यूजर वन और फिर पासवर्ड वन। ऐसे भी डाल
- 4:54:08दूं तो यह तो वैसे भी चलने वाला है
- 4:54:10क्योंकि यहां पर मैंने रोल बेस्ड
- 4:54:11रिस्ट्रिक्शंस डाले नहीं है। मैंने सिर्फ
- 4:54:13इसको ऑथेंटिकेटेड मार्क किया है। रोल
- 4:54:15बेस्ड रिस्ट्रिक्शंस स्लैश एडमिन और स्लैश
- 4:54:17यूजर पे है। ठीक है? तो आप देख पा रहे हो
- 4:54:19कैसे मैं एक यूजर से एक चीज एक्सेस कर पा
- 4:54:22रहा हूं लेकिन दूसरी चीज नहीं। और दूसरे
- 4:54:25यूजर से दूसरी चीज एक्सेस कर पा रहा हूं
- 4:54:27लेकिन पहली नहीं। ठीक है? तो ये है रोल
- 4:54:31बेस्ड एक्सेस कंट्रोल। अब यहां पर थोड़ी
- 4:54:33मॉडिफिकेशंस कर देंगे। ठीक है? देखिए यहां
- 4:54:34पर मैं चाहता हूं कि स्लैश यूजर की जो
- 4:54:36एपीआई है वो यूजर भी एक्सेस करे और एडमिन
- 4:54:39भी पहले एडमिन एक्सेस नहीं कर पा रहा था।
- 4:54:41ठीक है? तो देखिए यहां पर अगर आप आते हो
- 4:54:43अच्छा यहां पर तो स्लैश यूजर स्लैश हेलो
- 4:54:46तो एडमिन को अगर यूजर तो कर पा रहा है।
- 4:54:48अगर मैं एडमिन से यहां पर कोशिश करूं तो
- 4:54:51एडमिन पासवर्ड तो मुझे फॉरबिडन आ जाएगा।
- 4:54:53देखिए फॉरबिडन इसका मतलब मैं अलाउड नहीं
- 4:54:56हूं। ठीक है? तो यहां पर हैज़ एनी रोल लिख
- 4:54:58देता हूं। तो अगर आप मल्टीपल रोल्स का
- 4:55:00इस्तेमाल करना चाहते हो और मल्टीपल रोल्स
- 4:55:03का एक्सेस देना चाहते हो किसी एक
- 4:55:04पर्टिकुलर रिसोर्स पे के लिए तो हैज़ एनी
- 4:55:06रोल का इस्तेमाल करना है और इसको रन करता
- 4:55:08हूं मैं। ठीक है? यहां से ऐसे रन कर
- 4:55:10दूंगा। अब रन करने पर देखिए मैं यहां पर
- 4:55:13एडमिन से इसको एक्सेस नहीं कर पा रहा था
- 4:55:14लेकिन अब कर पाऊंगा। देखिए कर पा रहा हूं।
- 4:55:17और यूजर से भी कर पाऊंगा। तो यहां पर यूजर
- 4:55:19वन लिखता हूं और फिर यहां पर लिखता हूं
- 4:55:21पासवर्ड वन।
- 4:55:24इससे भी कर पाऊंगा। देखिए दोनों से चल रही
- 4:55:26है। तो दोनों रोल्स के जो यूजर है वो
- 4:55:29स्लैश यूजर से जो भी एंड पॉइंट बनेगी उसको
- 4:55:31एक्सेस कर सकते हैं। स्लैश यूजर से जो भी
- 4:55:34एंड पॉइंट बनेगी आप अगर 10 एंड पॉइंट
- 4:55:35बनाते हो स्लैश यूजर से तो उस पे ये रूल
- 4:55:38एप्लीकेबल हो जाएगा। स्लैश एडमिन से अगर
- 4:55:40कोई एंड पॉइंट बनाते हो तो उस पर ये रूल
- 4:55:42एप्लीकेबल हो जाएगा। ठीक है? है ना
- 4:55:44जबरदस्त चीज? तो ये है रूल बेस्ड एक्सेस
- 4:55:47कंट्रोल। उम्मीद करता हूं आपको यह क्लियर
- 4:55:50रहा और आप इसको फॉलो कर पाए।
- 4:55:57अब देखिए रोल बेस्ड एक्सेस कंट्रोल तो ठीक
- 4:56:00है। ठीक है? अ मैं बात करना चाहता हूं
- 4:56:04मेथड बेस्ड एक्सेस कंट्रोल के बारे में।
- 4:56:07ठीक है? अब मेथड बेस्ड एक्सेस कंट्रोल है
- 4:56:09क्या? देखिए यहां पर आपने जो जो रूल्स
- 4:56:13लगाए सिक्योरिटी के वो आपने सेंट्रली
- 4:56:15लगाए। सेंट्रली का मतलब क्या है?
- 4:56:16सिक्योरिटी कॉन्फिग की एक फाइल है और
- 4:56:18उसमें आप सारे रोल्स लगा दिए हो कि किसको
- 4:56:21अ किस किस रोल को किस एंड पॉइंट की एक्सेस
- 4:56:24है। ठीक है? आप फ्यूचर में अगर कोई और एंड
- 4:56:27पॉइंट्स बनाते हो तो आप यहां पर ये
- 4:56:28रिक्वेस्ट मैचर्स को डुप्लीकेट करके और भी
- 4:56:30रूल्स यहां पर डिफाइन कर सकते हो। ठीक है?
- 4:56:33लेकिन स्प्रिंग सिक्योरिटी में एक ऐसा
- 4:56:36तरीका भी है जहां पर आप मेथड लेवल पर
- 4:56:38सिक्योरिटी को अ इंप्लीमेंट कर सकते हो।
- 4:56:41और वो करने के लिए आपको क्या करना है?
- 4:56:43आपको कुछ एनोटेशंस दिए जाते हैं और उस
- 4:56:46एनोटेशन का इस्तेमाल करना है आपको। तो
- 4:56:49आपको क्या करना है? सबसे पहले तो यहां पर
- 4:56:51आपको लिखना है इनेबल
- 4:56:54मेथड सिक्योरिटी। ठीक है? अगर आप मेथड
- 4:56:56लेवल पर चीजों को सिक्योर करना चाहते हो
- 4:56:58और मेथड को सिक्योर करना चाहते हो। ठीक
- 4:57:00है? तो आपको इस्तेमाल करना है इनेबल मेथड
- 4:57:03सिक्योरिटी। और फिर आप किसी भी मेथड पर आ
- 4:57:08जाइए। तो मान लीजिए मैं यही मेथड पर आ
- 4:57:10जाता हूं। ठीक है? और यहां पर मैं लिखता
- 4:57:13हूं अ प्री ऑथोराइज़। ठीक है? ऐसा एनोटेशन
- 4:57:17और फिर यहां पर लिखूंगा हैज़ रोल। और फिर
- 4:57:21यहां पर मैं लिखूंगा एडमिन। तो अब जो हेलो
- 4:57:24की एंड पॉइंट है वो सिर्फ एडमिन एक्सेस कर
- 4:57:27पाएगा और कोई नहीं। ठीक है? तो कोई भी अगर
- 4:57:30एक्सेस करना चाहे इस एंड पॉइंट को तो हम
- 4:57:33चाहते हैं कि उसके पास रोल हो एडमिन का।
- 4:57:36ठीक है? तो इसको रन करके देखते हैं। चलिए।
- 4:57:39ठीक है? रन करोगे आप तो देखिए यहां पर आते
- 4:57:43हैं तो पहले हेलो तो आप एक्सेस कर पा रहे
- 4:57:45थे यूजर से ठीक है यूजर से देखिए 200 ओके
- 4:57:48आया हुआ है लेकिन अब ऐसे रन करोगे आप तो
- 4:57:50देखिए 403 फॉरबिट इन और ये सिर्फ एडमिन से
- 4:57:53ही चलेगा अभी एडमिन और फिर एडमिन पासवर्ड
- 4:57:56ऐसे एडमिन से ही चलेगा क्योंकि आपने मेथड
- 4:57:59लेवल सिक्योरिटी यहां पर इंप्लीमेंट कर दी
- 4:58:01है। कहां पर इंप्लीमेंट किया है आपने?
- 4:58:03मेथड लेवल पर इंप्लीमेंट किया है। आपने
- 4:58:04सेंट्रलाइज़्ड कॉन्फ़िगरेशन का इस्तेमाल
- 4:58:06नहीं किया है। देखिए अब सिक्योरिटी
- 4:58:08कॉन्फ़िगरेशन की जो फाइल है ये वाली जिसका
- 4:58:10नाम सिक्योरिटी कॉन्फ़िग है हमारे
- 4:58:12एप्लीकेशन में आप कोई भी नाम दे सकते हो।
- 4:58:14लेकिन जो भी नाम दे दो ये सिक्योरिटी
- 4:58:16कॉन्फ़िगरेशन की फाइल कहता है इसे। क्योंकि
- 4:58:17इसमें सिक्योरिटी की सारी कॉन्फ़िगरेशंस
- 4:58:19डिफाइंड है। तो सिक्योरिटी कॉन्फ़िगरेशन की
- 4:58:22हमारी जो फाइल है, उसमें आपने जो रूल्स
- 4:58:24डिफाइन किए हैं। ठीक है? वो तो ठीक है
- 4:58:27लेकिन आपने मेथड लेवल पर जो रूल्स डिफाइन
- 4:58:30किए हैं उसकी मदद से यह चल रहा है। ठीक
- 4:58:33है? और अगर आप मैं इसको कमेंट कर लेता
- 4:58:35हूं। ठीक है? तो देखिए प्री ऑथराइज
- 4:58:37एनोटेशन आ भी कहां से रहा है? ये आ रहा है
- 4:58:40सिक्योरिटी फ्रेमवर्क से। तो अगर मैं इसे
- 4:58:42कमेंट कर देता हूं तो जैसे पहले चल रही थी
- 4:58:43बिना ऑथेंटिकेशन के वैसे चलने लग जाएगी।
- 4:58:46सॉरी बिना ऑथेंटिकेशन के नहीं बिना
- 4:58:48ऑथराइजेशन के वैसे चलने लग जाएगी। ठीक है?
- 4:58:50तो एक हिसाब से मैंने रोल बेस्ड एक्सेस
- 4:58:52कंट्रोल यहां पर डाल दिया है मेथड लेवल पर
- 4:58:55और मैं यहां पर हैज़ रोल तो लिख दिया है
- 4:58:57मैंने। इसको डुप्लीकेट कर देता हूं। हैज़
- 4:58:59एनी रोल भी लिख सकता हूं मैं। ठीक है? हैज़
- 4:59:02एनी रोल ऐसे और यहां पर एडमिन कॉमा और फिर
- 4:59:06यहां पर यूजर भी लिख सकता हूं। तो दो
- 4:59:08रोल्स को एक्सेस दे दिया है मैंने इस एंड
- 4:59:10पॉइंट का। वैसा भी कर सकता हूं मैं। तो
- 4:59:12इसको रन कर रहा हूं मैं। ठीक है? यहां पर
- 4:59:14आओगे तो देखिए अब तक यह एडमिन से चल रहा
- 4:59:16था। अच्छा सर्वर डाउन हो गया। अब तक एडमिन
- 4:59:19से चल रहा था यह। ठीक है? एडमिन से तो चल
- 4:59:21रहा है। अब मैं यहां पर इसको यूजर से भी
- 4:59:23चलाऊंगा। ठीक है? इसको यूजर से भी
- 4:59:26चलाएंगे। ऐसे देखिए यूजर से भी चल रहा है।
- 4:59:28एडमिन से भी चल रहा है। ठीक है? क्यों?
- 4:59:30क्योंकि मैंने यूजर और एडमिन दोनों के रूल
- 4:59:32इसको असाइन कर दिए इस एंड पॉइंट। तो इसे
- 4:59:34कहते हैं मेथड लेवल एक्सेस कंट्रोल। ठीक
- 4:59:37है? और देखिए, हमने जो भी अभी तक सीखा है,
- 4:59:39मैं आपको बता देता हूं। हमने जो भी सीखा
- 4:59:41है, हमने दो इंपॉर्टेंट कांसेप्ट्स को
- 4:59:43सीखा है। दो इंपॉर्टेंट कांसेप्ट्स। ठीक
- 4:59:45है? सबसे पहले हमने सीखा है ऑथेंटिकेशन।
- 4:59:48ऑथेंटिकेशन का मतलब है आप यूजरनेम पासवर्ड
- 4:59:51को किस तरीके से वैलिडेट कर सकते हो। अगर
- 4:59:53कोई रिक्वेस्ट आ रही है तो वो ऑथेंटिकेटेड
- 4:59:55है या नहीं? सही सोर्स से आ रही है कि
- 4:59:57नहीं? उसमें यूजर क्रेडेंशियल सही है या
- 4:59:59नहीं? उसे कहते हैं ऑथेंटिकेशन। ठीक है?
- 5:00:02ऑथेंटिकेशन होने के बाद इस यूजर को
- 5:00:04किस-किस चीज का एक्सेस है? उसे कहते हैं
- 5:00:07ऑथोराइजेशन।
- 5:00:10ठीक है? ऑथराइजेशन। तो देखिए ऑथेंटिकेशन
- 5:00:13का मतलब क्या है? आप बिल्डिंग में आ गए।
- 5:00:16ठीक है? आई कार्ड आपने लगाया, दरवाजा खुल
- 5:00:18गया। आप बिल्डिंग में घुस गए। ऑफिस में
- 5:00:20घुस गए। मान लीजिए बिल्डिंग नहीं ऑफिस है
- 5:00:22आपकी। ऑफिस में घुस गए आप। अब ऑफिस में
- 5:00:25घुसने के बाद आपको किस-किस डिपार्टमेंट का
- 5:00:27एक्सेस है वो डिटरमाइन करता है ऑथराइजेशन।
- 5:00:30तो ऑफिस में घुसना इज़ ऑथेंटिकेशन। क्योंकि
- 5:00:33जो ऑफिस का जो सिस्टम लगा है, जहां पर आप
- 5:00:35आई कार्ड पंच करके अंदर जाते हो, दरवाजा
- 5:00:37खुल जाता है। वो सिस्टम को पता है कि
- 5:00:40अच्छा आप अंदर आ चुके। कैसे पता? क्योंकि
- 5:00:42आपका आई कार्ड पंच हुआ है। करेक्ट? तो इसे
- 5:00:44कहेंगे ऑथेंटिकेशन। यूजर ऑथेंटिकेट हो
- 5:00:46चुका है। यह जो एंट्री थी वह ऑथेंटिकेट हो
- 5:00:48चुकी है। लेकिन अब यह यूजर कहां-कहां जा
- 5:00:50सकता है? वह डिटरमाइन करेगा ऑथराइजेशन।
- 5:00:52ठीक है? और ऑथेंटिकेशन को हमने इंप्लीमेंट
- 5:00:54किया स्प्रिंग सिक्योरिटी की मदद से। ठीक
- 5:00:57है? और यूजरनेम पासवर्ड ऑथेंटिकेशन
- 5:00:59इंप्लीमेंट किया है। और यहां पर भी हमने
- 5:01:01सिक्योरिटी का इस्तेमाल किया। लेकिन यहां
- 5:01:02पर रोल बेस्ड एक्सेस कंट्रोल जिसे आरबीएसी
- 5:01:06भी कहा जाता है। रोल बेस्ड एक्सेस
- 5:01:08कंट्रोल। तो ये दोनों चीजें हम देख चुके
- 5:01:10हैं और रोल बेस्ड एक्सेस कंट्रोल में भी
- 5:01:11हमने देखा है अ क्या देखा है हमने अ मेथड
- 5:01:15लेवल
- 5:01:17और सेंट्रल
- 5:01:19ठीक है सेंट्रल का मतलब है सेंट्रल
- 5:01:21ऑथेंटिकेशन ठीक है तो ये मेथड लेवल थोड़ा
- 5:01:23गलत हो गया है सेंट्रल भी नहीं बोलते
- 5:01:25सेंट्रलाइज्ड बोलूंगा ठीक है ऐसे तो रोल
- 5:01:29बेस्ड एक्सेस कंट्रोल में मेथड लेवल रोल
- 5:01:31बेस्ड एक्सेस कंट्रोल और सेंट्रलाइज्ड
- 5:01:33ऑथेंटिकेशन सॉरी सेंट्रलाइज्ड ऑथराइजेशन
- 5:01:36ठीक है ये दोनों चीज हम देख चुके हैं
- 5:01:38उम्मीद करता हूं यह हेल्पफुल रहा और आपको
- 5:01:40अब तक सब समझ में आया।
- 5:01:47तो दोस्तों आप सिक्योरिटी की मदद से चीजों
- 5:01:50को ऑथेंटिकेट तो कर पा रहे हो, ऑथराइज भी
- 5:01:53कर पा रहे हो। अब जो चीज रह गई है वो यह
- 5:01:57है कि यहां पर आप जो भी यूज़र्स बना रहे हो
- 5:02:00वो यूजर आप बना रहे हो इन मेमोरी। यानी कि
- 5:02:03यह यूज़र्स जो है यह डेटाबेस में नहीं बनाए
- 5:02:06जा रहे हैं। यह बनाए जा रहे हैं सिर्फ इन
- 5:02:08मेमोरी। ठीक है? तो, हम क्या देखने वाले
- 5:02:10हैं कि आप जो यूज़र्स बना रहे हो उनको आप
- 5:02:14डेटाबेस में कैसे स्टोर कर सकते हो और
- 5:02:17अगेंस्ट अ डेटाबेस यूजर यानी कि एक यूजर
- 5:02:19जो डेटाबेस में एक्सिस्ट करता है उसको आप
- 5:02:22किस तरीके से इस्तेमाल कर सकते हो
- 5:02:24ऑथेंटिकेशन के लिए। क्योंकि असल जिंदगी
- 5:02:26में अगर आप काम करोगे प्रोडक्शन रेडी
- 5:02:27एप्लीकेशनेशंस पर काम करोगे तो आप डेटाबेस
- 5:02:30में जो यूजर सेव्ड है उसे ही इस्तेमाल
- 5:02:32करोगे ऑथेंटिकेशन और ऑथराइजेशन के लिए।
- 5:02:35ठीक है? ये ऐसे इन मेमोरी तो आप जो डेमो
- 5:02:38प्रोजेक्ट्स या पीओसीस बना रहे हो कुछ
- 5:02:40क्लाइंट्स के लिए उसमें यूज़ करोगे। ठीक
- 5:02:42है? तो फिलहाल मैं क्या करूंगा? देखिए,
- 5:02:44अभी फिलहाल तो डेटाबेस कॉन्फ़िगरर्ड नहीं
- 5:02:46है हमारे एप्लीकेशन में। अगर आप pmxl में
- 5:02:49भी जाओगे तो यहां पर डेटाबेस की कोई भी
- 5:02:51डिपेंडेंसी लगी हुई नहीं है। तो मैं आपको
- 5:02:53बताऊंगा कि आप माय सीक्वल का इस्तेमाल
- 5:02:56कैसे कर सकते हो। तो यहां पर मैं आ जाऊंगा
- 5:02:58start.
- 5:03:00जो कि है हमारी फेवरेट वेबसाइट जो कि हम
- 5:03:03इस्तेमाल करते हैं स्प्रिंगboot डेवलपमेंट
- 5:03:06के दौरान और यहां पर मैं टाइप कर दूंगा
- 5:03:08एसक्यूएल और यहां पर या तो फिर माय सीक्वल
- 5:03:12टाइप कीजिए और यह माय सीक्वल का जो
- 5:03:13ड्राइवर है वह आपको दिख जाएगा। यहां पर
- 5:03:16आइए और फिर इस ड्राइवर को एक हिसाब से
- 5:03:20कॉपी कर लीजिए ऐसे। ठीक है? और यहां पर
- 5:03:24इसकी डिपेंडेंसी को है ऐड कर दीजिए। ठीक
- 5:03:26है? अब इतना करने के बाद हमें क्या करना
- 5:03:28है? हमें जो देखिए माय सीक्वल का ड्राइवर
- 5:03:32तो ऐड हो चुका है हमारी एप्लीकेशन में। अब
- 5:03:33हमें माय सीक्वल के लिए जो कनेक्शन
- 5:03:37डिटेल्स है यानी कि देखिए स्प्रिंग बूट को
- 5:03:39तो पता है हम My सीक्वल का इस्तेमाल कर
- 5:03:41रहे हैं। जैसे ही हमने यह ऐड कर दी
- 5:03:42डिपेंडेंसी। इसको बाय द वे मेवन रीलोड भी
- 5:03:44कर देना यहां पर ताकि डिपेंडेंसी फैच हो
- 5:03:46जाए और चेंजेस सारे सिंक हो जाए। देखिए ये
- 5:03:48सब हो रहा है ज़ॉल्विंग मेवन डिपेंडेंसी।
- 5:03:50ठीक है? ये कर लीजिएगा। अब हमने स्प्रिंग
- 5:03:52बूट को ये तो बता दिया कि हमें माय सीक्वल
- 5:03:54डेटाबेस का इस्तेमाल करना है। ठीक है? माय
- 5:03:55सीक्वल डेटाबेस का इस्तेमाल करना है।
- 5:03:57लेकिन अब इसकी इस डेटाबेस को कनेक्ट कैसे
- 5:04:00करना है। कहां है डेटाबेस? तो उसके लिए
- 5:04:02मैं यहां पर कुछ कॉन्फ़िगरेशन पेस्ट कर
- 5:04:04दूंगा और यहां पर अ लिख दूंगा सिक्योरिटी।
- 5:04:07सिक्योरिटी अ ऐप ऐसे करके। ठीक है? तो
- 5:04:11देखिए ये है मेरी डेटाबेस की कनेक्शन
- 5:04:14डिटेल्स। तो अब इतना कर लिया है हमने। अब
- 5:04:16हम क्या करेंगे? अब हम अ यहां पर आ
- 5:04:19जाएंगे। ठीक है? ये हमने सिक्योरिटी ऐप
- 5:04:21बनाया है यहां पर ये स्कीमा का नाम। तो
- 5:04:24यहां पर आके मैं क्या करूंगा? यहां पर
- 5:04:26राइट क्लिक करके क्रिएट अ स्कीमा और यहां
- 5:04:29पर सिक्योरिटी ऐप नाम का स्कीमा बना
- 5:04:31दूंगा। देखिए मैं माय सीक्वल का इस्तेमाल
- 5:04:32कर रहा हूं। आप चाहो तो कोई और डेटाबेस
- 5:04:35इस्तेमाल कर सकते हो। पॉस्कर सीक्वल
- 5:04:37इस्तेमाल कर सकते हो। ठीक है? तो माय
- 5:04:39सिक्योरिटी सिक्योरिटी ऐप करके यह स्कीमा
- 5:04:41बन चुका है और इसको रिफ्रेश करूंगा यहां
- 5:04:43पर तो दिख भी जाएगा सिक्योरिटी ऐप देखिए
- 5:04:46सिक्योरिटी अंडरs ऐप सिक्योरिटी ऐप ऑलरेडी
- 5:04:48था मेरे पास सिक्योरिटी अंडरs ऐप यूनिक
- 5:04:50होना जरूरी है नाम ठीक है तो मैं माय
- 5:04:52सीक्वल का इस्तेमाल कर रहा हूं आप चाहे तो
- 5:04:53पोस्टगड सीक्वल कोई और डेटाबेस अगर आपको
- 5:04:55पसंद है तो वो आप इस्तेमाल कर सकते हो गोल
- 5:04:58यह है मैं आपको यह दिखाना चाह रहा हूं कि
- 5:05:00किस तरीके से आप डेटाबेस में जो यूजर
- 5:05:03सेव्ड है उसके अगेंस्ट आप किस तरीके से
- 5:05:06ऑथेंटिकेशन कर सकते हो। ठीक है? तो इतना
- 5:05:09हो चुका। अब देखिए यहां पर हमने ठीक है?
- 5:05:13डेटाबेस को कनेक्ट कर लिया। यहां पर ये
- 5:05:14सारे क्रेडेंशियल्स हैं। हमने डायलग भी
- 5:05:16लिख लिया। ठीक है? और माय सिक्योरिटी
- 5:05:18कॉन्फिग पर आ जाते हैं। यहां पर अब माय
- 5:05:21सिक्योरिटी कॉन्फ़िग में अगर आप देखोगे तो
- 5:05:23यहां पर हमने कुछ यूज़र्स क्रिएट किए हुए
- 5:05:26हैं ऑलरेडी। और ये यूज़र्स क्रिएट हो रहे
- 5:05:29हैं मेमोरी में। क्योंकि हम यहां पर
- 5:05:31इस्तेमाल कर रहे हैं फिलहाल इन मेमोरी
- 5:05:34ऑथेंटिकेशन। ठीक है? तो मैं अब क्या करना
- 5:05:35चाहूंगा? मेमोरी में यूज़र्स नहीं क्रिएट
- 5:05:37करना चाहता मैं। मैं इस्तेमाल करना चाहता
- 5:05:39हूं अ डेटबेस का। ठीक है? तो यहां पर इसको
- 5:05:43कमेंट कर दूंगा मैं और यहां पर आऊंगा। और
- 5:05:46यहां पर देखिए यूजर अगर आप यूजर डिटेल्स
- 5:05:49मैनेजर टाइप करते हो यूजर डिटेल्स
- 5:05:53मैनेजर। ठीक है? तो यहां पर आपको दो यूजर
- 5:05:55डिटेल्स मैनेजर दिखेंगे। एक तो इन मेमोरी
- 5:05:58यूजर डिटेल्स मैनेजर। ठीक है? और दूसरा
- 5:06:00होना चाहिए जीडीबीसी।
- 5:06:04जेडीबीसी वाला कहां चला गया? ठीक है?
- 5:06:06जेडीबीसी वाला दिखाई नहीं दे रहा। सजेशन
- 5:06:08में आया नहीं। लेकिन जेडीपीसी
- 5:06:10यूजर डिटेल्स मैनेजर देखिए ये वाला है।
- 5:06:13ठीक है? तो इसका हम इस्तेमाल करेंगे
- 5:06:14क्योंकि हम डेटाबेस का इस्तेमाल कर रहे
- 5:06:16हैं यूज़र्स के लिए। तो जेडीबीसी का
- 5:06:19इस्तेमाल होगा और फिर यहां पर यूजर
- 5:06:21डिटेल्स मैनेजर इज़ इक्वल ट न्यू और फिर
- 5:06:25जेडीबीसी
- 5:06:27यूजर डिटेल्स मैनेजर और फिर यहां पर हमें
- 5:06:30इस्तेमाल करना होगा डेटा सोर्स का। ठीक
- 5:06:34है? अब देखिए यहां पर मैं लिखूंगा डेटा
- 5:06:36सोर्स का। तो ये जो यूजर डिटेल मैनेजर है,
- 5:06:40इसको किस डेटा सोर्स से बात करनी है? डेटा
- 5:06:42सोर्स का मतलब क्या? कि डेटाबेस कहां पर
- 5:06:44है? करेक्ट? डाटा सोर्स का मतलब क्या हुआ?
- 5:06:47डाटा बेस कहां पर है? तो हमें यहां पर
- 5:06:50क्या चाहिए? यह जो ऑब्जेक्ट है, यह है
- 5:06:53डेटाबेस का कनेक्शन ऑब्जेक्ट चाहिए हमें।
- 5:06:55क्योंकि उस कनेक्शन ऑब्जेक्ट की मदद से
- 5:06:58जीडीबीसी यूर यूजर डिटेल्स मैनेजर जो है,
- 5:07:00कनेक्शन एस्टैब्लिश करेगा और ये सारे जो
- 5:07:03यूज़र्स हमने यहां पर क्रिएट किए, उसको
- 5:07:04क्रिएट करेगा डेटाबेस में। करेक्ट? तो, यह
- 5:07:07डेटा सोर्स अब हम कहां से लाएं? ठीक है?
- 5:07:08तो, देखिए, हमने डेटाबेस को कॉन्फ़िगर कर
- 5:07:11रखा है। कहां कॉन्फ़िगर कर रखा है? तो हमने
- 5:07:13कॉन्फ़िगर कर रखा है यहां pmxl में। ये
- 5:07:16डिपेंडेंसी ऐड कर रखी है और यहां पर
- 5:07:18कॉन्फ़िगरेशंस मेंशंड है। तो कॉन्फ़िगरेशन
- 5:07:20डन है हमारे एंड से। लेकिन हम चाहते हैं
- 5:07:22उसका एक ऑब्जेक्ट मिले हमें। कनेक्शन का
- 5:07:24एक ऑब्जेक्ट मिले। तो मैं क्या करूंगा?
- 5:07:26मैं यहां पर डेटा सोर्स का एक ऑब्जेक्ट
- 5:07:28बनाऊंगा। आप देख रहे हो डेटा सोर्स और
- 5:07:30यहां पर कहूंगा डेटा सोर्स इस तरीके से और
- 5:07:33यहां पर ऐड कर दूंगा ऑटो वायड। ठीक है? तो
- 5:07:37ये क्या होने वाला है? इस कोड की मदद से
- 5:07:40क्या होगा? स्प्रिंग जो है ऑटोमेटिकली
- 5:07:43कॉन्फिगरर्ड डेटाबेस जो है हमारी
- 5:07:46एप्लीकेशन के साथ उसकी जो कनेक्शन
- 5:07:48ऑब्जेक्ट है ठीक है उसको इंजेक्ट कर देगा
- 5:07:51यहां पर जो जो भी कॉन्फ़िगर डेटाबेस है
- 5:07:54आपके पास पॉजग्रस सीक्वल है जो भी डेटाबेस
- 5:07:56है आपने कॉन्फ़िगर कर रखा है उसकी जो
- 5:07:58कनेक्शन ऑब्जेक्ट है उसको यहां पर पास कर
- 5:08:00देगा डेटा सोर्स ऑब्जेक्ट में ठीक है और
- 5:08:03इसका हम इस्तेमाल कर सकते हैं क्वरीज़ रन
- 5:08:05करने के लिए डेटाबेस से कनेक्ट करने के
- 5:08:08लिए ठीक है समझ में आ गया तो ये हम यहां
- 5:08:10पर इस्तेमाल कर रहे हैं। ठीक है? डेटा
- 5:08:12सोर्स यहां पर इस तरीके से और फिर मैं
- 5:08:16यहां पर आऊंगा। ठीक है? और यहां पर अब
- 5:08:18मेरे पास डेटा सोर्स है और यूजर डिटेल्स
- 5:08:20जीडीबीसी यूजर डिटेल्स मैनेजर का ऑब्जेक्ट
- 5:08:22भी है। तो मैं अब इस यूजर डिटेल्स मैनेजर
- 5:08:25की मदद से मैं क्रिएट करूंगा यूजर को यहां
- 5:08:28पर और मैं मेंशन करूंगा यूजर वन। सबसे
- 5:08:31पहले फिर मेंशन करूंगा यूजर टू और फिर
- 5:08:33मेंशन करूंगा एडमिन। ठीक है? सारे यूज़र्स
- 5:08:36क्रिएट हो जाएंगे और फिर मैं कहूंगा
- 5:08:38रिटर्न यूजर डिटेल्स मैनेजर।
- 5:08:42ठीक है? उम्मीद करता हूं समझ में आ रहा है
- 5:08:43आपको कि हो क्या रहा है। ठीक है? काफी
- 5:08:45सिंपल चीज हो रही है। पहले हम सिर्फ इन
- 5:08:47मेमोरी यूजर डिटेल्स मैनेजर का इस्तेमाल
- 5:08:49कर रहे थे। क्यों? क्योंकि हम यूज़र्स को
- 5:08:53इन मेमोरी मैनेज कर रहे थे। हम डेटाबेस का
- 5:08:55इस्तेमाल कर ही नहीं रहे थे। फिर हमने
- 5:08:57सोचा चलिए डेटाबेस को लेके आते हैं। तो
- 5:08:58पहले तो डेटाबेस एप्लीकेशन में कॉन्फ़िगर
- 5:09:00कर लिया हमने। ठीक है? फिर हमने यहां पर
- 5:09:02जीडीबीसी यूजर डिटेल्स मैनेजर की मदद से
- 5:09:04डेटाबेस को कनेक्ट किया। यहां पर उसकी
- 5:09:06कनेक्शन ऑब्जेक्ट की मदद से इसकी ऑब्जेक्ट
- 5:09:08बनाई यहां पर जो कि जीडीबीसी यूजर डिटेल्स
- 5:09:10मैनेजर है। और फिर हमने इस मैनेजर की मदद
- 5:09:14से तीन यूज़र्स को क्रिएट किया है। तीन
- 5:09:17यूज़र्स क्रिएट हो चुके हैं डेटाबेस में।
- 5:09:19अब हम एप्लीकेशन को रन करते हैं। ठीक है?
- 5:09:22और रन करते हैं और देखते हैं होता क्या
- 5:09:24है। अच्छा यहां पर कुछ गलत हो गया। क्या
- 5:09:27गलत हो गया है? यहां पर आ रही है कुछ एरर
- 5:09:31हमें। ठीक है? तो ये एरर क्या कह रहा है
- 5:09:35हमें?
- 5:09:37ठीक है? जावा कैन नॉट एक्सेस
- 5:09:41दिस। ओके। ये कहां पे बोल रहा है? लाइन
- 5:09:43नंबर 57 पे। ओके। तो यहां पर यह जो इशू आ
- 5:09:47रहा है यह शायद कुछ डिपेंडेंसी मिसिंग है
- 5:09:50जो कि जीडीबीसी डिपेंडेंसी जो मैंने ऐड
- 5:09:52नहीं किया है। तो यहां पर मुझे वो भी ऐड
- 5:09:55कर लेना चाहिए था। तो यहां पर जेडीबीसी
- 5:09:58लिख लूंगा। ठीक है? स्टार्टर जेडीबीसी ये
- 5:10:01वाला। ठीक है? अ इसको एक्सप्लोर करता हूं।
- 5:10:06यही है। अह जी हां, यही है। तो इसको कॉपी
- 5:10:11कर लूंगा यहां पर और यहां पर आ जाते हैं
- 5:10:14ओम ड.xml में यहां पर और इसको आराम से
- 5:10:18पेस्ट कर देते हैं ऐसे और इसको मेवन रीलोड
- 5:10:21कर देते हैं और फिर इसको रन करते हैं। ठीक
- 5:10:25है? तो अब डिपेंडेंसी रिलेटेड कुछ इशू
- 5:10:27नहीं आना चाहिए। लेकिन एक इशू शायद अभी भी
- 5:10:29आएगा। ठीक है? देखते हैं क्या होता है।
- 5:10:32देखिए इशू आ गया। ठीक है? यह पता ही था
- 5:10:35मुझे इशू आएगा ही। तो देखिए हो क्या रहा
- 5:10:39है मैं आपको बताता हूं। यह एप्लीकेशन
- 5:10:42स्टार्ट हुई। ठीक है? एप्लीकेशन स्टार्ट
- 5:10:44हुई और देखिए ये डेटा को इंसर्ट करना चाह
- 5:10:46रहा है। क्यों इंसर्ट करना चाह रहा है?
- 5:10:48क्योंकि हमने यहां पर सिक्योरिटी कॉन्फ़िग
- 5:10:50में लिखा है कि भाई डेटा सोर्स का
- 5:10:52ऑब्जेक्ट लीजिए। इसका मतलब माय सीक्वल की
- 5:10:55कनेक्शन बनाओ डीबीसी यूजर डिटेल्स मैनेजर
- 5:10:58की मदद से और ये तीन यूजर को क्रिएट कर
- 5:11:00दो। ठीक है? तीन यूजर को क्रिएट तो करना
- 5:11:02है। यह देखिए इंसर्ट क्वरी चल तो रही है
- 5:11:05लेकिन प्रॉब्लम यह है इसकी जो एसक्यूएल है
- 5:11:08यानी कि ये जो डेटाबेस है वो उसमें टेबल
- 5:11:13एग्ज़िस्ट ही नहीं करती है। टेबल एग्ज़िस्ट
- 5:11:14करती है नहीं करती है। तो आपको क्या करना
- 5:11:16होगा? मैनुअली टेबल बनाना होगा। ठीक है?
- 5:11:18अब मैनुअली टेबल बनाने के लिए मैं क्या
- 5:11:20करूंगा? मैं यहां पर लिखूंगा यूज़
- 5:11:22सिक्योरिटी अंडरs ऐप ऐसे। ये मैनुअली ये
- 5:11:26मैंने डेटाबेस का इस्तेमाल कर दिया। और
- 5:11:28यहां पर ये जो एसक्यूएल क्वेरी है इसको
- 5:11:31मैंने पेस्ट कर दिया। ठीक है? तो देखिए ये
- 5:11:33सिंपल क्वेरी है। ऐसा कुछ नहीं है। आप
- 5:11:35इसको टाइप कर सकते हो खुद से। लेकिन मैं
- 5:11:37यूज़र्स को क्रिएट कर रहा हूं। इसमें
- 5:11:39यूजरनेम, पासवर्ड नाम की फील्ड रखा हूं और
- 5:11:41इनेबल्ड नाम की फील्ड है। ठीक है? ये तीन
- 5:11:43फील्ड है। यूजरनेम, वेयर केयर और पासवर्ड
- 5:11:46और नॉट नल प्राइमरी की है ये। यूजरनेम और
- 5:11:49यह भी नॉट नल है। अथॉरिटीज़ जहां पर हम रोल
- 5:11:52स्टोर करेंगे। ठीक है? तो यहां पर यूजरनेम
- 5:11:54को मैंने लिखा है अथॉरिटी और एक
- 5:11:56कंस्ट्रेंट रखा है जहां पर अ ये यूजरनेम
- 5:12:00यहां का यूजरनेम और इसके यूजरनेम में एक
- 5:12:03प्राइमरी की फॉरेन की का रिलेशनशिप है।
- 5:12:05ठीक है? ये मैंने किया और एक इंडेक्स बना
- 5:12:07दिया मैंने। ठीक है? एक इंडेक्स बनाई है
- 5:12:09ये। तो इतना क्रिएट करना है आपको और मैं
- 5:12:12क्या करता हूं? इसको मैं कॉपी कर लेता हूं
- 5:12:14और इसको रन कर देता हूं। अच्छा तो ये क्या
- 5:12:17हो गया?
- 5:12:19यहां पर अच्छा यह इंडेक्स नहीं बन रही है
- 5:12:22लेकिन यह दोनों तो शायद बन रहे हैं। तो एक
- 5:12:24हिसाब से मैं पहले इसको बना लेता हूं। यह
- 5:12:26बन गया। फिर मैं इसको बनाता हूं। ये भी बन
- 5:12:29गया। और अब मैं इंडेक्स को बनाता हूं। ठीक
- 5:12:32है? तो एक-एक करके क्वरी अगर एग्जीक्यूट
- 5:12:34करोगे तो बन जाएगा। देखिए तीनों बन चुके
- 5:12:36हैं। और अगर यहां पर इसको रन करता हूं
- 5:12:37मैं। ठीक है? तो ये देखिए ये आ चुके हैं
- 5:12:41दोनों। ठीक है? ये बन चुका है। अब आप क्या
- 5:12:44कर सकते हो? यहां पर आ जाइए। ठीक है? और
- 5:12:47यह एप्लीकेशन को रन कीजिए। तो अभी स्कीमा
- 5:12:49तो डिफाइंड है। अब यह एप्लीकेशन रन तो
- 5:12:51वैसे होनी ही चाहिए। देखिए एप्लीकेशन रन
- 5:12:54हो गई है। स्टार्ट हो चुकी है। ठीक है? तो
- 5:12:55स्कीमा का ही इशू था। और अगर आप यहां पर
- 5:12:57आते हो यूज़र्स में और इसको रन करते हो तो
- 5:13:00देखिए हमारे पास यूज़र्स क्रिएट हो चुके
- 5:13:03हैं। यूज़र्स क्रिएट हो चुके हैं। अथॉरिटी
- 5:13:05देखते हैं। अथॉरिटी में देखिए एडमिन जो
- 5:13:08यूजर है उसको एडमिन का रोल दिया हुआ है।
- 5:13:10यूजर वन जो है उसको यूजर का रोल दिया हुआ
- 5:13:13है। और यूजर टू जो है उसको यूजर का रोल
- 5:13:15दिया हुआ है। ठीक है? अब देख रहे हो किस
- 5:13:17तरीके से ये क्रिएट हो गया यहां पर। ठीक
- 5:13:19है? और यहां पर देखिए यहां पर कुछ लॉग्स
- 5:13:21तो मिलेंगे नहीं लेकिन आपको थोड़ी एनहांस
- 5:13:23लॉगिन इनेबल करनी होगी एप्लीकेशन
- 5:13:24प्रॉपर्टीज में। ठीक है? और सिक्योरिटी
- 5:13:27लेवल पर अगर आप लॉग इन इनेबल करते हो तो
- 5:13:29आपको यहां पर इंसर्ट क्वेरीज भी दिखाई
- 5:13:31देगी। ठीक है? तो हो क्या रहा है?
- 5:13:33एप्लीकेशन स्टार्ट पर ये कॉन्फ़िगरेशन पिक
- 5:13:36की जा रही है स्प्रिंग सिक्योरिटी की मदद
- 5:13:39से। और स्प्रिंग सिक्योरिटी ये यूज़र्स जो
- 5:13:41है उसको डेटाबेस में क्रिएट कर रहा है। और
- 5:13:43ये डेटाबेस में तभी क्रिएट करेगा जब आपके
- 5:13:45पास स्कीमा है। स्कीमा कब बनाई हमने?
- 5:13:47स्कीमा का मतलब है डेटाबेस स्ट्रक्चर। तो
- 5:13:48वो हमने बना रखा है टेबल्स। ठीक है? और आप
- 5:13:51देख रहे हो यहां पर देखिए मैंने जो भी
- 5:13:53बताया है अब तक वो सारी चीजें आपको अब
- 5:13:55दिखाई देगी। यहां पर आप देख रहे हो यूज़र्स
- 5:13:57क्रिएट हो गई। ठीक है? यूज़र्स क्रिएट हो
- 5:13:59गए। अथॉरिटीज़ टेबल में आपको रोल्स दिखाई
- 5:14:01देंगे। और यहां पर आप देखोगे रोल
- 5:14:03अंडरस्कोर करके प्रीफिक्स है। यहां पर
- 5:14:05एडमिन आपने रोल क्या नाम क्या दिया है?
- 5:14:08आपने रोल का नाम सिर्फ एडमिन दिया है।
- 5:14:11लेकिन मैंने आपको कहा था कि रोल स्टोर
- 5:14:13होता है स्प्रिंग सिक्योरिटी में या
- 5:14:15स्प्रिंग सिक्योरिटी यूज़ करता है। उसमें
- 5:14:17रोल प्रीफिक्स ऐड करके। रोल अंडरस्कोर
- 5:14:19एडमिन। यह हमने एक इंटरनल फाइल भी ओपन
- 5:14:21करके देखा था। ठीक है? पूरा लॉजिक देखा था
- 5:14:24हमने। तो यहां पर देख पा रहे हो आप वो
- 5:14:26लॉजिक अप्लाई हो रहा है यहां पर। करेक्ट?
- 5:14:28और वो कौन सी फाइल थी वो भी मैं आपको बता
- 5:14:29देता हूं। रोल्स पे अगर आप ओवर करते हो
- 5:14:31अंदर जाते हो तो यहां पर आप देखोगे ये रोल
- 5:14:32अपेंड कर रहा है उसमें। ठीक है? तो रोल
- 5:14:34अपेंड हो रहा है आपका। जैसे ही आप ये सेट
- 5:14:36कर रहे हो और रोल अपेंड हो के सॉरी रोल
- 5:14:38प्रिपेंड हो के अपेंड नहीं रोल प्रिपेंड
- 5:14:40हो के यानी एडमिन के आगे रोल अंडरस्कोर लग
- 5:14:42रहा है। यूजर के आगे रोल अंडरस्कोर लग रहा
- 5:14:44है। यहां पर भी यूजर के आगे रोल अंडरस्कोर
- 5:14:46लग रहा है और वो रोल अंडरस्कोर के साथ ही
- 5:14:48सेव हो रहा है। ठीक है? तो स्प्रिंग
- 5:14:50सिक्योरिटी ये स्टाइल में यूज़ करता है
- 5:14:52रूल्स को। आप कुछ भी नाम दे दो आगे वो रोल
- 5:14:54अंडरस्कोर लगा लेगा। ठीक है? तो ये हो गई
- 5:14:57बात यहां पर। अब हम यहां पर आ जाते हैं और
- 5:14:59देखते हैं हमारी सारी एपीआई चल रही है
- 5:15:01क्या? ये एंड पॉइंट चलनी चाहिए ऐसे। जी
- 5:15:03हां, चल रही है। अगर मैं पासवर्ड गलत दे
- 5:15:06देता हूं लाइक तीन टाइप कर देता हूं। तो
- 5:15:07देखिए यह अनथराइज्ड आ रहा है। ठीक है?
- 5:15:09यहां पर आ जाता हूं यूजर में। यूजर का जो
- 5:15:12एंड पॉइंट है उसको यूजर एक्सेस कर पा रहा
- 5:15:14है। जी हां, कर पा रहा है। एडमिन के एंड
- 5:15:16पॉइंट को यूजर एक्सेस कर पाएगा। एडमिन
- 5:15:18हेलो ट्राई करते हैं। जी नहीं कर पाएगा।
- 5:15:21देखिए मैंने एडमिन चेंज किया यहां पर एंड
- 5:15:23पॉइंट को। अगर यूजर कर लूं तो यूजर कर
- 5:15:25पाएगा। देखिए और एडमिन कर लूं तो एडमिन
- 5:15:27नहीं कर पाएगा। तो ये कैसे काम कर रहा है?
- 5:15:30यह काम कर रहा है डेटाबेस में जो यूज़र्स
- 5:15:32क्रिएटेड है उसके अगेंस्ट। ठीक है? इन
- 5:15:34मेमोरी ऑथेंटिकेशन नहीं है अब ये। अब यह
- 5:15:37डेटाबेस ऑथेंटिकेशन है जहां पर आपका जो
- 5:15:40डेटाबेस है उसके अगेंस्ट ऑथेंटिकेशन लगी
- 5:15:43हुई है और चीजें उस तरीके से काम कर रही
- 5:15:46है। ठीक है? तो यही है पूरा का पूरा
- 5:15:50सिस्टम। ठीक है? और यहां पर कुछ लोगों को
- 5:15:52ये मैंने अक्सर देखा है बिगिनर्स को ये
- 5:15:54डेटा सोर्स समझने में दिक्कत आती है कि
- 5:15:56डेटा सोर्स में ऑटोमेटिकली कनेक्शन की
- 5:15:58डिटेल्स कैसे इंजेक्ट हो जाती है। तो
- 5:15:59देखिए डेटा सोर्स में जो भी कनेक्शन की
- 5:16:02डिटेल्स इंजेक्ट होती है वो कॉन्फ़िगरेशन
- 5:16:05अ स्प्रिंग बूट को मिलता है यहां से
- 5:16:07एप्लीकेशन प्रॉपर्टीज में से। ठीक है? तो
- 5:16:09एप्लीकेशन प्रॉपर्टीज में से स्प्रिंग बूट
- 5:16:11क्या करता है? कॉन्फ़िगरेशन डिटेल्स लेता
- 5:16:13है, कनेक्शन ऑब्जेक्ट बनाता है, कनेक्शन
- 5:16:15बनता है और फिर यह डेटा सोर्स बीन में आकर
- 5:16:18यहां पर असाइन कर देता है और हमें हमारे
- 5:16:21लिए वो अवेलेबल हो जाती है। यहां पर हमने
- 5:16:23ऑटो वायर लिखा है तो हम स्प्रिंग बूट को
- 5:16:24बोल रहे हैं कि भाई तुम ही मैनेज करो। ठीक
- 5:16:26है? तो ऑटो कॉन्फ़िगरेशन मैकेनिज्म यहां पर
- 5:16:29काम में आ जाता है। और यहां पर आप देखोगे
- 5:16:30तो देखिए स्प्रिंग डॉट डेटा सोर्स लिख रहे
- 5:16:32हो। डेटा सोर्स डेटा सोर्स। तो यही वो
- 5:16:35डेटा सोर्स ऑब्जेक्ट है जो यहां पर हमें
- 5:16:36मिल रहा है। ठीक है? तो यही है। आप चाहो
- 5:16:40तो ये क्लास को जाकर ऐसे आप पढ़ भी सकते
- 5:16:42हो कि क्या हो रहा है यहां पर। ठीक है? तो
- 5:16:44ये फैक्ट्री है फॉर कनेक्शंस। ठीक है?
- 5:16:46कनेक्शन को रिप्रेजेंट करता है। तो यही है
- 5:16:50अ डेटाबेस रिलेटेड ऑथेंटिकेशन और उम्मीद
- 5:16:53करता हूं ये हेल्पफुल लगा आपको।
- 5:17:01देखिए दोस्तों अगर फिलहाल आप हमारी यूज़र्स
- 5:17:05टेबल देखेंगे तो आप देखोगे उसमें जो डेटा
- 5:17:08है यानी कि पासवर्ड है वो बिल्कुल के
- 5:17:10बिल्कुल नॉन इंक्रिप्टेड फॉर्म में है।
- 5:17:13किसी तरह का हैशिंग वगैरह कुछ नहीं लगा
- 5:17:15हुआ है। ठीक है? इसको इंक्रिप्ट नहीं किया
- 5:17:17गया है। तो जनरली पासवर्ड को ऐसे स्टोर
- 5:17:20करना सही बात नहीं है। ठीक है? तो अभी तक
- 5:17:22तो हमने किया नहीं क्योंकि हम लर्न कर रहे
- 5:17:24थे लेकिन फिलहाल हम बात करेंगे पासवर्ड
- 5:17:27एनकोडिंग की और हैशिंग की। देखिए पासवर्ड
- 5:17:31एनकोडिंग हैशिंग वगैरह के ना काफी सारे
- 5:17:33एल्गोरिदम्स होते हैं। और स्प्रिंग
- 5:17:35सिक्योरिटी इतना बढ़िया है कि यहां पर
- 5:17:38ऑलरेडी इंप्लीमेंट किए हुई चीजें हैं। ठीक
- 5:17:41है? तो अगर आप यहां पर आओगे ठीक है? यहां
- 5:17:44पर टाइप कीजिए बिक्रिप्ट।
- 5:17:47ठीक है? बिक्रिप्ट पासवर्ड एनकोडर। तो अगर
- 5:17:50इसमें आप जाओगे यहां पर डाउनलोड सोर्स कर
- 5:17:53लीजिए। ठीक है? तो यह एक हिसाब से एक
- 5:17:54क्लास है। ठीक है? और देखिए एक यह
- 5:17:57इंप्लीमेंटेशन है पासवर्ड एनकोडर का और ये
- 5:18:01बिक्रिप्ट स्ट्रांग हैशिंग फंक्शन का
- 5:18:03इस्तेमाल करता है। ठीक है? तो बेसिकली ये
- 5:18:06एक हैशिंग फंक्शन का इस्तेमाल करके हमारे
- 5:18:10जो पासवर्ड्स हैं उसको अ सिक्योर करने में
- 5:18:13मदद करता है और ये जो पासवर्ड्स है उसको
- 5:18:16इस तरीके से इनकोड करेगा कि ह्यूमन के लिए
- 5:18:19रीडेबल नहीं होगा। ठीक है? लेकिन
- 5:18:21एप्लीकेशन में आप डेटाबेस में स्टोर कर
- 5:18:23सकते हो और ये अगर कोई डेवलपर या कोई भी
- 5:18:26इस डेटा को एक्सेस करता है उसे वो पासवर्ड
- 5:18:28समझ में नहीं आएंगे। ठीक है? तो एक हिसाब
- 5:18:31से सिक्योरिटी मैकेनिज्म है जो हम
- 5:18:33इंप्लीमेंट करने जा रहे हैं। ठीक है? और
- 5:18:35देखिए पासवर्ड एनकोडिंग या हैशिंग ये एक
- 5:18:38हिसाब से क्रिटिकल है। तो अगर आपका
- 5:18:41डेटाबेस मल्टीपल लोग इस्तेमाल कर रहे हैं,
- 5:18:44एक्सेस कर रहे हैं। देखिए जनरली कंपनीज़
- 5:18:46में क्या होता है? डेटाबेस का एक्सेस है
- 5:18:47ना काफी सारे लोगों को होता है। डेटाबेस
- 5:18:49डेवलपर को होता है, सिस्टम एडमिनस को होता
- 5:18:51है। टीम लीड्स को भी होगा शायद। डेटा टीम
- 5:18:53को होता है। डेटाबेस का एक्सेस काफी लोगों
- 5:18:55को होता है। लेकिन अब उसमें ये लोग
- 5:18:57पासवर्ड देखने लग जाएंगे। तो वह तो गलत
- 5:18:59चीज़ हो गई। ये लोग पासवर्ड अगर आप दिखा
- 5:19:00रहे हो सबको और ऐसे ही स्टोर कर रहे हो
- 5:19:02पासवर्ड को तो यह तो डेवलपर की गलती है
- 5:19:05जिसने यह फंक्शनैलिटी बनाई क्योंकि अब उस
- 5:19:08पासवर्ड का इस्तेमाल करके उन
- 5:19:09क्रेडेंशियल्स का इस्तेमाल करके कोई भी
- 5:19:10एंप्लई यानी कि एंप्लई अगर कंपनी छोड़
- 5:19:13देता है फ्यूचर में और उसके पास वो डेटा
- 5:19:15है यू नो उसने वो डेटा नोट कर लिया था
- 5:19:17कहीं पर तो वो उसका मिसयूज़ भी कर सकता है
- 5:19:19और अगर सर्वर वगैरह कुछ हैक होता है
- 5:19:22डेटाबेस हैक होता है तो प्रॉब्लम क्या
- 5:19:24होगी कि आपका जो
- 5:19:27डेटा है ठीक है उसमें सब कुछ नॉन
- 5:19:30इंक्रिप्टेड फॉर्म में है और कोई भी उसको
- 5:19:31इस्तेमाल कर सकता है। तो हैशिंग, पासवर्ड
- 5:19:34एनकोडिंग ये सारी चीजें क्रिटिकल है। ठीक
- 5:19:36है? और हैश पासवर्ड पासवर्ड की मदद से आप
- 5:19:40ना डायरेक्टली यूजर का पासवर्ड को
- 5:19:42एक्चुअली रिवील नहीं करते हो। ठीक है? तो
- 5:19:44सबसे बढ़िया प्रैक्टिस तो यही है
- 5:19:46सिक्योरिटी स्टैंड पॉइंट से कि पासवर्ड को
- 5:19:48कभी भी इस तरीके से स्टोर नहीं करना है।
- 5:19:50ये हमने किया गलती से। ये गलती नहीं
- 5:19:53कहूंगा। जान के किया क्योंकि हम लर्न कर
- 5:19:56रहे थे और कांसेप्ट्स को एक-एक करके समझ
- 5:19:57रहे मैं नहीं चाहता था कि हैशिंग पासवर्ड
- 5:20:00एनकोडिंग के कांसेप्ट को मैं पहले ही
- 5:20:02इंट्रोड्यूस कर दूं और काफी सारे
- 5:20:04कांसेप्ट्स हो जाते हैं तो
- 5:20:07लोग कंफ्यूज हो जाते हैं। ठीक है? तो अब
- 5:20:09हम क्या करेंगे? अब हम पासवर्ड एनकोडिंग
- 5:20:12को इंप्लीमेंट करेंगे यहां पर। तो मैं
- 5:20:14क्या करने वाला हूं? मैं यहां पर आ जाता
- 5:20:15हूं। ठीक है? बिक्रिप्ट एनकोडर को
- 5:20:17इस्तेमाल करेंगे। यहां पर बिक्र काफी
- 5:20:19कॉमनली यूज़ होने वाला एल्गोरिदम है। ठीक
- 5:20:21है? तो मैं यहां पर लिख देता हूं पब्लिक
- 5:20:24पासवर्ड एनकोडर। तो यहां पर हम पासवर्ड
- 5:20:26एनकोडर का बीन सबसे पहले तो बना लेंगे।
- 5:20:28ठीक है? पासवर्ड एनकोडर का बीन। यह क्यों
- 5:20:30बनाएंगे? ताकि हम इस पासवर्ड एनकोडर के
- 5:20:33बीन को कहीं पर भी हमारी एप्लीकेशन में
- 5:20:35इस्तेमाल कर पाए। क्योंकि ये स्प्रिंग
- 5:20:36मैनेज कंपोनेंट हो जाएगा। करेक्ट? तो यहां
- 5:20:38पर लिखना है पासवर्ड एनकोडर। और आप कोई भी
- 5:20:41एनकोडर इस्तेमाल कर सकते हो। लेकिन यहां
- 5:20:44पर अ हम यूज़ करेंगे न्यू अ सॉरी रिटर्न
- 5:20:48न्यू बिक्रिप्ट पासवर्ड एनकोडर का
- 5:20:52इंस्टेंस रिटर्न करेंगे हम। तो हमारी
- 5:20:53एप्लीकेशन में हम बिक्रिप्ट पासवर्ड
- 5:20:55एनकोडर का इंस्टेंस रिटर्न कर रहे हैं और
- 5:20:58बिक्रिप पासवर्ड एनकोडर एक अह पासवर्ड
- 5:21:00एनकोडर का टाइप है। ठीक है? तो पासवर्ड
- 5:21:02एनकोडर का बीन ए के हिसाब से हम एक्सपोज़
- 5:21:04कर रहे हैं। अब यहां पर आएंगे और पासवर्ड
- 5:21:06जब हम स्टोर कर रहे हैं। देखिए तो हम यहां
- 5:21:08पर नूब का इस्तेमाल कर रहे हैं। मैं इसको
- 5:21:09डुप्लीकेट कर लेता हूं और एक लाइन को
- 5:21:11कमेंट कर देता हूं। और यहां पर मैं
- 5:21:13लिखूंगा पासवर्ड डॉट। ठीक है? यहां पर जो
- 5:21:16भी पासवर्ड है इसको कॉपी कर लेता हूं। ये
- 5:21:18वाले पासवर्ड को कट कर लेता हूं। और ये
- 5:21:19इसे हटा देता हूं। ठीक है? यहां पर लिख
- 5:21:22दूंगा पासवर्ड एनकोडर डॉट एनकोड और यहां
- 5:21:25पर लिख दूंगा पासवर्ड वन ऐसे। ठीक है? सेम
- 5:21:29लॉजिक का इस्तेमाल करेंगे। यहां से
- 5:21:30पासवर्ड को हटा देंगे और फिर लिखेंगे
- 5:21:33पासवर्ड एनकोडर डॉट एनकोड सॉरी और ऐसे लिख
- 5:21:37देंगे। ठीक है? सेम लॉजिक यहां पर भी और
- 5:21:41यहां पर भी ऐसे कट कर लूंगा मैं इसे और
- 5:21:43फिर मैं लिख दूंगा पासवर्ड एनकोडर डॉट
- 5:21:46एनकोड और यहां पर लिख दूंगा ये। ठीक है?
- 5:21:48अब मैं एप्लीकेशन को रन करता हूं। अब
- 5:21:50देखते हैं क्या होता है। ठीक है? रन करके
- 5:21:52देखते हैं। तो एप्लीकेशन रन होने जा रही
- 5:21:55है। हो चुकी। अच्छा नहीं हुई है रन। अब
- 5:22:00कुछ दिक्कत आ गई है। अच्छा डुप्लीकेट
- 5:22:02एंट्री फॉर यूज़र्स डॉट प्राइमरी। तो
- 5:22:05दिक्कत ये हो रही है कि ये जो यूजर है
- 5:22:08यूजर वन ये ऑलरेडी क्रिएटेड है। ठीक है?
- 5:22:11तो मैं क्या करूंगा? यहां पर आ जाता हूं।
- 5:22:14कहां पर आना चाहिए मुझे? एप्लीकेशन डॉट
- 5:22:16प्रॉपर्टीज में। और यहां पर अपडेट की बजाय
- 5:22:18मैं कहूंगा क्रिएट ड्रॉप। यानी कि जब
- 5:22:21एप्लीकेशन स्टॉप हो तो जो डेटाबेस स्कीमा
- 5:22:23है उसे ड्रॉप कर दिया जाए। ऐसा कहूंगा
- 5:22:25मैं। ठीक है? तो ये रन नहीं होगा। ये
- 5:22:28स्टॉप हो गया। अब यहां पर अच्छा स्कीमा को
- 5:22:30ड्रॉप कर दिया है मैंने। तो अच्छा एक मिनट
- 5:22:34स्कीमा को ड्रॉप नहीं करना चाहिए मुझे।
- 5:22:36मुझे यहां पर अपडेट ही रहने देता हूं मैं।
- 5:22:38ठीक है? यहां पर आ जाता हूं। और यह जो
- 5:22:40सारे यूज़र्स हैं इनको सों को मैं डिलीट
- 5:22:42करना चाहूंगा। तो यहां पर राइट क्लिक करके
- 5:22:44ट्रंकेट टेबल कर देता हूं। ट्रंकेट
- 5:22:47अच्छा यह ट्रंकेट नहीं होगा क्योंकि रोल्स
- 5:22:49को पहले ट्रंकेट करना होगा क्योंकि
- 5:22:50प्राइमरी की फॉरेन की का रिलेशनशिप है और
- 5:22:53फिर इनको अच्छा क्या हो रहा है दिक्कत
- 5:22:56दिक्कत क्या हो रही है ये तो ट्रंकेट हो
- 5:22:58चुका है लेकिन यूज़र्स क्यों नहीं हो रहा
- 5:23:00है ट्रंकेट ट्रंकेट अच्छा ये एफ के यूज़र्स
- 5:23:06फॉरेन की लगी हुई है तो इसके लिए ट्रंकेट
- 5:23:09नहीं हो रहा है ऐसा बोल रहा है यह लेकिन
- 5:23:10फॉरेन की तो ठीक है तो यह जो फॉरेन की है
- 5:23:14इसके चलते नहीं हो रहा
- 5:23:17ठीक है? तो ड्रॉप करने में दिक्कत आ रही
- 5:23:18है मुझे। तो मैं क्या कर रहा हूं? यहां पर
- 5:23:20आ जाता हूं। ये दोनों टेबल्स को ही ड्रॉप
- 5:23:22करने की सोच रहा हूं। तो मैं टेबल को ही
- 5:23:24ड्रॉप कर देता हूं। ठीक है? मुझे क्योंकि
- 5:23:27इसमें टाइम वेस्ट नहीं करना है। सो ये
- 5:23:30टेबल को मैंने कर दिया ड्रॉप। ठीक है? और
- 5:23:32अब मैं इन दोनों टेबल्स को ठीक है?
- 5:23:35इंडेक्स को क्रिएट नहीं करता हूं। दोनों
- 5:23:36टेबल्स को क्रिएट कर दूंगा यहां पर। ठीक
- 5:23:37है? तो दोनों टेबल्स क्रिएट हो चुके हैं
- 5:23:39दोबारा। और ये क्लीन क्रिएशन हो गया है।
- 5:23:43ठीक है? यहां पर रिफ्रेश करूंगा। अच्छा
- 5:23:45यूज़र्स तो हो चुकी है। अथॉरिटी क्रिएट
- 5:23:47नहीं हुई। अथॉरिटी को भी क्रिएट कर देते
- 5:23:48हैं। ठीक है? रिफ्रेश किया। तो देखिए
- 5:23:50यूज़र्स और अथॉरिटीज़ दोनों क्रिएट हो चुकी
- 5:23:52है। और दोनों में अभी कोई डेटा नहीं है।
- 5:23:54ठीक है? अब हम एप्लीकेशन को रिस्टार्ट
- 5:23:56करते हैं। ठीक है? अ तो ये मैंने
- 5:23:59एप्लीकेशन को रिस्टार्ट किया है और अब आप
- 5:24:01अगर देखते हो यहां पर। ठीक है? यूज़र्स
- 5:24:05में। तो देखिए ये जो पासवर्ड है ये पूरी
- 5:24:07की पूरी तरह हैड है। ठीक है? ये ह्यूमन
- 5:24:12रीडेबल नहीं है। करेक्ट? आप इसे रीड नहीं
- 5:24:14कर सकते। करेक्ट। लेकिन आपकी जो एप्लीकेशन
- 5:24:17है वह सेम तरीके से काम करेगी। तो यहां पर
- 5:24:20अगर आप आते हो एक्सेस करने की कोशिश करते
- 5:24:22हो एडमिन एंड पॉइंट को तो आपको एरर दिया
- 5:24:24जाएगा। और यूजर एंड पॉइंट को एक्सेस करने
- 5:24:26की कोशिश करते हो यूजर तो देखिए यूजर से
- 5:24:29हम एडमिन को एक्सेस करने की कोशिश की तो
- 5:24:31यहां पर 403 फॉरबिडन और यूजर से हम यूजर
- 5:24:35के एंड पॉइंट को एक्सेस करने की कोशिश की
- 5:24:37तो ये चल गया। ठीक है? तो ये बिल्कुल चल
- 5:24:39रहा है प्रॉपर्ली। लेकिन जो पासवर्ड है वो
- 5:24:43रॉ टेक्स्ट फॉर्म में नहीं स्टोर हो रहा
- 5:24:45है। ऐसे फॉर्म हो रहा है। तो अब इससे क्या
- 5:24:46है? एक लेवल की सिक्योरिटी काफी अब एक
- 5:24:48लेवल नहीं मैं बोलूंगा आपकी सिक्योरिटी
- 5:24:50आपकी काफी बढ़ गई है। ठीक है? और हमने कोड
- 5:24:53ही क्या लिखा है? ठीक है? सब सब हमें
- 5:24:55रेडीमेड मिला था। अ स्प्रिंग सिक्योरिटी
- 5:24:58की मदद से हमने सिर्फ एनकोडर लगाया है।
- 5:25:00कौन सा एनकोडर यूज़ करना है वो बोल दिया
- 5:25:02है। ठीक है? और यहां पर देखिए एनकोडर को
- 5:25:05इस्तेमाल करके हमने पासवर्ड को एनकोड
- 5:25:06किया। बस इतना ही किया हमने। हमने ना तो
- 5:25:10एनकोडिंग का लॉजिक लिखा है। वो सब रेडीमेड
- 5:25:12मिला है हमें। देखिए वो सब लिखने की जरूरत
- 5:25:14नहीं है। आपको सिर्फ बिनेस लॉजिक पर फोकस
- 5:25:16करना है। और ये सब जो रीयूज़ होने वाली
- 5:25:18चीजें हैं जो हर एप्लीकेशन में लगती है।
- 5:25:20ये जो चीज है ना देखिए ये जो चीजें आप
- 5:25:22समझिए ये चीज हर एप्लीकेशन में लगती है।
- 5:25:24जहां पर आप सिक्योरिटी की सिक्योरिटी का
- 5:25:26इस्तेमाल करोगे वहां पर ये चीज लगने वाली
- 5:25:28है। ठीक है? तो ये बनी बनाई है स्प्रिंग
- 5:25:32सिक्योरिटी में और इसीलिए फ्रेमवर्क्स का
- 5:25:33इस्तेमाल करना लोग प्रेफर करते हैं रादर
- 5:25:35दैन रॉ लैंग्वेज। फ्रेमवर्क्स में क्या सब
- 5:25:37कुछ रेडीमेड मिल जाता है। स्टैंडर्ड चीजें
- 5:25:39होती है। आप उसको बस इस्तेमाल करना सही से
- 5:25:41आना है और आपको बिजनेस लॉजिक पर फोकस करना
- 5:25:45है। ठीक है? तो देखिए ये हो चुका है। अ
- 5:25:48हमने पूरा कर दिया है। थैंक यू वेरी मच।
- 5:25:57तो चलिए दोस्तों आगे बढ़ते हैं और समझेंगे
- 5:26:01कि जे डब्ल्यू टी क्या है और जे डब्ल्यू
- 5:26:04टी क्यों इस्तेमाल किया जाता है। ठीक है?
- 5:26:07तो मैं आपको कॉनंसेप्चुअली सब कुछ समझा
- 5:26:08समझा दूंगा यहां पर। ठीक है? तो देखिए
- 5:26:11सबसे पहले तो मैं आपको ये बता दूं JWT
- 5:26:15का मतलब है JSON वेब टोकन। ठीक है? इसका
- 5:26:20मतलब क्या है? एक काफी सिंपल तरीके से
- 5:26:24आपको बता देता हूं और फिर इसकी थोड़ी
- 5:26:25डिटेलिंग करेंगे हम। JWT टोकन इशू किया
- 5:26:29जाता है सर्वर द्वारा। तो अगर आप किसी अ
- 5:26:33एप्लीकेशन के अगेंस्ट खुद को ऑथेंटिकेट कर
- 5:26:35रहे हो और उसमें बैक एंड सर्वर है। ठीक
- 5:26:37है? तो आपने अपनी यूजरनेम क्रेडेंशियल्स
- 5:26:39भेज दी। अब यूजरनेम क्रेडेंशियल्स को
- 5:26:41वैलिडेट करके जो बैक एंड सर्वर है वो आपको
- 5:26:44इशू कर देगा एक टोकन।
- 5:26:47टोकन का मतलब क्या है? यह एक टिकट है। एक
- 5:26:50टिकट की तरह होता है। एक आपके पास एक टोकन
- 5:26:53आ जाएगा और वो स्ट्रिंग होगी। उसको आपको
- 5:26:57हर बार आप जभी भी रिक्वेस्ट भेज रहे हो तो
- 5:26:59आपको यूजरनेम पासवर्ड नहीं भेजना है। वो
- 5:27:00टोकन दिखा रहा है। तो वो टोकन एक हिसाब से
- 5:27:02आपकी टिकट पास बोल सकते हो या आई कार्ड
- 5:27:05बोल सकते हो। उसकी तरह होगा और उसकी एक
- 5:27:06एक्सपायरी होती है। ठीक है? तो टोकन की
- 5:27:09बहुत सारी चीज़ होती है। जैसे कि कब इशू
- 5:27:11हुआ? ठीक है? व्हेन इशूड और फिर एक्सपायरी
- 5:27:14और फिर और कुछ टोकन स्पेसिफिक डाटा है।
- 5:27:16जैसे कि टोकन में क्या-क्या रोल्स है वह
- 5:27:19सारी चीजें टोकन में ऐड हो सकती है। ठीक
- 5:27:22है? तो इसे ये जो टोकन है इसे कहते हैं
- 5:27:24JWD टोकन यानी कि जेसन वेब टोकन। इसकी
- 5:27:29थोड़ी डिटेलिंग करेंगे और समझेंगे कि यह
- 5:27:32इसको समझना क्यों जरूरी है और जो
- 5:27:34ट्रेडिशनल ऑथेंटिकेशन सिस्टम है जो
- 5:27:36स्प्रिंग सिक्योरिटी या कोई भी एप्लीकेशन
- 5:27:38में होता है। आप नोट js पकड़ लीजिए। कोई
- 5:27:40भी एप्लीकेशन में यूजरनेम पासवर्ड को
- 5:27:42वैलिडेट करके हर बार हर रिक्वेस्ट में
- 5:27:44वैलिडेट करना और हर रिक्वेस्ट में यूजरनेम
- 5:27:46पासवर्ड भेजना यह सही क्यों नहीं है? और
- 5:27:49जेडब्ल्यूडी का इस्तेमाल वाइडली इतना
- 5:27:51क्यों होता है? ये क्या प्रॉब्लम सॉल्व
- 5:27:53करता है? ये सारी चीजें समझेंगे। ठीक है?
- 5:27:55तो देखिए ट्रेडिशनल ऑथेंटिकेशन सिस्टम में
- 5:27:58होता क्या है? ठीक है? सबसे पहले तो ये
- 5:27:59क्लाइंट है। ठीक है? सी लिख देता हूं मैं।
- 5:28:02ठीक है? ज्यादा कुछ लिखूंगा नहीं यहां पर
- 5:28:04क्योंकि ज्यादा स्पेस लेगा ये और हमें
- 5:28:07थोड़ा लिखने के लिए थोड़ी स्पेस लगेगी।
- 5:28:10ठीक है? और ये है सर्वर। सर्वर या बोल
- 5:28:12सकते हो यह बैक एंड है। ठीक है? अब जनरली
- 5:28:15होता क्या है? यहां से एक रिक्वेस्ट आएगी।
- 5:28:18ठीक है? एक रिक्वेस्ट जानी है सर्वर के
- 5:28:20पास। तो कैसे जाएगी रिक्वेस्ट? क्लाइंट जो
- 5:28:23है अच्छा यहां पर एरो देखिए नीचे की ओर
- 5:28:25मुड़ गया। पता नहीं क्यों। ठीक है? इसको
- 5:28:27सीधे-सीधे एरो को ले लेते हैं। ठीक है? तो
- 5:28:30ये एक रिक्वेस्ट जा रही है सर्वर के पास
- 5:28:31क्लाइंट से। अब देखिए क्लाइंट कुछ भी हो
- 5:28:33सकता है। क्लाइंट का मतलब क्या है? या तो
- 5:28:34वह ब्राउज़र हो सकता है, वेब एप्लीकेशन हो
- 5:28:37सकता है या तो फिर पोस्टमैन हो सकता है।
- 5:28:39पोस्टमैन से आप रिक्वेस्ट भेज रहे हो बैक
- 5:28:41एंड की ओर या तो फिर आपने कोई मोबाइल ऐप
- 5:28:43बनाई है वो हो सकता है। तो ऐसी या तो कोई
- 5:28:46थर्ड पार्टी एप्लीकेशन हो सकता है। तो
- 5:28:47कहीं से भी एपीआई जो है आपकी हिट हो सकती
- 5:28:50है जहां-जहां आपने शेयर किया हुआ है या
- 5:28:52एपीआई को यूज़ कर रखा है। ठीक है? तो
- 5:28:55रिक्वेस्ट आएगी बैक एंड की ओर। अब
- 5:28:57रिक्वेस्ट ऑथेंटिकेट करने के लिए यूजरनेम
- 5:29:00पासवर्ड भेजना होगा क्लाइंट को। ठीक है?
- 5:29:02यूजरनेम पासवर्ड। तो एक्चुअल प्रोसेस कैसे
- 5:29:04वर्क करता है? मैं आपको वो लिख देता हूं।
- 5:29:06यहां पर देखिए सबसे पहला स्टेप होता है।
- 5:29:09ठीक है? यूजर अ क्लाइंट से आता है। ठीक
- 5:29:12है? क्लाइंट से आता है यूजरनेम
- 5:29:16और पासवर्ड। ठीक है? पासवर्ड क्लाइंट से
- 5:29:19आता है। ठीक है? इसको मैं थोड़ा छोटा भी
- 5:29:22कर देता हूं ताकि थोड़ा लिखने में दिक्कत
- 5:29:23ना हो। क्लाइंट से आता है यूजरनेम,
- 5:29:25पासवर्ड। अब क्या होगा? सर्वर पे यूजरनेम
- 5:29:28पासवर्ड आ जाता है। तो सर्वर क्या करेगा?
- 5:29:30सर्वर क्रिएट्स सेशन। ठीक है? क्योंकि
- 5:29:34देखिए हो सकता है यह जो क्लाइंट है ये
- 5:29:37रिक्वेस्ट को बार-बार एक्सेस करना चाहे या
- 5:29:39सॉरी ये सर्वर का जो डेटा है उसको बार-बार
- 5:29:41एक्सेस करना चाहे। तो सर्वर क्या करता है?
- 5:29:43यूजरनेम पासवर्ड वैलिडेट करता है। ठीक है?
- 5:29:45और फिर अ सर्वर जो है सेशन बनाता है। ठीक
- 5:29:49है? तो वैलिडेशन प्लस सर्वर क्रिएट्स
- 5:29:52सेशन। ठीक है? उसके बाद में एक सेशन आईडी
- 5:29:55दिया जाता है क्लाइंट को। ठीक है? तो
- 5:29:58क्लाइंट या सर्वर
- 5:30:00सेंड्स सेशन आईडी। ठीक है? क्लाइंट के पास
- 5:30:05एक सेशन आईडी आता है। इसका मतलब ये है
- 5:30:07उसका सेशन आईडी। और अब वो जभी भी
- 5:30:11रिक्वेस्ट भेजता है सर्वर को उसे वो सेशन
- 5:30:13आईडी भी साथ में भेजनी है। ठीक है? तो अगर
- 5:30:16आप देखते हो यहां पर यहां पर लिखता हूं
- 5:30:18क्लाइंट सेंड्स सेशन आईडी। जो सब्सीक्वेंट
- 5:30:20रिक्वेस्ट होती है उसके बाद उसमें क्लाइंट
- 5:30:22भेजेगा सेशन आईडी। और फिर सर्वर क्या
- 5:30:24करेगा? सर्वर लुक्स अप सेशन आईडी
- 5:30:29डाटा ऑल टाइम ठीक है या यहां पर लिख देता
- 5:30:32हूं एवरी टाइम ठीक है तो देखिए ये होता है
- 5:30:36ऑथेंटिकेशन का ऑथेंटिकेशन का नॉर्मल
- 5:30:38प्रोसेस क्लाइंट और सर्वर सिनेरियो में
- 5:30:41यहां पर क्लाइंट भेजेगा यूजरनेम पासवर्ड
- 5:30:44सर्वर जो है वैलिडेट करेगा ठीक है और सेशन
- 5:30:47क्रिएट करेगा और फिर सर् सर्वर सेशन आईडी
- 5:30:50भेजेगा क्लाइंट के पास और फिर क्लाइंट
- 5:30:52सेशन आईडी भेजेगा हर रिक्वेस्ट में जितनी
- 5:30:55भी बार वह रिक्वेस्ट भेज रहा है। उसमें
- 5:30:57सेशन आईडी भेजेगा कि अच्छा यह मेरी सेशन
- 5:30:58आईडी है। आप देख लीजिए जरा। तो सर्वर जो
- 5:31:01है सबसे पहले सेशन आईडी को चेक करेगा और
- 5:31:04फिर अ फिर जो रिक्वेस्ट है उसको फुलफिल
- 5:31:07करेगा। तो ये होता है पूरा का पूरा
- 5:31:09प्रोसेस। अब दोस्तों इतनी चीज तो आपको
- 5:31:11क्लियर हो गई। ठीक है? कि ये प्रोसेस
- 5:31:13जनरली कैसे वर्क करता है? ठीक है? तो अब
- 5:31:16इसमें दिक्कत क्या है? ठीक है? इसमें कुछ
- 5:31:18दिक्कतें खामियां होगी तभी तो JWT को लाया
- 5:31:21गया। करेक्ट? JWT अलग तरीके से काम करता
- 5:31:24है। JW स्टेटलेस होता है। ये सारी चीजें
- 5:31:26मैं आपको एक्सप्लेन करता हूं। क्या होता
- 5:31:28है ये सारे कॉन्सेप्ट्स। लेकिन मैं पहले
- 5:31:29तो इसमें प्रॉब्लम बताता हूं कि क्यों JWT
- 5:31:31को इन्वेंट किया गया और क्यों लाया गया?
- 5:31:33देखिए यहां पर सबसे पहली दिक्कत तो ये है
- 5:31:35कि सर्वर में आपको सेशन को ट्रैक करने की
- 5:31:39जरूरत है। ठीक है? सेशन को ट्रैक करने की
- 5:31:42जरूरत है। ठीक है? और अगर तो अगर आपके पास
- 5:31:45एक सर्वर है तो ठीक है? ये तो चल जाएगा।
- 5:31:47लेकिन अगर आपके पास मल्टी सर्वर सेटअप है
- 5:31:51तो उसमें क्या है एक सर्वर देखिए अगर अब
- 5:31:53अगर मेरे पास फ्यूचर में मल्टी सर्वर
- 5:31:54सेटअप आ जाता है तो मान लीजिए मैंने S1 ये
- 5:31:57मेरा सर्वर वन है। ये मेरी सर्वर टू है और
- 5:32:00मैंने और चार सर्वसर्स लगा दिए यहां पर।
- 5:32:02ठीक है? तो दिक्कत क्या होगी? चार
- 5:32:04सर्वसर्स लगा दिए मैंने। तो सपोज़ सर्वर वन
- 5:32:06पे सेशन आईडी क्रिएट हुई है। तो अब सर्वर
- 5:32:09टू को पता नहीं है उस सेशन आईडी के बारे
- 5:32:11में। ठीक है? तो मल्टीपल सर्वर्स में एक
- 5:32:13शेयरर्ड सेशन स्टोर होने की जरूरत है।
- 5:32:16यानी कि एक शेयर्ड स्टोरेज बनाने की जरूरत
- 5:32:17है। जहां पर सिर्फ सेशन आईडी स्टोर हो
- 5:32:19ताकि सभी सर्वर्स उसको एक्सेस कर पाएं।
- 5:32:22ठीक है? ये हो गई दूसरी दिक्कत। और अब ये
- 5:32:24जो मैं सेटअप बता रहा हूं यहां पर मल्टीपल
- 5:32:26सर्विज का बैक एंड में। यह माइक्रो
- 5:32:28सर्विसेस आर्किटेक्चर है और यह काफी कॉमन
- 5:32:30प्रैक्टिस है आजकल। ठीक है? और इतनी सी
- 5:32:32चीज के लिए शेयर स्टोरेज वगैरह सेटअप करो।
- 5:32:35यह काफी दिक्कत वाली बात हो जाती है। और
- 5:32:37यह बेहतर नहीं है एपीआई के लिए। मोबाइल
- 5:32:41एप्लीकेशनेशंस के लिए, क्लाइंट साइड
- 5:32:42एप्लीकेशन के लिए। ठीक है? क्योंकि हर बार
- 5:32:44क्या है? सर्वर को एक और चीज करनी होती है
- 5:32:46कि सेशन आईडी जब आता है, ठीक है? तो उसको
- 5:32:49सेशन आईडी लुकअप भी करना है, ढूंढना भी है
- 5:32:51सेशन आईडी। उसके एंड पे वैलिडेट भी करना
- 5:32:52है और फिर रिक्वेस्ट को आगे जाने देना है।
- 5:32:54तो ये दिक्कत है ये ट्रेडिशनल ऑथेंटिकेशन
- 5:32:56अप्रोच में। ठीक है? और सेशन आईडी अगर
- 5:32:59आपको देखना है एक्चुअल प्रैक्टिस में तो
- 5:33:00सेशन आईडी अगर आप फॉर्म बेस्ड ऑथेंटिकेशन
- 5:33:03का इस्तेमाल करते हो अ स्प्रिंग बूट में
- 5:33:05तो आपको जे सेशन आईडी करके कुछ मिलेगा।
- 5:33:08ठीक है? जे सेशन आईडी। तो ये जो जे सेशन
- 5:33:10आईडी होती है यही सेशन आईडी होती है जो
- 5:33:12फ्रंट एंड पर स्टोर होती है। आप जे सेशन
- 5:33:14आईडी को देख सकते हो। ब्राउज़र में अगर आप
- 5:33:16लॉग इन करते हो तो आप राइट क्लिक करके
- 5:33:18इंस्पेक्ट पे जाइए और वहां पर आप अगर
- 5:33:21कुकीज़ में जाओगे एप्लीकेशन के अंडर कुकीज़
- 5:33:24में तो वहां पर आप जेसेशन आईडी देख सकते
- 5:33:25हो। ठीक है? तो ये है अ प्रॉब्लम बेसिकली
- 5:33:29इस ट्रेडिशनल अप्रोच के साथ। ठीक है? इसको
- 5:33:31मैं थोड़ा छोटा कर देता हूं। अब मैं आपको
- 5:33:33मॉडर्न अप्रोच बताता हूं जो कि है JWT अ
- 5:33:35जिसका आजकल बहुत इस्तेमाल किया जाता है और
- 5:33:38ये कैसे काम करता है उसके बारे में बात
- 5:33:40करेंगे तो सेम सेटअप को मैं ठीक है सेम
- 5:33:43सेटअप को मैं रेप्लिकेट कर देता हूं यहां
- 5:33:45पर ठीक है ये हो गया JWT वाला ठीक है तो
- 5:33:48यहां पर लिख भी देते हैं JW टी ठीक है तो
- 5:33:51अब JWT होता क्या है देखिए JWT जैसे कि
- 5:33:54मैंने बताया एक हिसाब से टोकन है ठीक है
- 5:33:56और यह जो टोकन है टोकन का मतलब क्या है एक
- 5:33:59आपको टिकट की तरह दिया जाएगा उसको आपको हर
- 5:34:02हर बार जब भी आप रिक्वेस्ट भेजते हो वो
- 5:34:04प्रेजेंट करना है। ठीक है? अब टोकन में
- 5:34:06काफी सारी इंफॉर्मेशनेशन ऑलरेडी एंबेडेड
- 5:34:09होती है। जैसे कि ये टोकन कब इशू हुआ? अ
- 5:34:11यूजर कौन है? ये भी स्टोर होता है।
- 5:34:13एक्सपायरी टोकन कब एक्सपायर होने वाला है?
- 5:34:16रोल्स क्या-क्या है इस यूजर के? यानी कि
- 5:34:18ये टोकन है। उसकी रोल्स क्या-क्या है? ठीक
- 5:34:21है? तो ये सारी चीजें टोकन में ही होती है
- 5:34:23और ये डिजिटली साइन होता है और इसको कोई
- 5:34:25भी मॉडिफाई या टेंपर नहीं कर सकता है।
- 5:34:28काफी सिक्योर चीज़ होती है। ठीक है? तो ये
- 5:34:30होता है टोकन। अब टोकन बेस्ड अप्रोच में
- 5:34:33बेसिकली काम कैसे करती है चीज़ वह उस पर
- 5:34:35बात करते हैं हम लोग। देखिए सबसे पहले
- 5:34:37सबसे पहले तो अह क्लाइंट फिर से सेंड्स
- 5:34:41यूजरनेम प्लस पासवर्ड। ठीक है? इसको फिर
- 5:34:45से छोटा कर देता हूं क्योंकि यह बाहर जा
- 5:34:47रहा है। ठीक है? तो क्लाइंट भेजता है
- 5:34:48क्या? यूजरनेम भेजता है और फिर पासवर्ड भी
- 5:34:50भेजता है। ठीक है? यह हो गया। अब सर्वर
- 5:34:55वेरीफाई
- 5:34:56एंड इशूज़ टोकन। ठीक है? सर्वर जो है वह
- 5:35:01डाटा जो है उसको मिला है जो यूजरनेम
- 5:35:04पासवर्ड है उसको वेरीफाई करता है वैलिडेट
- 5:35:06करता है और अगर सही है तो उस यूजर का जो
- 5:35:10इंफॉर्मेशनेशन डाल के उस यूजर की इनेशन जो
- 5:35:12भी है लाइक इशू कब हुआ है एक्सपायर कब
- 5:35:14होना है टोकन रोल्स क्या है उस यूजर के
- 5:35:16यूजर कौन है सारी चीजें जैसा आपने
- 5:35:18प्रोग्राम कर रखा है वो टोकन में ऐड करके
- 5:35:21वो टोकन को इशू कर देगा क्लाइंट एंड पे अब
- 5:35:24क्लाइंट क्या करेगा क्लाइंट मतलब क्लाइंट
- 5:35:25कुछ भी हो सकता है मोबाइल ऐप हो सकता है
- 5:35:27वेब एप्लीकेशन पोस्टमैन हो सकता है
- 5:35:28क्लाइंट उस टोकन को स्टोर्स टोकन। ठीक है?
- 5:35:33क्लाइंट जो है वो उस JW टोकन को स्टोर कर
- 5:35:37देगा अपने एंड पे। ठीक है? JW टोकन को
- 5:35:39उसने स्टोर कर दिया। अब स्टोर कहीं पर भी
- 5:35:41कर कहीं पर भी कर सकता है। जैसे कि मोबाइल
- 5:35:43स्टोरेज अ में कर सकता है। अगर मोबाइल
- 5:35:46एप्लीकेशन है तो या तो अगर ब्राउज़र है तो
- 5:35:48कुकीज़ वगैरह में कर सकता है। ठीक है?
- 5:35:50ब्राउज़र बेस स्टोरेज में। यह हो गई बात।
- 5:35:52अब हर रिक्वेस्ट के साथ उसको टोकन भेजना
- 5:35:55है। ठीक है? तो क्लाइंट
- 5:35:59सेंड्स टोकन विथ एव्री रिक्वेस्ट। ठीक है?
- 5:36:03क्लाइंट को हर रिक्वेस्ट के साथ ये टोकन
- 5:36:05प्रेजेंट करना है। ये एक हिसाब से उसका आई
- 5:36:08कार्ड हो गया। उसकी टिकट बन गई। जितनी भी
- 5:36:10बार वो रिक्वेस्ट भेज रहा है वो टोकन
- 5:36:12भेजेगा उसके साथ। और सर्वर क्या करेगा?
- 5:36:15सर्वर वेरीफाई
- 5:36:17जेड। हर बार जेडब्ल्यूडी को वेरीफाई
- 5:36:20करेगा। ठीक है? और अगर वैलिड है
- 5:36:22जेडब्ल्यूटी सिग्नेचर वैलिड है। सिग्नेचर
- 5:36:24वैलिड है इसका मतलब क्या है? देखिए ये हैश
- 5:36:26होती है। एनकोडेड होती है। तो अगर
- 5:36:28सिग्नेचर वैलिड है तो इसका मतलब
- 5:36:30जेडब्ल्यूटी टैग को टपर नहीं किया गया है।
- 5:36:32अगर टपर किया जाता है तो सिग्नेचर
- 5:36:34वेरिफिकेशन फेल हो जाता है। ठीक है?
- 5:36:36सिग्नेचर वैलिड है, टोकन एक्सपायर है या
- 5:36:40और और रूल्स चेक कर लेता है। ठीक है? तो
- 5:36:42सिग्नेचर टोकन की एक्सपायरी होती है। जैसे
- 5:36:44कि अ 90 मिनट की एक्सपायरी। अब 90 मिनट
- 5:36:47में जितनी भी रिक्वेस्ट आनी है वो आएगी।
- 5:36:4890 मिनट के बाद वह रीऑथेंटिकेशन करेगा।
- 5:36:51ठीक है? तो ऐसे एक्सपायरी होगी तो वह
- 5:36:53क्या-क्या चेक करेगा? सबसे पहले तो टोकन
- 5:36:55वैलिड है या नहीं? टोकन वैलिड है इसका
- 5:36:56मतलब यह टपर हुआ है या नहीं। दूसरी चीज़ ये
- 5:37:00चेक करेगा एक्सपायर्ड हुआ है या नहीं।
- 5:37:02तीसरी चीज़ चेक करेगा रोल्स वैलिड है या
- 5:37:03नहीं। क्योंकि जो भी एंड पॉइंट आप एक्सेस
- 5:37:05करना चाह रहे हो JW टोकन के साथ, तो आपके
- 5:37:08आपको ऑथराइज़ेशन होना चाहिए उस अह उस उस
- 5:37:10एंड पॉइंट को एक्सेस करने का। ठीक है? तो,
- 5:37:13ये बेसिकली वैलिडेट होता है। अब इसमें
- 5:37:16बेनिफिट क्या है? मैं आपको बताता हूं। अगर
- 5:37:18आप कल को माइक्रो सर्विसेस आर्किटेक्चर पे
- 5:37:20स्टोर माइक्रो सर्विज आर्किटेक्चर पे
- 5:37:22माइग्रेट हो रहे हो। ठीक है? तो आपके पास
- 5:37:24मल्टीपल सर्वर्स हो गए। ठीक है? मल्टीपल
- 5:37:27सर्वर्स हो गए। अब यहां पर देखिए सर्वर
- 5:37:29साइड पे कोई सेशन मेंटेन नहीं है। यहां पर
- 5:37:32पिछले एग्जांपल में क्या हो रहा था? सर्वर
- 5:37:35साइड पे सेशन मेंटेन हो रहे थे। दिक्कत यह
- 5:37:37हो रही थी। ठीक है? यहां पर सर्वर साइट पर
- 5:37:40कोई सेशन मेंटेन नहीं है। सर्वर सिर्फ
- 5:37:42जेडब्ल्यू टोकन इशू कर देता है और जब भी
- 5:37:44रिक्वेस्ट आती है वो टोकन यूज़ हो ना हो
- 5:37:47उससे कोई मतलब नहीं है सर्वर को। जब भी
- 5:37:48रिक्वेस्ट आती है तो उसको एक इंडिपेंडेंट
- 5:37:51रिक्वेस्ट की तरफ वेरीफाई करता है। उसमें
- 5:37:53जेडब्ल्यूटी को वैलिडेट करता है और फिर
- 5:37:55चीजों को आगे लेके जाता है। ये हर बार
- 5:37:56होता है प्रोसेस। ठीक है? तो क्योंकि यहां
- 5:38:00पर सेशन मेंटेन नहीं है। कोई भी सेशन
- 5:38:03मेंटेन नहीं है। तो इसीलिए इसे कहा जाता
- 5:38:06है स्टेटलेस।
- 5:38:07स्टेटलेस का मतलब क्या है? यहां पर कोई भी
- 5:38:10सेशन में नहीं है। क्या सर्वर और क्लाइंट
- 5:38:13के बीच में कोई सेशन में है? जी नहीं।
- 5:38:15टोकन इशू कर दिया। ये एक हिसाब से आप ऐसा
- 5:38:17समझ लीजिए सर्वर टिकट का जो बंच है एक
- 5:38:20टिकट का बंडल लेके बैठा हुआ है। जो भी आ
- 5:38:22रहा है उसे वो टिकट इशू करते जा रहा है।
- 5:38:24रोल लिख रहा है उस पर यूजर को किस कौन
- 5:38:27टिकट ले रहा है वो लिख रहा है। और ये
- 5:38:28एक्सपायर कब होना है टिकट? ये लिख के
- 5:38:30मैनुअली पेन से देता जा रहा है। अच्छा
- 5:38:32आपको भी चाहिए टिकट ये देता जा रहा है। ये
- 5:38:34देता जा रहा है। ठीक है? सबको टिकट मिलता
- 5:38:36जा रहा है। अब उसके पास ये ट्रैक नहीं है
- 5:38:38कि मैंने कितनों को क्या टिकट दिया है।
- 5:38:40हेड ट्रैक नहीं है। वो सिर्फ टिकट बांटता
- 5:38:42जा रहा है सबको। ठीक है? ऑथेंटिकेटेड यूजर
- 5:38:45है बांटो टिकट। ऑथेंटिकेटेड यूजर है बांटो
- 5:38:47टिकट। अब जब कोई भी यूजर टिकट लेके आता है
- 5:38:51तो वो चेक करता है। अच्छा आपका टिकट
- 5:38:52दिखाओ। टिकट देखेगा। अच्छा इसका रोल यह
- 5:38:55है। इसका नाम यह है। इसकी एक्सपायरी टोकन
- 5:38:58ये जो टिकट है उसकी टिकट की एक्सपायरी ये
- 5:39:00होनी है। और जो भी सारी इनेशन होगी उसमें
- 5:39:02वो चेक करेगा और फिर आगे जाने देगा। अगर
- 5:39:04इनवैलिड है तो रिजेक्ट कर देगा। बस।
- 5:39:07अब इसकी बेनिफिट क्या है? अगर एक टिकट
- 5:39:10वाला है। एक टिकट वाला मतलब सर्वर। ठीक
- 5:39:12है? एक टिकट वाला है। मैं 10 टिकट वालों
- 5:39:14को बिठा दूं। ठीक है? मुझे सिर्फ यह बोलना
- 5:39:16है उनको कि देखो कोई भी आदमी आए, कोई भी
- 5:39:19इंसान आए, आपको टिकट दिखा। आपको सिर्फ
- 5:39:21टिकट वैलिडेट करना है। देखना है ये ये चीज़
- 5:39:23और आगे जाने देना है। बस। तो इससे क्या
- 5:39:25है? मैं स्केल कर सकता हूं। मैं और टिकट
- 5:39:27चेकर्स को बिठा सकता हूं। ठीक है? क्योंकि
- 5:39:29प्रोसेस कॉम्प्लेक्स नहीं है। मैं कोई
- 5:39:31सेशन मेंटेन नहीं कर रहा हूं। सर्वर उसी
- 5:39:34तो मैंने टिकट वाले का एग्जांपल दिया ताकि
- 5:39:36आपको समझ में आए। लेकिन सर्वर की अगर मैं
- 5:39:38बात करूं सर्वर भी कोई सेशन मेंटेन नहीं
- 5:39:40कर रहा है। करेक्ट? सर्वर सिर्फ इशू किए
- 5:39:42जा रहा है। ठीक है? और क्लाइंट के एंड पे
- 5:39:44जेडब्ल्यूटी स्टर्ड है। अब JW सेंड होगा
- 5:39:47तो वो वेरीफाई करेगा JडW रोल्स देखेगा।
- 5:39:49JडW एक्सपायर है या नहीं ये सारी चीजें
- 5:39:51देखेगा और फिर आगे रिक्वेस्ट को जाने
- 5:39:53देगा। अगर जेडब्ल्यूटी इनवैलिड होता है या
- 5:39:55सिग्नेचर टपरिंग हुई होती हुई होती है।
- 5:39:56इसका मतलब जेडब्ल्यूटी को टपर किया गया है
- 5:39:58और फिर क्लाइंट को बोला जाता है रिक्वेस्ट
- 5:40:00रिजेक्ट की जाती है और फिर क्लाइंट को
- 5:40:02रीऑथेंटिकेट करना होता है। ठीक है? और
- 5:40:05क्योंकि सर्वर सेशंस या सेशन रिलेटेड
- 5:40:08इनेशन सर्वर एंड पे मेंटेन नहीं हो रही
- 5:40:10है। इसीलिए उसे कहा जाता है स्टेटलेस। तो
- 5:40:13जेडब्ल्यूटी का सबसे बड़ा बेनिफिट यह है
- 5:40:15जो मैंने यहां पर लिखा नहीं क्योंकि मैंने
- 5:40:17वो कासेप्ट आपको समझाया नहीं था। स्टेटलेस
- 5:40:19होते हैं। जेडब्ल्यूटी स्टेटलेस ये सबसे
- 5:40:22बड़ा एडवांटेज है और हर डेफिनेशन में आप
- 5:40:25कहीं पर भी डेफिनेशन देख लीजिए
- 5:40:27जेडब्ल्यूडी का स्टेटलेस कहा जाता है।
- 5:40:29इसका मतलब ये है कि सर्वर बेस्ड सेशन नहीं
- 5:40:32क्रिएट होता है उसका। ठीक है? ये थोड़ा
- 5:40:34समझने में अ थोड़ा मैंने लेट बताया
- 5:40:37स्टेटलेस और इसकी वजह है पहले ही स्टेटलेस
- 5:40:39बता देता तो आप आप लोगों को ऐसा होता जो
- 5:40:41बिगिनर्स हैं उनको ऐसा लगता अरे भाई क्या
- 5:40:42बोल रहा है? स्टेटलेस मतलब क्या होता है?
- 5:40:44तो ये सब समझने के बाद आपको ईजीली समझ में
- 5:40:47आता है कि स्टेटलेस होता क्या है। ठीक है?
- 5:40:49अब क्योंकि ये स्टेटलेस है। मैं 10 सर्वर
- 5:40:51लगा सकता हूं। यहां पर 20 सर्वर लगा सकता
- 5:40:52हूं। मैं कैसे भी स्केल कर सकता हूं
- 5:40:54क्योंकि मैं टिकट इशू किए जा रहा हूं। ठीक
- 5:40:56है? अगर ट्रैफिक बढ़ता है, मैंने सर्वसर्स
- 5:40:58बढ़ा दिए और ये परफेक्ट है। ईपीआई,
- 5:41:00माइक्रो सर्विसेस ये सारे जो आर्किटेक्चर
- 5:41:02में आजकल काम होते हैं। उसमें काफी बढ़िया
- 5:41:05है। ठीक है? आप ईजीली अ स्केल कर सकते हो।
- 5:41:09और यहां पे ना ये जेडब्ल्यूडी को वेरीफाई
- 5:41:11करने के लिए देखिए जेडब्ल्यूडी इशू करने
- 5:41:14के लिए आपको वैलिडेट करना रहता है और
- 5:41:16डेटाबेस के लिए एक हिट होती है। तो अगर
- 5:41:18यहां पर डेटाबेस है मेरा ठीक है डीबी ये
- 5:41:21मेरा डीबी है। ठीक है? तो यहां पर जो पहले
- 5:41:24स्टेप है ये जो सेकंड स्टेप है सर्वर
- 5:41:27वेरीफाई द यूजरनेम पासवर्ड। तो यूजरनेम
- 5:41:30पासवर्ड को वैलिडेट करने के लिए एक
- 5:41:31डेटाबेस के लिए हिट होगा। एक हिट होगा
- 5:41:34डेटाबेस के लिए। यानी कि रिक्वेस्ट सर्वर
- 5:41:35से डेटाबेस तक जाएगी। ठीक है? और एक बार
- 5:41:39टोकन इशू हो जाता है। उसके बाद टोकन को
- 5:41:42वैलिडेट करने के लिए डेटाबेस की जरूरत
- 5:41:43नहीं है। आप समझ रहे हो यहां पर? देखिए ये
- 5:41:46बेटर क्यों है? यह समझना जरूरी है।
- 5:41:49यूजरनेम पासवर्ड को वैलिडेट करने के लिए
- 5:41:51ऑफ कोर्स आपको डेटाबेस के पास जाना होगा।
- 5:41:52तो आप डेटाबेस के पास कितनी बार गए? एक
- 5:41:54बार। आपने टोकन इशू कर दिया। ठीक है? मान
- 5:41:58लीजिए आपने 10 टोकन इशू कर दिया। ठीक है?
- 5:42:0010 टोकन इशू कर दिए। तो 10 टोकन इशू करने
- 5:42:04के बाद 10 टोकन इशू करने के लिए आपको 10
- 5:42:06बार डेटाबेस के पास जाना पड़ेगा। ठीक है?
- 5:42:09अब अगर उन 10 टोकन से यानी कि 10 क्लाइंट
- 5:42:12से 20 रिक्वेस्ट आती है तो उन रिक्वेस्ट
- 5:42:14को सर्व करने के लिए आपको डेटाबेस के पास
- 5:42:16जाने की जरूरत नहीं है। क्योंकि उन 20
- 5:42:18रिक्वेस्ट में आपको क्या करना होगा? सिर्फ
- 5:42:20जेडब्ल्यूडी वैलिडेट करना होगा।
- 5:42:21जेडब्ल्यूडी वैलिडेशन के लिए आपको डेटाबेस
- 5:42:24की ओर जाने की जरूरत नहीं है। जेडब्ल्यूडी
- 5:42:26वैलिडेशन यहीं हो जाएगा। कोड में ही हो
- 5:42:29जाता है वो। उस उसके लिए आपको डेबेस हिट
- 5:42:31करने की ज़रूरत नहीं है। तो, यह सर्वर लेवल
- 5:42:33पर ही कोड रन होके वह जेडब्ल्यूडी वैलिडेट
- 5:42:36हो जाता है। एक्सपायरी वैलिडेट हो जाती
- 5:42:37है। रोल्स निकल निकल आते हैं। उसमें से सब
- 5:42:40कुछ हो जाता है। और रोल के बिहाफ पे
- 5:42:42रिक्वेस्ट को आगे जाने दिया जाता है या
- 5:42:44रिजेक्ट कर दिया जाता है जो भी है। ठीक
- 5:42:46है? तो उस हिसाब से देखिए डेटाबेस के जो
- 5:42:49कॉल्स है वो रिड्यूस हो जाते हैं। लेकिन
- 5:42:50यहां पर क्या है? हर सेशन चेक करने के लिए
- 5:42:52पहले तो यूजरनेम पासवर्ड को वेरीफाई करो।
- 5:42:55यूजरनेम पासवर्ड आपने वेरीफाई किया उसके
- 5:42:57लिए एक डेटाबेस में हिट होगा। ठीक है?
- 5:42:58आपने 10 टोकन इशू किए उसके लिए 10 हिट
- 5:43:00होगी। ठीक है? उसके बाद में हर सेशन हर
- 5:43:03बार जब रिक्वेस्ट आएगी मान लीजिए 10 टोकन
- 5:43:05जो आपने इशू किए उससे 20 रिक्वेस्ट आती है
- 5:43:07तो आपको उन 20ों रिक्वेस्ट के लिए सेशन
- 5:43:09आईडी ढूंढना पड़ेगा डेटाबेस में और उसके
- 5:43:12लिए उतनी डेटाबेस हिट्स होगी जो कि सही
- 5:43:15नहीं है। ठीक है? बार-बार आप डेटाबेस को
- 5:43:18हिट कर रहे हो। क्या कर रहे हो? ठीक है?
- 5:43:19ये थोड़ा बेटर हो गया। स्टेटलेस हो गया।
- 5:43:21कोड लेवल पर ही चीजें निपट गई। डेटाबेस
- 5:43:24कॉल्स काफी रिड्यूस हो गए और चीजें आसानी
- 5:43:27से चली। ठीक है? तो ये होता है
- 5:43:29जेडब्ल्यूटी। तो जेडब्ल्यूटी का असल मकसद
- 5:43:32यह है। जेडब्ल्यूटी को इसीलिए इन्वेंट
- 5:43:34किया गया ताकि उसे स्केलिंग के लिए और
- 5:43:38सेशन मैनेजमेंट का जो प्रॉब्लम था,
- 5:43:40स्केलिंग और सेशन मैनेजमेंट का जो
- 5:43:41प्रॉब्लम था यहां पर आप देख सकते हो। ठीक
- 5:43:43है? उसको इंप्रूव करने के लिए जेडब्ल्यूटी
- 5:43:46को लाया गया। और जो ट्रेडिशनल ऑथेंटिकेशन
- 5:43:49मेथड था वो थोड़ा ट्रेडिशनल था। तो एक
- 5:43:52मॉडर्न अप्रोच लाना था। तो इसके लिए
- 5:43:53जेडब्ल्यूटी को इन्वेंट किया गया। जहां पर
- 5:43:54एक टोकन है और टोकन में सारी की सारी
- 5:43:57इनेशन है। ठीक है? टोकन में ही सारी की
- 5:43:59सारी इनेशन है और आपको और कोई
- 5:44:02इंफॉर्मेशनेशन उसके बिय्ड देखनी भी नहीं
- 5:44:03है। ठीक है? अगर आपको Jडw टोकन का एक
- 5:44:05एग्जांपल देखना है। ठीक है? ये प्रोसेस तो
- 5:44:07पूरा समझ में आ गया। करेक्ट? उम्मीद करता
- 5:44:09हूं ये प्रोसेस क्लियर है और कोई इसमें
- 5:44:11दिक्कत नहीं है कि JWT होता क्या है? JWT
- 5:44:14का मतलब यह याद रखिएगा JSON वेब टोकन। ठीक
- 5:44:17है? मैंने ऊपर लिख दिया है और टोकन में आप
- 5:44:20सारी टोकन का बेनिफिट यह है टिकट की तरह
- 5:44:22है उसमें आप सारी इंफॉर्मेशनेशन जो भी
- 5:44:24आपको डालनी है देखिए टोकन कब इशू हुआ
- 5:44:26एक्सपायरी क्या हुई ये तो डालनी ही है
- 5:44:28रोल्स भी डालते हैं जनरली अ जेडब्ल्यूडी
- 5:44:31टोकन इशू करते वक्त और टोकन से आपको पता
- 5:44:34लग जाता है कि यह यूजर कौन है वो यूजर की
- 5:44:36आईडी भी आप एंबेड कर सकते हो यूजर आईडी या
- 5:44:39कुछ और एंबेड आपके एप्लीकेशन स्पेसिफिक
- 5:44:41अगर कोई डेटा है वो आप एंबेड कर सकते हो
- 5:44:43टोकन में सिक्योर होता है ठीक है तो और
- 5:44:46स्टेट लेस है। इतना ध्यान रखिएगा। अब JW
- 5:44:49टोकन दिखता कैसे है वो मैं आपको बताता
- 5:44:50हूं। तो यहां पर आप अगर ब्राउज़र पर आओगे
- 5:44:52तो एक ऑफिशियल वेबसाइट है JWT.O
- 5:44:56क्या है? JWT. इस वेबसाइट पर आ जाइए। आप
- 5:44:58JWT सर्च करोगे तो आपको ये वेबसाइट मिलनी
- 5:45:00ही है। अब यहां पर देखिए JWT डिकोडर करके
- 5:45:03एक टूल है। तो ये डिकोडर टूल क्या करता
- 5:45:06है? आप लेफ्ट साइड पर JWई टोकन डालिए और
- 5:45:10राइट साइड पर उस JW टोकन में क्या-क्या
- 5:45:12इनेशन है? वो आपको दिखा देगा। ठीक है?
- 5:45:15लेफ्ट साइड पर टोकन डालिए। राइट साइड पर
- 5:45:17सारी इनफेशन दिखा देगा। तो देखिए यहां पर
- 5:45:18एक डमी जेडब्ल्यूडी डाली हुई है और यहां
- 5:45:21पर देखिए यह वैलिड JW है और इसका जो
- 5:45:23सिग्नेचर है वो भी वेरीिफाइड है। तो अगर
- 5:45:26मैं ये JW टोकन को मॉडिफाई करने की कोशिश
- 5:45:29करूं या कोई कुछ टाइप कर दूं तो देखिए
- 5:45:31इनवैलिड हो गई सिग्नेचर। ठीक है? तो मैं
- 5:45:33मॉडिफाई नहीं कर सकता इसमें। ये वैलिड JWT
- 5:45:37होना जरूरी है। ठीक है? और देखिए इस तरीके
- 5:45:39से यहां पर ये डिकोडर में इस तरीके से
- 5:45:41दिखता है JW टोकन। इतनी लंबी स्ट्रिंग
- 5:45:43होती है और यहां पर राइट साइड पर आपको
- 5:45:45दिखेगा देखो तो JW टोकन में दो चीज़ होती
- 5:45:48है। एक तो हेडर और दूसरा है पेलोड। ठीक
- 5:45:51है? हेडर में थोड़ी इनफेशन होती है। जैसे
- 5:45:52कि एल्गोरिदम कौन सा है? टाइप क्या है? और
- 5:45:55पेलोड में ये सारी इनेशन डाली गई है इस
- 5:45:57जेडब्ल्यूडी में। जैसे कि अ इसका सब्जेक्ट
- 5:46:00क्या है? देखिए सब्जेक्ट का मतलब हुम द
- 5:46:01टोकन रिफर्स टू। तो ये 1 2 3 4 5 6 7 8 90
- 5:46:040 आप यहां पर यूजर आईडी आपकी एप्लीकेशन
- 5:46:06स्पेसिफिक ऐसा कुछ डाल सकते हो। नाम डाला
- 5:46:09गया है इस टोकन में तो नाम है जॉन डो
- 5:46:11एडमिन है या नहीं ट्रू लिखा गया है और ई
- 5:46:14आई टी ई सॉरी आई एटी नॉट ईआईटी आई एटी
- 5:46:20गलती हो गई आईएटी का मतलब है इशूड एट तो
- 5:46:23ये कब इशू हुआ है इस पर हो करेंगे तो आपको
- 5:46:25डेट भी दिख जाएंगी देखिए जैन 18 2018
- 5:46:28अच्छा काफी पुरानी टोकन है ठीक है तो ये
- 5:46:30इशू कब हुआ है ये इसमें एक्सपायरी भी डाल
- 5:46:32सकते हो काफी सारी चीजें आती है आप डाल
- 5:46:34सकते हो ठीक है और यहां पर जेडब्ल्यूटी का
- 5:46:37सिग्नेचर वेरिफिकेशन सीक्रेट एक सीक्रेट
- 5:46:39के अगेंस्ट ये वेरीफाई होती है जनरली। तो
- 5:46:42ये सीक्रेट है इस JW टोकन का। ठीक है? तो
- 5:46:45इस तरीके से JW टोकन काम करता है और इस
- 5:46:47तरीके से दिखता है JW टोकन और ऐसे इनेशन
- 5:46:50एनकोड होती है JW टोकन में जिसको आप
- 5:46:53डिकोडर की मदद से डिकोड भी कर सकते हो।
- 5:46:55ठीक है? उम्मीद करता हूं ये क्लियर रहा।
- 5:46:58JWT एक इंपॉर्टेंट कॉन्सेप्ट है अगर आप
- 5:47:00बैक एंड डेवलपमेंट करते हो। ये कोई
- 5:47:01स्प्रिंग बूट या जावा रिलेटेड कांसेप्ट
- 5:47:03नहीं है। ये इन जनरल ऑथेंटिकेशन रिलेटेड
- 5:47:06कांसेप्ट है। आप नोट जेएस में काम करो। आप
- 5:47:09कोई भी प्रोग्रामिंग लैंग्वेज कोई भी बैक
- 5:47:11एंड लैंग्वेज में काम करो। कहीं पर भी काम
- 5:47:13करो। GWD टोकन एक यूनिवर्सल कांसेप्ट है।
- 5:47:16ये लैंग्वेज स्पेसिफिक कांसेप्ट नहीं है।
- 5:47:18ऐसा नहीं समझेगा। अच्छा जावा में JWD यूज़
- 5:47:21होता है या Python में यूज़ होता है। ऐसा
- 5:47:22नहीं है। हर जगह JW यूज़ होता है। ये एक इन
- 5:47:25जनरल कांसेप्ट है। ठीक है? उम्मीद करता
- 5:47:28हूं हेल्पफुल और क्लियर रहा।
- 5:47:35तो चलिए दोस्तों एक और कदम आगे बढ़ाएंगे
- 5:47:38और हम क्या करेंगे? हमारा जो जावा
- 5:47:40प्रोजेक्ट है यहां पर मेरे पास ऑलरेडी
- 5:47:41जावा प्रोजेक्ट है। आपके पास कोई भी
- 5:47:43प्रोजेक्ट हो सकता है। जावा प्रोजेक्ट
- 5:47:44मतलब मेरे पास स्प्रिंग बूट प्रोजेक्ट है।
- 5:47:47कोई भी प्रोजेक्ट रख लो और उसमें हम
- 5:47:50कॉन्फ़िगर करेंगे जेडब्ल्यूटी। तो सबसे
- 5:47:51पहले कॉन्फ़िगरेशन में तो बात आती है
- 5:47:53डिपेंडेंसीज की कि हमें क्या-क्या
- 5:47:55डिपेंडेंसीज ऐड करनी है यहां पर। ठीक है?
- 5:47:57तो देखिए डिपेंडेंसीज ऐड करने के लिए मैं
- 5:47:59आऊंगा ब्राउज़र में। अब यहां पर अगर आप
- 5:48:01स्टार्ट डॉट स्प्रिंग अच्छा स्टार्ट डॉट
- 5:48:04स्प्रिंग डॉट आईo पर अगर आओगे तो यहां पर
- 5:48:09आपको जीडब्ल्यूटी रिलेटेड डिपेंडेंसीज़ तो
- 5:48:12मिलेगी नहीं। यहां पर मिलेगी नहीं। ठीक
- 5:48:14है? तो मैं क्या करूंगा? अ इसको हटा
- 5:48:16दूंगा। यहां पर से हम डिपेंडेंसी ऐड नहीं
- 5:48:19करेंगे। हम क्या करेंगे? एक Kh रिपॉज़िटरी
- 5:48:21है। तो Java JWT करके उसको सर्च कीजिए आप।
- 5:48:25ठीक है? अ यही है jवा jw jसin वेब टोकन
- 5:48:30मेवन ठीक है तो ऐसा करके कुछ सर्च कर
- 5:48:33लीजिए और देखिए यहां पर आपको jवा jw
- 5:48:36करके एक रिपॉजिटरी मिलेगी यही है वो
- 5:48:39जेडब्ल्यूटी इस रिपॉजिटरी का नाम है ठीक
- 5:48:41है ये यूजरनेम और इसका रिपॉजिटरी नेम है
- 5:48:44यहां पर आ जाइए ठीक है ये रिपॉजिटरी काफी
- 5:48:47अपडेट होती रहती है देखिए ठीक है और ये
- 5:48:50काफी पॉपुलर भी है तो यहां पर नीचे आइए आप
- 5:48:53ठीक है नीचे आप अगर आओगे तो यहां यहां पर
- 5:48:56कहीं पर आपको जेडी के प्रोजेक्ट्स और मेवन
- 5:48:59देखिए इंस्टॉलेशन इन मेवन और ग्रिडल दोनों
- 5:49:01मिलेगा यहां पर इंडेक्स में टेबल ऑफ
- 5:49:03कंटेंट्स में मैं मेवन को सेलेक्ट कर लेता
- 5:49:05हूं। देखिए यहां पर सारी डिपेंडेंसीज मुझे
- 5:49:06दिख जाएंगी मेवन की। ठीक है? यहां पर नीचे
- 5:49:08स्क्रॉल करोगे आप तो ग्रिडल की
- 5:49:10डिपेंडेंसीज़ मिल जाएगी। आप कोई भी बिल्ड
- 5:49:13टूल यूज़ कर रहे हो। ठीक है? तो मेवन या
- 5:49:16ग्रिडल आप इस्तेमाल कीजिए। Android
- 5:49:17प्रोजेक्ट्स में इस तरीके से ऐड करते हो।
- 5:49:19ये Android में भी यूज़ होता है। प्रोगार्ड
- 5:49:20वगैरह ऐसे यूज़ करते हैं। ठीक है? लेकिन
- 5:49:23ठीक है? यहां पर हम तो स्विंग बोट की बात
- 5:49:25कर रहे हैं तो इसको मैं कॉपी कर लूंगा।
- 5:49:27ठीक है? और यहां पर कुछ कमेंट्स में चीजें
- 5:49:31लिखी हुई है कि अगर आप पुराना वर्जन ऑफ
- 5:49:33जीडी के इस्तेमाल कर रहे हो तो ये ये चीज
- 5:49:36कीजिए। लेकिन हमने तो ये नहीं किया है।
- 5:49:37हमारे लेटेस्ट वर्जनंस हैं। तो मैं यहां
- 5:49:39पर आ जाता हूं। और यहां पर डिपेंडेंसी में
- 5:49:41ये ऐड कर दूंगा मैं। ठीक है? ये मैंने ऐड
- 5:49:44कर दिया है। ठीक है? और फिर यहां पर इसको
- 5:49:47मेवन रीलोड कर दूंगा। तो ये मेवन रीलोड भी
- 5:49:49हो जाएगा। देखिए। तो ये थोड़ा सा टाइम
- 5:49:52लेगा। मेवन रीलोड होने के लिए। लेकिन यह
- 5:49:54जो अह डिपेंडेंसीज़ है, ठीक है? यह जो
- 5:49:57डिपेंडेंसीज़ है, आप देखोगे डिपेंडेंसीज़
- 5:49:59को, तो यह सबसे पहले तो JWT
- 5:50:02एपीआई है। जे JWT एपीआई फिर ये
- 5:50:04जेडब्ल्यूटी इंप्लीमेंटेशन है। और फिर ये
- 5:50:06जैक्सन है। ठीक है? जैक्सन का मतलब है यह
- 5:50:10बेसिकली अ Java क्लासेस टू jसन में
- 5:50:14कन्वर्ज़ और jसन टू जावा क्लासेस में
- 5:50:16कन्वर्ज़ में हेल्प करता है। ठीक है? तो
- 5:50:19इतना आपको ऐड कर देना है। अब आपको क्या
- 5:50:22करना है? आपको अ एक क्लास फाइल बनानी
- 5:50:26होगी। यानी कि क्लास बनानी होगी एक। ठीक
- 5:50:28है? तो मैं यहां पर आ जाता हूं और
- 5:50:29सिक्योरिटी पैकेज में यहां पर मैं एक
- 5:50:32क्लास बनाऊंगा। JWT यूटिल्स। ठीक है? अब
- 5:50:35इस क्लास का यूज़ क्या होगा? देखिए, ये जो
- 5:50:38क्लास है ना, इसमें JW रिलेटेड सारे
- 5:50:40हेल्पर मेथड्स होंगे। हेल्पर मेथड्स का
- 5:50:41मतलब क्या है? जो हमें जेडब्ल्यूटी जो
- 5:50:44फ्रेमवर्क है जेडब्ल्यूटी का जो वे है
- 5:50:47जिसमें हम टोकन को इशू करते हैं टोकन
- 5:50:49वैलिडेट करते हैं टोकन में इंफॉर्मेशनेशन
- 5:50:51लोड करते हैं। ये सारी जो चीजें हैं इसके
- 5:50:54लिए एक हेल्पर क्लास होना जरूरी है जिसमें
- 5:50:56ये सारी चीजें हो रखी है और आप अलग-अलग
- 5:50:58जगह से कोड में उसे सिर्फ कॉल कर रहे हो।
- 5:51:00तो ये जो क्लास है वो यही करेगा। ठीक है?
- 5:51:03तो मैं क्या करूंगा? यहां पर अ इस क्लास
- 5:51:06को अ मार्क करूंगा ऐज़ ए स्प्रिंग मैनेज
- 5:51:09कंपोनेंट। क्योंकि मैं नहीं चाहता मैं इस
- 5:51:10क्लास के इंस्टेंसेस को मैनेज करूं। ठीक
- 5:51:12है? इसको स्प्रिंग ही मैनेज करेगा। और
- 5:51:15मुझे यहां पर दो चीजें चाहिए। जो पहली चीज़
- 5:51:17है प्राइवेट स्ट्रिंग JWT सीक्रेट ऐसे।
- 5:51:21ठीक है? जेडब्ल्यूटी सीक्रेट को हम डिफाइन
- 5:51:23करेंगे यहां पर। सीक्रेट मतलब क्या है? इस
- 5:51:24सीक्रेट के अगेंस्ट आपकी जो की है वो साइन
- 5:51:27होनी है। ठीक है? और वैलिडेशन भी इसके
- 5:51:28अगेंस्ट होना है। तो अगर कोई टपरिंग होती
- 5:51:30है तो हमें पता चल जाएगा। तो ये हो गई
- 5:51:33सीक्रेट। और फिर दूसरी है हमें
- 5:51:35एक्सपायरेशन डिफाइन करनी है इस अह JWई
- 5:51:38टोकन की। एक्सपायरेशन मतलब ये जो JW टोकन
- 5:51:40है वो एक बार इशू होता है तो कितने टाइम
- 5:51:43के लिए ये वैलिड है? तो मैं यहां पर
- 5:51:45लिखूंगा JWT इंट अ सॉरी प्राइवेट इंट JWT
- 5:51:49एक्सपायरेशन
- 5:51:51इन मिलीसेकंड्स। ठीक है? इतना मैंने लिख
- 5:51:53दिया। और यहां पर कुछ वैल्यूज़ मैं ऐड कर
- 5:51:55दूंगा मिली सेकंड्स में। अभी के लिए तो
- 5:51:57ज़ीरो ऐड करता हूं। ठीक है? लेकिन JW
- 5:51:59सीक्रेट क्या होना चाहिए? तो आप यहां पर आ
- 5:52:00जाइए। ठीक है? यहां पर मैं एक बाय डिफ़ॉल्ट
- 5:52:04सीक्रेट है। तो अ स्ट्रिंग एट लीस्ट 256
- 5:52:07बिट लॉन्ग। तो यह मैं ले लेता हूं और यहां
- 5:52:10पर यह सीक्रेट ऐड कर देता हूं सबसे पहले
- 5:52:13और JW एक्सपायरेशन इन मिलीसेकंड्स। तो मैं
- 5:52:16चाहता हूं मेरी जो JW टोकन है वो 48 आवर्स
- 5:52:18के लिए वैलिड हो। तो मैं Google Pay या
- 5:52:20कहीं पर भी आपको ईयर टूल का भी इस्तेमाल
- 5:52:23कर सकते हो। 48 आवर्स इन मिली सेकंड्स।
- 5:52:26क्योंकि आपको जो एक्सपायरेशन टाइम है वो
- 5:52:29आपको मिली सेकंड्स में लिखना है। तो अच्छा
- 5:52:31यह तो कोई डरावना नंबर आ गया भाई। [हंसी]
- 5:52:34ठीक है? तो यहां पर अच्छा
- 5:52:38ठीक है? एक मैंने कन्व्टर इस्तेमाल कर
- 5:52:40लिया है। उप्स सॉरी।
- 5:52:42तो देखिए यहां पर मैंने कन्वर्ट कर लिया
- 5:52:4448 आवर्स को इतने मिलीसे्स में। तो इसको
- 5:52:46क्लोज कर देता हूं। ठीक है? और वो
- 5:52:48मिलीसेकंड्स मैंने कॉपी कर लिए थे और यहां
- 5:52:50पर आके वो मिलीसेकंड्स ऐड कर लेने हैं।
- 5:52:52ठीक है? तो इतना मिलीसे इसका मतलब है 48
- 5:52:56आवर्स में मैं जो टोकन इशू करता हूं इस
- 5:52:58एप्लीकेशन के थ्रू। ठीक है? मेरी बैक एंड
- 5:53:00के थ्रू वो एक्सपायर हो जाएगा। 48 आवर्स
- 5:53:02बहुत लंबा टाइम होता है। जनरली 48 आवर्स
- 5:53:05का नहीं रखते हैं। ठीक है? डिपेंडिंग ऑन द
- 5:53:06एप्लीकेशन इसको शॉर्टर और या थोड़ा थोड़ा
- 5:53:08शॉर्टर ड्यूरेशन का रखा जाता है। लेकिन
- 5:53:11मैं 48 आवर्स रख रहा हूं। काफी लोग 10 दिन
- 5:53:13का भी रखते हैं डेवलपमेंट के टाइम पे ताकि
- 5:53:14बार-बार टोकन इशू करने की दिक्कत ना हो।
- 5:53:17ठीक है? लेकिन डेवलपमेंट में ही लंबा टाइम
- 5:53:18रखिएगा। ठीक है? तो ये मैंने यहां पर
- 5:53:20मेंशन कर दिया है। अब मैं क्या करूंगा?
- 5:53:23देखिए अ एक चीज मैं आपको बताना चाहता हूं।
- 5:53:25अब जब भी टोकन सेंड करते हो। ठीक है? यहां
- 5:53:29पर देखिए ये क्लाइंट सेंड ये तो फोर्थ
- 5:53:32स्टेप है। JडW टोकन तो इशू हो जाता है बैक
- 5:53:34एंड से। लेकिन जब भी क्लाइंट सेंड करता है
- 5:53:37टोकन रिक्वेस्ट टोकन हर रिक्वेस्ट के साथ
- 5:53:40वो एक फॉर्मेट में भेजता है। कौन से
- 5:53:42फॉर्मेट में भेजता है? तो वो भेजता है
- 5:53:44बेरर हेडर में भेजता है बेयर स्पेस और फिर
- 5:53:48यहां पर टोकन लिखता है वो ये फॉर्मेट में
- 5:53:50जाता है और ये जाता है ऑथराइजेशन हेडर
- 5:53:52में। ऑथराइजेशन हेडर। ठीक है? तो
- 5:53:55ऑथराइज़ेशन हेडर में बेरर स्पेस टोकन ये
- 5:54:00फॉर्मेट है। ये इंडस्ट्री स्टैंडर्ड है।
- 5:54:01ठीक है? ये स्टैंडर्ड में इसी स्टैंडर्ड
- 5:54:03में टोकन जो है उसको भेजा जाता है बैक एंड
- 5:54:06पर। ठीक है? तो मैं क्या करूंगा? देखिए ये
- 5:54:10फॉर्मेट बताना जरूरी था क्योंकि हमें यहां
- 5:54:12पर लॉजिक ये भी लिखना पड़ेगा कि आप किस
- 5:54:14तरीके से रिट्रीव कर सकते हो जेW टोकन को
- 5:54:18बैक एंड से सॉरी रिक्वेस्ट से या हेडर से
- 5:54:21रिक्वेस्ट हेडर से। वो कैसे रिट्रीव
- 5:54:23करोगे? आप तभी रिट्रीव कर पाओगे जब आपको
- 5:54:24फॉर्मेट किस फॉर्मेट में आ रहा है वो बैक
- 5:54:26एंड पर ये पता हो। ठीक है? तो मैं क्या
- 5:54:29करूंगा? यहां पर हम कुछ मेथड्स डिफाइन
- 5:54:30करेंगे। तो मैं कहूंगा पब्लिक स्ट्रिंग
- 5:54:33गेट JWT फ्रॉम हेडर। सबसे पहले तो ये वाला
- 5:54:37मेथड डिफाइन करूंगा यहां पर। ठीक है? अ
- 5:54:40यहां पर हम कुछ रिटर्न करेंगे। ठीक है?
- 5:54:42रिटर्न और यहां पर एम्प्टी स्ट्रिंग
- 5:54:45रिटर्न कर देता हूं अभी के लिए। इसको
- 5:54:46डिफाइन करेंगे हम। ठीक है? दूसरा हम मेथड
- 5:54:49जन डिफाइन करेंगे पब्लिक अ स्ट्रिंग
- 5:54:53जनरेट
- 5:54:56टोकन फ्रॉम यूजरनेम। तो जो भी यूजरनेम है
- 5:55:00यूजर का उससे हम टोकन जनरेट करेंगे। ठीक
- 5:55:02है? और यहां पर भी मैं रिटर्न करूंगा
- 5:55:04फिलहाल स्ट्रिंग। इसको इस मेथड को और
- 5:55:06जनरेट करेंगे और डेवलप करेंगे। ठीक है?
- 5:55:09सबसे पहले तो JWT रिट्रीव करने का हमने
- 5:55:11मेथड लिखा है। आप JWT की जो टोकन है
- 5:55:14स्ट्रिंग उसको निकाल कैसे सकते हो हेडर
- 5:55:16से। क्योंकि वैलिडेट और सब काम करने के
- 5:55:18लिए आपको JW टोकन लगेगा। दूसरा हमने मेथड
- 5:55:21डिफाइन किया है कि टोकन जनरेशन का। ठीक
- 5:55:24है? जब भी कोई यूजर ऑथेंटिकेट होता है तो
- 5:55:26टोकन जनरेशन इंपॉर्टेंट है। करेक्ट? टोकन
- 5:55:28जनरेट आप कैसे करोगे? तो वो हमने मेंशन कर
- 5:55:31दिया यहां पर। ठीक है? दूसरा हमें या
- 5:55:34तीसरा मेथड हमें लिखना है अ पब्लिक
- 5:55:38बुलियन और फिर वैलिडेट जेडब्ल्यूटी टोकन।
- 5:55:41एक वैलिडेशन का भी मेथड चाहिए हमें।
- 5:55:43करेक्ट? और यहां पर अभी के लिए मैं रिटर्न
- 5:55:46करूंगा ट्रू। ठीक है? ये सब हार्ड कोडेड
- 5:55:48वैल्यूज़ है। इसको डेवलप करेंगे अब हम। ठीक
- 5:55:50है? तो इतना मैंने मेंशन कर दिया है। इतना
- 5:55:53मेंशन हो चुका है। ये एक एक हिसाब से
- 5:55:55स्ट्रक्चर है आपकी जो फाइल है उसमें।
- 5:55:57देखिए सबसे पहले तो आप यूजरनेम पासवर्ड को
- 5:55:59ऑथेंटिकेट करोगे और टोकन इशू करोगे। ठीक
- 5:56:01है? क्यों इशू करोगे? क्योंकि ये सबसे
- 5:56:03पहला स्टेप है। सर्वर वेरीफाई यूजरनेम
- 5:56:05पासवर्ड और इशूज़ अ टोकन। फिर क्लाइंट
- 5:56:08भेजेगा हर रिक्वेस्ट के साथ टोकन। तो आपको
- 5:56:10वेरीफाई भी करना है JडW। करेक्ट? वो आप
- 5:56:12कैसे करोगे? तो उसके लिए पहले तो हेडर में
- 5:56:14से क्योंकि हेडर में आ रहा है JडW टोकन।
- 5:56:16कैसे पता हेडर में आ रहा है? क्योंकि
- 5:56:18मैंने यहां पर बताया ऑथराइज़ेशन हेडर में
- 5:56:20बेर स्पेस टोकन आएगा। ठीक है? तो उसको
- 5:56:22रिट्रीव करना है और फिर आपको टोकन को जो
- 5:56:26है उसको वैलिडेट करना है इस तरीके से। ठीक
- 5:56:28है? तो ये करना जरूरी है। तो इतना आप कर
- 5:56:31दोगे वैलिडेट करोगे और फिर ट्रू है या
- 5:56:32फॉल्स है। तो पहले रिट्रीव करोगे हेडर से
- 5:56:35और फिर टोकन को वैलिडेट करोगे। ठीक है? तो
- 5:56:38अब एक-एक मेथड को डिफाइन करते हैं यहां
- 5:56:40पर। तो सबसे पहले तो जनरेट टोकन फ्रॉम
- 5:56:43यूजरनेम को यूजरनेम पर काम करेंगे हम। अब
- 5:56:47यहां पर आपको क्या करना है? देखिए यहां पर
- 5:56:48आप टोकन कैसे निकालोगे यूजर टोकन कैसे
- 5:56:52जनरेट करोगे यूजर नेम से? तो हमने जो
- 5:56:53लाइब्रेरी ऐड की है जो ये pmsl में
- 5:56:55डिपेंडेंसीज ऐड कर रखी है उसका हम
- 5:56:57इस्तेमाल करेंगे। तो सबसे पहले तो आपको
- 5:56:59स्प्रिंग सिक्योरिटी का यहां पर यूजर
- 5:57:01डिटेल्स ऑब्जेक्ट चाहिए। ठीक है? यूजर
- 5:57:04डिटेल्स ऑब्जेक्ट। यूजर डिटेल्स ऑब्जेक्ट
- 5:57:06आपको मिल जाएगा अ स्प्रिंग सिक्योरिटी की
- 5:57:09मदद से कि ठीक है? क्योंकि सारी जो इनेशन
- 5:57:12ये यूजर डिटेल्स ऑब्जेक्ट हेल्प करता है
- 5:57:14आपको यूजर इनेशन रिट्रीव करने में। ठीक
- 5:57:17है? तो यूजर डिटेल्स ऑब्जेक्ट आपको मिल
- 5:57:18जाएगा स्प्रिंग सिक्योरिटी से देखिए आप
- 5:57:20ओवर करोगे इस पर तो प्रोवाइड्स कोर यूजर
- 5:57:22इनेशन। ठीक है? अगर कोई यूजर ऑथेंटिकेटेड
- 5:57:25है तो आप यूजर डिटेल्स आपको मिल जाएगा। तो
- 5:57:27मैं डायरेक्टली यूजर डिटेल्स का यहां पर
- 5:57:29इस्तेमाल कर रहा हूं। ठीक है? आगे चलकर हम
- 5:57:31ये भी समझेंगे कि यूजर डिटेल्स कैसे आएंगी
- 5:57:33यहां पर। अगर आपको यूजर डिटेल्स थोड़ा
- 5:57:34कॉम्प्लेक्स लग रहा है तो आप क्या कर सकते
- 5:57:35हो यहां पर? मैं सीधा यूजर नेम ही लिखता
- 5:57:38हूं। यहां पर सीधा यूजरनेम हम पास करेंगे
- 5:57:39अभी के लिए। ठीक है? यूजर डिटेल्स से
- 5:57:41यूजरनेम कैसे निकालनी है? ये हम दूसरी जगह
- 5:57:43पर कोड लिख सकते हैं। ठीक है? तो मान
- 5:57:45लीजिए यहां पर यूजरनेम आ गया हमारे पास।
- 5:57:48ठीक है? अब यूजरनेम आ गया एक बार तो मैं
- 5:57:51क्या करूंगा? यहां पर रिटर्न करूंगा।
- 5:57:52रिटर्न अच्छा सॉरी रिटर्न ऑलरेडी लिखा हुआ
- 5:57:54है मैंने। तो इस रिटर्न स्टेटमेंट को मैं
- 5:57:56मॉडिफाई करूंगा यहां पर। यहां पर इस्तेमाल
- 5:57:58करूंगा JWTS। तो देखिए JWTS की जो अह
- 5:58:02क्लास है ये कहां से मिल रही है? JSN वेब
- 5:58:04टोकन से। और ये डिपेंडेंसी हमने ऐड कर रखी
- 5:58:07है। यहां पे जेWTS में मैं डॉट बिल्डर का
- 5:58:10इस्तेमाल करूंगा। ठीक है? डॉट बिल्डर डॉट
- 5:58:13कॉम्पैक्ट। अब यहां पर ये जो टोकन जनरेट
- 5:58:17होगा यहां पर मुझे कुछ इंफॉर्मेशनेशन ऐड
- 5:58:19करनी है। जैसे कि सबसे पहले तो सब्जेक्ट
- 5:58:21देखिए टोकन में एक सब्जेक्ट होता है। तो
- 5:58:23आप सब्जेक्ट ऐड कर सकते हो। यूजर नेम
- 5:58:25सब्जेक्ट कहां होता है? कहां दिखेगा आपको
- 5:58:26सब्जेक्ट? तो देखिए यहां पर सब्जेक्ट होता
- 5:58:29है। यह सब्जेक्ट आप ऐड कर सकते हो। यह
- 5:58:30सब्जेक्ट। ठीक है? सब्जेक्ट का मतलब है
- 5:58:33हुूम द टोकन रेफर्स टू। तो हमने ऐड कर
- 5:58:35दिया यूजरनेम। उससे समझ जाएगा कि यह टोकन
- 5:58:37किसके लिए जनरेट हुआ था। तो जो भी यूजरनेम
- 5:58:40है ऑथेंटिकेटेड यूजरनेम उसके लिए टोकन
- 5:58:42जनरेट हुआ है। ठीक है? इशूड एट
- 5:58:46देखिए इशूड एट यहां पर मैं लिख दूंगा करंट
- 5:58:50डेट अ सॉरी करंट डेट। ठीक है? ये मैंने
- 5:58:54लिख दिया। अब इसकी एक्सपायरेशन डिफाइन
- 5:58:56करेंगे। एक्सपायरेशन क्या है? तो हमने
- 5:58:58एक्सपायरेशन को ऑलरेडी मेंशन किया हुआ है
- 5:59:01ऊपर मिलीसेकंड्स में। ठीक है? तो मैं क्या
- 5:59:03करूंगा? करंट डेट जो है उसको लूंगा मैं।
- 5:59:06एक्सपायरेशन हमें देखिए 48 आवर्स की
- 5:59:09एक्सपायरेशन होनी चाहिए। यहां पर हमने
- 5:59:11मेंशन किया है इतना। ये 48 आवर्स की
- 5:59:13एक्सपायरेशन है। करेक्ट? तो मैं क्या
- 5:59:15करूंगा? करंट डेट एंड टाइम लूंगा। उसको
- 5:59:17मिलीसेकंड्स में लूंगा और फिर उसमें ये
- 5:59:20वाला एक्सपायरेशन ऐड करूंगा। ठीक है?
- 5:59:23क्योंकि देखिए यह जो एक्सपायरेशन जो है ना
- 5:59:25यहां पर आप आओगे ना यह एक्सपायरेशन इसको
- 5:59:27डाउनलोड करता हूं मैं सोर्सेस को। ठीक है?
- 5:59:30यह एक्सपायरेशन क्या लेता है? यह डेट लेता
- 5:59:32है। क्या लेता है? डेट लेता है। तो आपको
- 5:59:36आप यह नहीं बोल सकते हो कि यह मिली
- 5:59:37सेकंड्स में यह लो मेरा एक्सपायरेशन। ऐसा
- 5:59:39नहीं बोल सकते हो। आपको एक्चुअल डेट देना
- 5:59:40है और टाइम देना है कि कब एक्सपायर होगा।
- 5:59:43तो वो आपको कैलकुलेट करके देना है। आप समझ
- 5:59:45रहे हो मेरी बात? आप यहां पर हमने क्या
- 5:59:47लिखा है? हमने लिखा है 48 आवर्स का मिलीसे
- 5:59:52वर्जन। हमारी जो एक्सपायरेशन टाइम है वह
- 5:59:5648 आवर्स की है। वह हमने लिखा है। लेकिन
- 5:59:58अगर टोकन समझ लीजिए 1 दिसंबर दोपहर को
- 6:00:0212:00 बजे जनरेट होता है या 1 जनवरी दोपहर
- 6:00:05को 12:00 बजे जनरेट होता है। तो ये 48
- 6:00:07आवर्स बाद एक्सपायर होगा। तो 48 आवर्स
- 6:00:09क्या होगा? ठीक है? 3 जनवरी अ लगभग 1159
- 6:00:14को एक्सपायर हो जाना चाहिए। तो आपको 3
- 6:00:16जनवरी 1159 पास करना है। ये मिलीसे वैल्यू
- 6:00:19नहीं। ये मिलीसे वैल्यू कैलकुलेशन में यूज़
- 6:00:21होगा। मैं आपको बताता हूं। तो यहां पर
- 6:00:22देखिए डेट पास करनी है आपको। मैंने आपको
- 6:00:24दिखाया अंदर जाके यहां पर डेट पास करनी है
- 6:00:26आपको। करेक्ट? एक्सपायरेशन डेट एंड टाइम।
- 6:00:29तो यहां पर मैं क्या करूंगा? देखिए यहां
- 6:00:31पर मैं सबसे पहले तो ले लूंगा एक नई डेट।
- 6:00:33क्योंकि आपको डेट में पास करना है ये। ठीक
- 6:00:35है? और फिर यहां पर लिखूंगा न्यू डेट
- 6:00:40डॉट गेट टाइम ऐसे और फिर यहां पर मैं JWT
- 6:00:45एक्सपायरेशन इन मिलीसेकंड्स को ऐड कर
- 6:00:47दूंगा। तो ये क्या करेगा? अच्छा सॉरी सेमी
- 6:00:49कॉललन नहीं ऐड करना। ये क्या करेगा? यह
- 6:00:52पहले तो करंट डेट लेगा। करेक्ट? करंट डेट
- 6:00:57और 1 मिनट। करंट डेट और फिर इसमें टाइम ऐड
- 6:01:03करेगा और फिर अ उसमें JWT एक्सपायरेशन
- 6:01:07मिलीसेकंड्स ऐड करेगा और फिर एक पूरी डीड
- 6:01:09बनाकर यहां पर सेट कर देगा। ठीक है? तो ये
- 6:01:11काम हो गया। अब मैं क्या करूंगा? मुझे ये
- 6:01:14जो JW टोकन है, इसको साइन करने की भी
- 6:01:16जरूरत है। ठीक है? तो डॉट साइन वि इसको
- 6:01:19साइन करने की जरूरत है। साइन कैसे करूंगा
- 6:01:22मैं? साइन करूंगा एक की की मदद से। अब
- 6:01:26यहां पर आप एक मेथड को डिफाइन कर देंगे जो
- 6:01:28कि हमें की रिटर्न करेगी। ठीक है? तो मैं
- 6:01:31यहां पर लिखता हूं की और इस तरीके से एक
- 6:01:34मेथड बना देता हूं। ठीक है? अब की करके एक
- 6:01:36मेथड हमें बनानी होगी। तो मैं क्या
- 6:01:38करूंगा? अच्छा यहां पर नहीं वैलिडेट टोकन
- 6:01:40के बाद में मैं लिखूंगा अ प्राइवेट
- 6:01:44अ की। और यह की रिटर्न हो रहा है। देखिए
- 6:01:47जेडब्ल्यूटी टोकन की जो की है वो रिटर्न
- 6:01:49होगी। ठीक है? तो इस पर अगर आप होवर करते
- 6:01:50हो ठीक है? 1 मिनट इस पर अगर आप होवर करते
- 6:01:54हो तो ये देखिए अच्छा जावा सिक्योरिटी की
- 6:01:58की है ये। ठीक है? एक हिसाब से आपको JSON
- 6:02:03की की लेनी चाहिए। या जावा की JSON की ही
- 6:02:06रखते हैं। एक मिनट। सिक्योरिटी की पैकेज
- 6:02:08की ही की लेना। ठीक है? फिलहाल देखते हैं
- 6:02:10इसको। और फिर यहां पर की लिखना है और फिर
- 6:02:14यहां पर लिखना है रिटर्न कीज़ यह कीज़ आपको
- 6:02:19jसन वेब टोकंस डॉट सिक्योरिटी की एक क्लास
- 6:02:21है डॉट और यहां पर एच एम एसी शा की फॉर और
- 6:02:28फिर यहां पर लिखना है डिकोडर्स डॉट पेज 64
- 6:02:32डॉट डिकोड और फिर आप यहां पर JWD सीक्रेट
- 6:02:36को डिकोड कर रहे हो। ठीक है? इतना आपको
- 6:02:37लिख देना है और फिर यहां पर एक की आ जाएगी
- 6:02:40और इससे ये जो JW टोकन है ये साइन हो
- 6:02:42जाएगा। ठीक है? तो इतना करने के बाद आपका
- 6:02:45काम हो चुका है। ठीक है? वैलिडेट का जो
- 6:02:47लॉजिक है उसे हम थोड़े टाइम में हम डिफाइन
- 6:02:50करेंगे। ठीक है? इतना हो चुका है। और
- 6:02:52देखिए जनरेट हो रहा है टोकन यूजरनेम से और
- 6:02:55और यहां पर अ जनरेट हो के टोकन इशू हो
- 6:02:58जाएगा। इतना हो जाएगा अभी फिलहाल। ठीक है?
- 6:03:01उम्मीद करता हूं इतना क्लियर है अब तक।
- 6:03:03ठीक है? यहां पर हमने सिर्फ टोकन जनरेशन
- 6:03:06का लॉजिक अब तक लिखा हुआ है। पहले हम टोकन
- 6:03:08को जनरेट करेंगे। देखेंगे टोकन किस तरीके
- 6:03:10से जनरेट होता है। फिर जो नेक्स्ट स्टेप
- 6:03:12है उस पर जाएंगे जहां पर हम टोकन को
- 6:03:14रिट्रीव करके उसको वैलिडेट भी कर पाएं।
- 6:03:22अब इतना होने के बाद मैं क्या करना
- 6:03:24चाहूंगा? मैं यहां पर आऊंगा कंट्रोलर में
- 6:03:27और मैं एक एंड पॉइंट डिफाइन कर दूंगा।
- 6:03:29जिसके जरिए हम टोकन को जनरेट कर सकते हैं।
- 6:03:33ठीक है? एक ऐसी एंड पॉइंट डिफाइन कर
- 6:03:35दूंगा। तो मैं यहां पर आ जाता हूं सबसे
- 6:03:37पहले तो और यहां पर मैं लिख देता हूं एक
- 6:03:41पोस्ट मैपिंग हो गई है। ठीक है? और यहां
- 6:03:45पर मैं लिख देता हूं पब्लिक स्ट्रिंग लॉग
- 6:03:49इन। ठीक है? इस मेथड का नाम लॉग इन होगा।
- 6:03:52और यहां पर हम लिख सकते हैं रिक्वेस्ट
- 6:03:57बॉडी।
- 6:03:58ठीक है? जो भी डाटा है वह रिक्वेस्ट बॉडी
- 6:04:00में आएगा और फिर यहां पर लॉग इन
- 6:04:02रिक्वेस्ट। देखिए लॉग इन रिक्वेस्ट अभी
- 6:04:04हमने बनाई नहीं है लेकिन इसको बनाना
- 6:04:06पड़ेगा। ठीक है? तो ये हम बनाएंगे और ये
- 6:04:10इतना हो गया है हमारे पास। और अब यहां पर
- 6:04:14मैं लिखूंगा अ ऑथेंटिकेशन
- 6:04:19का ऑब्जेक्ट बना लूंगा मैं। ठीक है? तो
- 6:04:21ऑथेंटिकेशन का जो ऑब्जेक्ट है वो हम
- 6:04:24बनाएंगे इस इंटरफ़ेस की मदद से। अ ये
- 6:04:27सिक्योरिटी का एक इंटरफेस है। ठीक है?
- 6:04:29स्प्रिंग सिक्योरिटी का। तो इसको मैं
- 6:04:31लूंगा। ठीक है? और इसका ऑब्जेक्ट हम क्यों
- 6:04:34बना रहे हैं? ठीक है? क्योंकि ये जो
- 6:04:35ऑथेंटिकेशन का इंटरफ़ेस है, ये रिप्रेजेंट
- 6:04:37करता है एक ऑथेंटिकेटेड
- 6:04:40रिक्वेस्ट को। देखिए, इस इस पर अगर हो
- 6:04:43करेंगे, तो इसका डॉक्यूमेंटेशन भी आ रहा
- 6:04:44है। रिप्रेजेंट्स दी टोकन फॉर ऑथेंटिकेशन
- 6:04:47रिक्वेस्ट। ठीक है? तो एक बार जो यूजर
- 6:04:49ऑथेंटिकेट हो जाता है तो उसको अगर
- 6:04:52रिप्रेजेंट करना है आपको। देखिए वंस द
- 6:04:54रिक्वेस्ट हैज़ बीन ऑथेंटिकेटेड दी
- 6:04:57ऑथेंटिकेशन इंटरफेस विल बी यू विल बी
- 6:05:00स्टर्ड इन ए थ्रेड लोकल सिक्योरिटी
- 6:05:02कॉन्टेक्स्ट। तो देखिए आप अगर स्प्रिंग
- 6:05:05सिक्योरिटी का आर्किटेक्चर देखते हो तो
- 6:05:07वहां पर स्प्रिंग सिक्योरिटी आर्किटेक्चर
- 6:05:09में आपको सिक्योरिटी कंटेक्स्ट के बारे
- 6:05:11में पता होगा। ठीक है? ये सिक्योरिटी
- 6:05:12कंटक्स्ट एक ऐसी जगह है जहां पर एक
- 6:05:14ऑथेंटिकेटेड यूजर एक बार ऑथेंटिकेट हो
- 6:05:17जाता है तो उसकी इनेशन वहां पर स्टोर कर
- 6:05:18दी जाती है ताकि अभी आगे की जो रिक्वेस्ट
- 6:05:21है अगर ऑथेंटिकेशन इनेशन किसी को चाहिए तो
- 6:05:24वो सिक्योरिटी कंटक्स्ट से मिल जाती है।
- 6:05:26ठीक है? तो सिक्योरिटी कंटक्स्ट उसलिए यूज़
- 6:05:28होता है। तो वहां पर ऑथेंटिकेशन ऑब्जेक्ट
- 6:05:30के रूप में उस ऑथेंटिकेशन इनेशन को स्टोर
- 6:05:33किया जाता है। ये ऑथेंटिकेशन इंटरफ़ेस के
- 6:05:35रूप में। तो मैं इसके ऑब्जेक्ट पहले बना
- 6:05:37लेता हूं। ठीक है? फिर यहां पर मैं क्या
- 6:05:39करूंगा? एक ट्राई कैच ब्लॉक लिखना सही
- 6:05:43रहेगा कि अगर कुछ एक्सेप्शन आए तो हम उसे
- 6:05:45मैनेज भी कर पाएं। ठीक है? और यहां पर हम
- 6:05:48लिखेंगे ऑथेंटिकेशन
- 6:05:52एक्सेप्शन। ठीक है? इस तरीके से अ और ई
- 6:05:56लिखेंगे
- 6:05:58और फिर ई डॉट प्रिंट स्ट्रक्ट्रेस। और फिर
- 6:06:01यहां पर मैं लिखूंगा ऑथेंटिकेशन इज़ इक्वल
- 6:06:03टू ऑथेंटिकेशन अह ऑथेंटिकेशन
- 6:06:09मैनेजर। ठीक है? तो ये ऑथेंटिकेशन मैनेजर
- 6:06:11का ऑब्जेक्ट हमें लगेगा। अब ऑथेंटिकेशन
- 6:06:13मैनेजर का भी ऑब्जेक्ट हमने क्रिएट नहीं
- 6:06:14किया है। तो मैं क्या करता हूं? यहां पर
- 6:06:16फटाक से ऊपर जल्दी-जल्दी आ जाता हूं और
- 6:06:19यहां पर ऑटो वायर करता हूं और ऑथेंटिकेशन
- 6:06:21मैनेजर
- 6:06:24को इन चेक कर देता हूं। ठीक है?
- 6:06:26ऑथेंटिकेशन मैनेजर। ठीक है? तो ये
- 6:06:28ऑथेंटिकेशन मैनेजर क्या है ये ऑथेंटिकेशन
- 6:06:30को मैनेज करेगा। देखिए इस पर हो करेंगे आप
- 6:06:31प्रोसेससेस एंड ऑथेंटिकेशन रिक्वेस्ट। ठीक
- 6:06:34है? इसको हमने क्रिएट नहीं किया है। ये
- 6:06:36स्प्रिंग सिक्योरिटी दे रहा है। देखिए हम
- 6:06:37कुछ क्लासेस इंटरफ़सेस ऐसे ही इस्तेमाल
- 6:06:39करेंगे जो इनबिल्ट है। ठीक है? जो इनबिल्ट
- 6:06:42है ये हम कर रहे हैं क्योंकि रिक्वेस्ट को
- 6:06:44हम ऑथेंटिकेट कर पाए हमारे एंड पे और JWT
- 6:06:47का जो टोकन है उसे इशू कर पाए। बस इशूइंग
- 6:06:49तक ही हम करने वाले हैं। ठीक है? तो देखिए
- 6:06:51ये इनबिल्ट क्लास है। अब सॉरी इंटरफ़ेस है।
- 6:06:53आप देख पा रहे हो। ये इसका काम ये है कि
- 6:06:55जो ऑथेंटिकेशन रिक्वेस्ट है उसको प्रोसेस
- 6:06:57करेगा। ठीक है? तो मैं ऑथेंटिकेशन अ
- 6:07:00मैनेजर को यहां पर ले रहा हूं। ठीक है? और
- 6:07:02फिर यहां पर एक ऑथेंटिकेट करके मेथड दिया
- 6:07:05जाता है। ठीक है? तो स्प्रिंग सिक्योरिटी
- 6:07:06हमें मदद करेगा इस यूजरनेम पासवर्ड को
- 6:07:10ऑथेंटिकेट करने में। ठीक है? तो ये मैंने
- 6:07:12लिख दिया यहां पर और फिर यहां पर कहूंगा
- 6:07:14न्यू यूजरनेम पासवर्ड ऑथेंटिकेशन
- 6:07:18टोकन। ठीक है? एक टोकन बनाएंगे हम। और फिर
- 6:07:21यहां पर लॉग इन रिक्वेस्ट
- 6:07:23डॉट गेट यूजरनेम। ठीक है? लॉग इन
- 6:07:26रिक्वेस्ट में यूजरनेम होगा।
- 6:07:28और फिर लॉग इन रिक्वेस्ट में पासवर्ड भी
- 6:07:32होगा। ठीक है? तो यूजरनेम पासवर्ड हमें
- 6:07:34लॉग इन रिक्वेस्ट में आएंगे। अभी मैंने
- 6:07:36यूजरनेम ये गेट लॉग इन रिक्वेस्ट अभी तक
- 6:07:38बनाई नहीं है। तो हमें वो बना लेना चाहिए।
- 6:07:40तो मैं क्या करूंगा? यहां पर अच्छा क्रिएट
- 6:07:42अ पैरामीटर टाइप नहीं यहां पर आऊंगा और
- 6:07:44उसकी क्लास ही बना दूंगा। तो इस पर हो
- 6:07:45करेंगे हम मोर एकशंस क्रिएट अ क्लास और यह
- 6:07:48क्लास बन जाएगी यहां पर। ठीक है? और फिर
- 6:07:51यहां पर मैं लिखूंगा स्ट्रिंग यूजरनेम और
- 6:07:55यहां पर लिखूंगा स्ट्रिंग पासवर्ड। ठीक
- 6:07:59है? ये दोनों चीजें ही आएगी यहां पर और
- 6:08:02यहां पर मैं लिख दूंगा डेटा
- 6:08:04डेटा अच्छा मैंने लॉब ऐड नहीं कर रखा है
- 6:08:08यहां पर। तो चलिए लॉबक के बिना ही काम
- 6:08:10करते हैं। तो फिलहाल के लिए अभी तो यहां
- 6:08:12पर गेटर सेटर्स लगेंगे हमें। ठीक है? तो
- 6:08:15गेटर एंड सेटर को ऐड कर दिया। आप चाहो तो
- 6:08:17लॉबक लॉबक का इस्तेमाल कर सकते हो यहां पर
- 6:08:19और मैं जनरेट करूंगा कंस्ट्रक्टर ठीक है
- 6:08:22दोनों के लिए कंस्ट्रक्टर और एक नो आस्क्
- 6:08:25कंस्ट्रक्टर भी जनरेट कर दूंगा ठीक है
- 6:08:27लॉबक का इस्तेमाल भी कर सकते हैं लेकिन
- 6:08:29मैंने वो डिपेंडेंसी ऐड नहीं की है तो मैं
- 6:08:30बोदर नहीं कर रहा वो करने के लिए ठीक है
- 6:08:32बट ये देखिए लॉग इन रिक्वेस्ट यहां पर आ
- 6:08:34गई लॉग इन रिक्वेस्ट का काम क्या है लॉग
- 6:08:35इन रिक्वेस्ट सिर्फ ये डिक्टेट करेगा कि
- 6:08:37किस तरीके से लॉग इन का जो रिक्वेस्ट
- 6:08:39स्ट्रक्चर है वो होना चाहिए ठीक है और
- 6:08:42ऑथेंटिकेशन मैनेजर की मदद से हम ऑथेंटिकेट
- 6:08:44करेंगे यहां पर देखिए ऑथेंटिकेट क्या
- 6:08:46ऑथेंटिकेट एक ऐसा मेथड है जो अटेम्प्ट
- 6:08:48करता है ऑथेंटिकेट करने के लिए। ठीक है?
- 6:08:51यूजरनेम पासवर्ड की मदद से और एक
- 6:08:54ऑथेंटिकेशन ऑब्जेक्ट अ है उसको उसको देखिए
- 6:08:59यहां पर ऑथेंटिकेशन ऑब्जेक्ट बन रहा है।
- 6:09:01ठीक है? तो ये यूजरनेम पासवर्ड ऑथेंटिकेशन
- 6:09:03का जो ये है इसका हम ऑब्जेक्ट बना के
- 6:09:05इसमें पास कर रहे हैं। ठीक है? और यहां पर
- 6:09:08अगर आप चाहते हो यहां पर ठीक है? तो ये एक
- 6:09:11हिसाब से ऑथेंटिकेशन का ही ऑब्जेक्ट है।
- 6:09:14यूजरनेम पासवर्ड ऑथेंटिकेशन टोकन जो है ये
- 6:09:16ऑथेंटिकेशन की ही सब क्लास है। तो ये
- 6:09:18ऑथेंटिकेशन का ही टाइप है। ठीक है? तो
- 6:09:21यहां पर ये पास हो रहा है। और ये पास होने
- 6:09:23के बाद आपको ऑथेंटिकेशन का एक ऑथेंटिकेटेड
- 6:09:26ऑब्जेक्ट मिल जाएगा। ठीक है? तो स्प्रिंग
- 6:09:27सिक्योरिटी की मदद से हम लोग ऑथेंटिकेट कर
- 6:09:30रहे हैं। और इतना होने के बाद हमारे पास अ
- 6:09:33सिक्योरिटी कॉन्टेक्स्ट में ऑथेंटिकेशन की
- 6:09:35इनेशन आ जाएगी। अगर ऑथेंटिकेशन सक्सेसफुल
- 6:09:38रहा है तो। ठीक है? अब अगर हमारे पास
- 6:09:42सिक्योरिटी कॉन्टेक्स्ट में इंफॉर्मेशन है
- 6:09:45तो हम क्या करेंगे? सिक्योरिटी
- 6:09:46कॉन्टेक्स्ट। ठीक है? अ सिक्योरिटी
- 6:09:50कंटेक्स्ट होल्डर को ले लेते हैं। ठीक?
- 6:09:51सिक्योरिटी कंटक्स्ट होल्डर डॉट गेट
- 6:09:54कंटेक्स्ट उसकी मदद से कंटक्स्ट ले लेंगे
- 6:09:56और फिर सेट ऑथेंटिकेशन करेंगे और जो
- 6:09:58ऑथेंटिकेशन का ऑथेंटिकेटेड ऑब्जेक्ट है
- 6:10:00हमारे पास उसको सेट कर देंगे यहां पर।
- 6:10:02अच्छा ये एरर क्यों दे रहा है यहां पर?
- 6:10:04वेरिएबल ऑथेंटिकेशन माइट नॉट हैव बीन
- 6:10:08इनिशियलाइज़्ड। अच्छा ऐसा है। इनिशियलाइज़
- 6:10:10तो हो रखा है। लेकिन चलिए इसको इनिशियलाइज़
- 6:10:13भी कर लेते हैं। तो मैं एक चीज़ बताता हूं
- 6:10:15यहां पर। देखिए अगर यहां तक हमारा सोर्स
- 6:10:17कोड आ रहा है इसका मतलब क्या है? कि ये जो
- 6:10:20ऑथेंटिकेशन है वो सक्सेसफुल रहा है। इसका
- 6:10:22इनिशियलाइज़ेशन सक्सेसफुल रहा है यहां पर।
- 6:10:24ठीक है? ये इसका मतलब हो जाता है। और जैसे
- 6:10:27ही अ ऑथेंटिकेशन सक्सेसफुल हो जाता है।
- 6:10:29बिना ट्राई बिना कैच ब्लॉक में आए तो हम
- 6:10:32उसको सेट कर देते हैं यहां पर। ठीक है?
- 6:10:34नहीं तो आप यहां पर एरर भी थ्रो कर सकते
- 6:10:36हो। जैसे कि आप यहां से अ रिटर्न कर सकते
- 6:10:39हो। यहां पर मैं रिटर्न कर देता हूं। ठीक
- 6:10:41है? ई डॉट प्रिंट स्ट्रेस और फिर रिटर्न
- 6:10:43कर देता हूं। अ
- 6:10:45रिटर्न करना है हमें एक एंप्टी स्ट्रिंग।
- 6:10:48ठीक है? एम्प्टी स्ट्रिंग रिटर्न कर देते
- 6:10:50हैं फिलहाल। ठीक है? कोड नॉट ऑथेंटिकेट।
- 6:10:57तो यहीं से रिटर्न हो जाएगा वो मेथड। यहां
- 6:10:59पर कोड आएगा ही नहीं। ठीक है? तो इतना हो
- 6:11:01गया। अब इसको नल इनिशियलाइज़ करने की जरूरत
- 6:11:03नहीं है। ठीक है? वो हमने रिटर्न
- 6:11:04स्टेटमेंट नहीं लिखा था। इसके लिए
- 6:11:05इंटेलिजेंट बोल रहा था इनिशियलाइज़ कर लो।
- 6:11:07लेकिन अब इनिशलाइज़ करने की जरूरत नहीं है
- 6:11:09क्योंकि यहां से ही रिक्वेस्ट रिटर्न हो
- 6:11:11जाएगी। ठीक है? यहां पर कोड आएगा ही नहीं।
- 6:11:13इतना हो गया। हमने ऑथेंटिकेटेड यूजर को
- 6:11:16सिक्योरिटी कॉन्टेक्स्ट में स्टोर भी कर
- 6:11:18दिया है। मैनुअली स्टोर किया है हमने। अब
- 6:11:20मैं क्या करूंगा? मैं ऑथेंटिकेशन ऑब्जेक्ट
- 6:11:23की मदद से यूजर की डिटेल्स लूंगा। क्या
- 6:11:26लूंगा? ऑथेंटिकेटेड ऑब्जेक्ट की मदद से
- 6:11:29यूजर की डिटेल्स को लूंगा। सिक्योरिटी
- 6:11:30कॉन्टेक्स्ट से। यह पॉसिबल है। यहां
- 6:11:32पॉसिबल है। काफी सारी नई चीजें देखने मिल
- 6:11:34रही हैं। तो देखिए ऑथेंटिकेशन ऑब्जेक्ट है
- 6:11:36मेरे पास। मैं कहूंगा गेट प्रिंसिपल यहां
- 6:11:39पर और फिर यहां पर आ जाऊंगा। फिर यहां पर
- 6:11:42कहूंगा यूजर डिटेल्स और फिर यहां पर यूजर
- 6:11:45डिटेल्स इज़ इक्वल टू गेट प्रिंसिपल। और
- 6:11:48यहां पर इसको कास्ट भी कर देते हैं। ठीक
- 6:11:49है? अब यूजर डिटेल्स क्या है? इसको ओवर
- 6:11:51करेंगे आप। तो देखिए प्रोवाइड्स दी कोर
- 6:11:53यूजर इनेशन। तो जो कोर यूजर की इनेशन है
- 6:11:55उसको यूजर डिटेल्स की मदद से आप रिट्रीव
- 6:11:58कर सकते हो। ठीक है? यूजर डिटेल्स की मदद
- 6:12:00से स्ट्रिंग सिक्योरिटी में रिट्रीव कर
- 6:12:02सकते हो। अब मुझे यह ऑथेंटिकेटेड यूजर है।
- 6:12:04हमारे पास यूजर की डिटेल्स भी है। तो अब
- 6:12:07मुझे क्या करना है? JW टोकन को इशू करना
- 6:12:10है। तो मैं क्या करूंगा? यहां पर अ मैं
- 6:12:13बना लूंगा ऑटो वायर करके ऑटो वायर्ड और
- 6:12:17JWT यूटिल्स का जो ऑब्जेक्ट है उसको मैं
- 6:12:20इंजेक्ट कर दूंगा यहां पर। JWT यूutils का
- 6:12:23ऑब्जेक्ट को इंजेक्ट क्यों कर रहा हूं
- 6:12:24यहां पर? क्योंकि मुझे JWT यूटिल्स की मदद
- 6:12:26से
- 6:12:28टोकन मिलेगा यूजरनेम से। करेक्ट? तो JWT
- 6:12:31यूutils में एक मेथड है जनरेट टोकन फ्रॉम
- 6:12:33यूजरनेम जो हमने ही लिखा है जो यूजरनेम
- 6:12:35एक्सेप्ट करता है। अब यूजरनेम इसको कहां
- 6:12:37से देंगे? तो यूजर डिटेल्स में से देंगे।
- 6:12:39यूजर डिटेल्स डॉट गेट यूजरनेम हमें
- 6:12:41यूजरनेम दे देगा। और फिर ये मेथड हमें
- 6:12:44क्या देगा? ये मेथड हमें देगा JWT की
- 6:12:47टोकन। स्ट्रिंग GWT टोकन। आप ऐसे लिख सकते
- 6:12:50हो ऐसे। ठीक है? ये हो गया हमारे पास GW
- 6:12:53टोकन। अब मैं क्या करूंगा? यहां पर इसको
- 6:12:55रिटर्न भी कर सकता हूं। यहां पर आ जाऊंगा
- 6:12:57और यहां पर कर दूंगा रिटर्न और यहां पर
- 6:13:00इसको जेडब्ल्यूडी टोकन के तौर पे ऐसे
- 6:13:02रिटर्न कर दूंगा। ठीक है? ये हो गया हमारा
- 6:13:05ऑथेंटिकेशन का लॉजिक। ठीक है? और इसको मैं
- 6:13:08कॉल कर सकता हूं। अ इसको कहां पर कॉल करना
- 6:13:11चाहिए? स्लैश। अच्छा
- 6:13:15स्लैश साइन इन पॉइंट बना लेनी चाहिए हमें।
- 6:13:17ठीक है? स्लैश साइन इन। ठीक है? अब मैं
- 6:13:20इसको रन करता हूं।
- 6:13:22अब अगर मैं रन करता हूं तो
- 6:13:26देखते हैं क्या होता है। ठीक है। रन तो हो
- 6:13:28रहा है। अच्छा यहां पर कुछ इशू आ गया।
- 6:13:31क्या इशू आ गया है यहां पर? यहां पर कुछ
- 6:13:33इशू आ गया है। एक मिनट देख लेते हैं। ठीक
- 6:13:37है। देखिए ये एरर अगर आपको ऐसे आती है तो
- 6:13:40देख के डर नहीं जाना है। ठीक है? एरर तो
- 6:13:42आना ही है। अब यहां पर मैं भी मैंने भी
- 6:13:44कुछ मिस्टेक कर दी है। ठीक है? मुझे
- 6:13:45मिस्टेक भी समझ गई। देखिए एरर मैसेज अगर
- 6:13:47आप ऊपर स्क्रॉल करते हो अनसटिस्फाइड
- 6:13:49डिपेंडेंसी एक्सप्रेस थ्रू फील्ड
- 6:13:51ऑथेंटिकेशन मैनेजर तो इसको ऑथेंटिकेशन
- 6:13:53मैनेजर का बीन नहीं मिला है। देखिए ये
- 6:13:55क्लियरली बोल रहा है नो क्वालिफाइड बीन
- 6:13:57फॉर टाइप ऑथेंटिकेशन मैनेजर अवेलेबल। तो
- 6:14:00इसका मतलब आपको बीन बनाना है ऑथेंटिकेशन
- 6:14:02मैनेजर का। अब ये कहां पर बनाओगे आप? मैं
- 6:14:04बनाऊंगा सिक्योरिटी कॉन्फ़िगरेशन में। ठीक
- 6:14:06है? वहां यहीं पर बनाना प्रेफर करूंगा
- 6:14:08मैं। और इसका रीज़न है क्योंकि सारी जो
- 6:14:10सिक्योरिटी रिलेटेड कॉन्फ़िगरेशन है वो मैं
- 6:14:12यहीं पर लिख रहा हूं। ठीक है? तो यहां पर
- 6:14:14आ जाऊंगा और यहां पर मैं लिखूंगा एक बीन
- 6:14:17ठीक है और मैं कहूंगा पब्लिक ऑथेंटिकेशन
- 6:14:20मैनेजर इसे एक्सपोज कर दूंगा इसे
- 6:14:23ऑथेंटिकेशन मैनेजर और यहां पर ऑथेंटिकेशन
- 6:14:27अ कॉन्फ़िगरेशन करके होगा ऑथेंटिकेशन
- 6:14:30कॉन्फ़िगरेशन और यहां पर बिल्डर और फिर
- 6:14:34यहां पर रिटर्न
- 6:14:36गेट अच्छा बिल्डर डॉट गेट ऑथेंटिकेशन
- 6:14:40मैनेजर को रिटर्न कर दूंगा मैं इस तरीके
- 6:14:43से ठीक है। इतना हो चुका है। ठीक है। कोई
- 6:14:46दिक्कत तो आई नहीं। अब इसको रन करते हैं।
- 6:14:48शायद एक और एरर है। ठीक है? मुझे पता है
- 6:14:50वो एरर क्या होगी? डेटाबेस रिलेटेड होगी।
- 6:14:54देखिए एरर आ गई। ये पता था मुझे एरर आएगी।
- 6:14:56ठीक है? ये क्या बोल रहा है कि यूजर वन
- 6:14:58ऑलरेडी क्रिएटेड है। तो देखिए मैं एक
- 6:15:00दिक्कत बता देता हूं अभी आपको कोड में और
- 6:15:01उसको सॉल्व कैसे करना है वो भी बता देता
- 6:15:03हूं। ठीक है? यहां पर सिक्योरिटी
- 6:15:05कॉन्फ़िगरेशन में हम क्या कर रहे हैं? ये
- 6:15:06तीनों यूज़र्स क्रिएट कर रहे हैं इन मेमोरी
- 6:15:08यूजर डिटेल्स मैनेजर की मदद से। ठीक है?
- 6:15:11यहां पर ये तीन तीनों यूजर को क्रिएट किया
- 6:15:12हमने ऑब्जेक्ट और ये तीनों यूजर को
- 6:15:14डेटाबेस में क्रिएट भी कर रहे हैं हम। हो
- 6:15:16क्या रखा है? अभी आप डेटाबेस में अगर आप
- 6:15:18आओगे तो ये जो यूज़र्स हैं ये ऑलरेडी
- 6:15:20क्रिएटेड है। यहां पर आप देखोगे तो देखिए
- 6:15:23इसको रिफ्रेश करता हूं। तो यूज़र्स ऑलरेडी
- 6:15:25क्रिएटेड है। अब बार-बार ये यूजर को
- 6:15:27क्रिएट करके कुछ पॉइंट है नहीं। करेक्ट?
- 6:15:29तो इसीलिए मुझे एरर आ रही है कि ये यूजर
- 6:15:31ऑलरेडी एकज़िस्टिंग है। तो अब बार-बार
- 6:15:34क्रिएट क्यों कर रहे हो? ठीक है? तो मुझे
- 6:15:36क्या करना चाहिए? एक हिसाब से यहां पर एक
- 6:15:39चेक लगा लेना चाहिए कि वो यूजर एग्ज़िस्ट
- 6:15:41करता है कि नहीं। तो मैं यहां पर लिख
- 6:15:42दूंगा इफ़ नॉट इक्वल टू यूजर डिटेल्स
- 6:15:45मैनेजर डॉट यूजर एकज़िस्ट और देखिए यहां पर
- 6:15:48यूजरनेम आप पास कर सकते हो। ठीक है? तो
- 6:15:50मैं क्या करूंगा? यहां पर यूजर वन
- 6:15:54डॉट और यहां पर गेट यूजरनेम पास कर दूंगा।
- 6:15:56ठीक है? तो इससे आपको पता चल जाएगा कि
- 6:15:58यूजर एकज़िस्टिंग है या नहीं। अगर यूजर
- 6:16:00एकज़िस्टिंग है तो ही क्रिएट करो इस यूजर
- 6:16:02को। आप समझ रहे हो? अगर यूजर एकिस्टिंग है
- 6:16:05तो ही क्रिएट करो इस यूजर को। इस तरीके से
- 6:16:08मैं इस चेक को तीन बार रिपीट कर दूंगा। एक
- 6:16:10बार यूजर वन के लिए, दूसरी बार यूजर टू के
- 6:16:12लिए और तीसरी बार एडमिन के लिए। ठीक है?
- 6:16:16और ये जो क्रिएट यूजर यूजर टू है, यहां पर
- 6:16:19यूजर टू क्रिएट हो जाएगा। अगर यूजर टू
- 6:16:20एक्सिस्ट नहीं करता है तो। और यहां पर
- 6:16:21एडमिन क्रिएट हो जाएगा। अगर एडमिन
- 6:16:23एग्ज़िस्ट नहीं करता है, तो। अब इन दोनों
- 6:16:25को मैं हटा दूंगा। ठीक है? समझ में आ गया
- 6:16:27बात? मैं क्यों कर रहा हूं? मैं चेक कर
- 6:16:29रहा हूं कि क्या यह यूजर एग्ज़िस्ट करता है
- 6:16:31इस यूजरनेम के साथ? अगर एग्ज़िस्ट नहीं
- 6:16:33करता है, तो ही क्रिएट किया जाए नहीं तो
- 6:16:35स्किप कर दीजिए। ठीक है? अब कोई दिक्कत
- 6:16:37नहीं आएगी जितना मुझे लगता है। रन करके
- 6:16:40देख लेते हैं फिर भी। ठीक है? नहीं आई
- 6:16:43दिक्कत। देखिए कोई दिक्कत नहीं है।
- 6:16:44एप्लीकेशन स्टार्ट हो गई। ठीक है? अब यहां
- 6:16:46पर आप आ जाते हो। यहां पर आने के बाद मैं
- 6:16:49क्या करूंगा? यहां पर एक नई रिक्वेस्ट बना
- 6:16:51लूंगा। ठीक है? और यहां पर एक पोस्ट
- 6:16:53रिक्वेस्ट होगी ये और ये होगी एक साइन इन
- 6:16:56रिक्वेस्ट।
- 6:16:58एस आई जी एन साइन इन। और यहां पर बॉडी में
- 6:17:02मैं पास कर दूंगा। ठीक है? मैं पास कर
- 6:17:05दूंगा लॉग इन रिक्वेस्ट। सो सबसे पहले तो
- 6:17:07यूजरनेम इस तरीके से। ठीक है? यूजरनेम जो
- 6:17:10भी है वो पास करना है हमें। और फिर मैं
- 6:17:12पास करूंगा पासवर्ड इस तरीके से। ठीक है?
- 6:17:15और पासवर्ड जो भी है। तो मैं पास कर रहा
- 6:17:17हूं यूजर वन। ठीक है? और फिर यहां पर पास
- 6:17:20टाइप कर रहा हूं पासवर्ड वन। ठीक है? इसको
- 6:17:23सेंड करके देखते हैं क्या होता है। अच्छा
- 6:17:25ये गेट रिक्वेस्ट है। सॉरी। तो इसको
- 6:17:27भेजेंगे एज़ अ पोस्ट रिक्वेस्ट। अच्छा पहले
- 6:17:29ही अनऑथराइज़्ड आ गई। पोस्ट रिक्वेस्ट की
- 6:17:32तरह इसको भेज रहे हैं। देखते हैं क्या
- 6:17:33होता है। अच्छा अन ऑथराइज़्ड आ रहा है। तो
- 6:17:35यह रिक्वेस्ट हिट तो हुई है क्या? 1 मिनट
- 6:17:37जरा देख लेते हैं हुआ क्या है। ठीक है?
- 6:17:41यहां पर आ जाते हैं हेलो कंट्रोलर में
- 6:17:43स्लैश साइन इन। ठीक है? साइन इन और यहां
- 6:17:47पर अच्छा तो मुझे प्रॉब्लम समझ में आ गई।
- 6:17:51क्या प्रॉब्लम है? ठीक है? प्रॉब्लम यह है
- 6:17:53कि साइन इन जो रिक्वेस्ट है वहां पर भी
- 6:17:56ऑथेंटिकेशन एक्सपेक्ट करता है। देखिए आपके
- 6:17:58पास एक एप्लीकेशन है और लॉग इन पेज है। तो
- 6:18:02लॉग इन पेज को आपको साइन इन यानी लॉग इन
- 6:18:05पेज को आपको ऑथेंटिकेटेड नहीं रखना है।
- 6:18:07करेक्ट? लॉग इन पेज तो पब्लिक पेज होना
- 6:18:09चाहिए ताकि कोई भी आके लॉग इन कर पाए उस
- 6:18:11पे और खुद को ऑथेंटिकेट कर पाए। अगर लॉगिन
- 6:18:14की जो एपीआई है, लॉग इन का जो पेज है उसी
- 6:18:16पर अगर आप ऑथेंटिकेशन एक्सपेक्ट करोगे तो
- 6:18:18देखिए ऑथेंटिकेट करने के लिए लॉग इन पेज
- 6:18:20का एक्सेस जरूरी है और लॉग इन पेज को
- 6:18:22एक्सेस करने के लिए ऑथेंटिकेशन जरूरी है।
- 6:18:24तो ये साइकिल हो जाता है और वो कभी एक्सेस
- 6:18:25नहीं कर पाएगा। तो लॉग इन पेज हमेशा
- 6:18:27पब्लिक होना चाहिए। ठीक है? तो यहां पर
- 6:18:29हमें पब्लिक करना होगा। हमने पब्लिक नहीं
- 6:18:31किया है उसे। तो यहां पर आ जाऊंगा मैं और
- 6:18:33यहां पर इसको डुप्लीकेट कर दूंगा ये लाइन
- 6:18:35को। रिक्वेस्ट मैचेस डॉट पैटर्न साइन इन।
- 6:18:39तो यह साइन इन नाम की जो एंड पॉइंट है वह
- 6:18:41पब्लिक रहेगी और यहां पर हैज़ रोल नहीं
- 6:18:44यहां पर मैं लिख दूंगा इसको हटा देता हूं
- 6:18:46पूरा यहां पर डॉट परमिट ऑल देखिए परमिट ऑल
- 6:18:50लिख दूंगा मतलब साइन इन पे जो भी
- 6:18:51रिक्वेस्ट आ रही है उसको परमिट किया जाएगा
- 6:18:53तो मैं रन कर देता हूं इसे ऐसा करके
- 6:18:55[हंसी]
- 6:18:55ठीक है साइन इन पे जो भी रिक्वेस्ट आएगी
- 6:18:57उसे परमिट किया जाएगा। तो ये मेरी
- 6:18:59एप्लीकेशन चल गई। अब साइन इन एंड पॉइंट पे
- 6:19:02कोई ऑथेंटिकेशन नीडेड नहीं है। साइन इन का
- 6:19:04यह मकसद है कि वो यूजर को खुद को
- 6:19:06ऑथेंटिकेट करने का मौका देता है। ठीक है?
- 6:19:08ठीक है? तो ये पब्लिक एंड पॉइंट है। तो
- 6:19:09इसको मैं रन करूंगा और अच्छा अभी भी मुझे
- 6:19:12ऑथेंटिकेशन ही मांग रहा है। ऑथेंटिकेशन
- 6:19:14क्यों मांग रहा है? ये तो आइडली मांगना
- 6:19:16नहीं चाहिए। रिक्वेस्ट मैचेस डॉट परमिट ऑल
- 6:19:20तो मैंने लिखा है प्रॉपर्ली। अच्छा तो
- 6:19:23यहां पर दिक्कत ये हो रही है। हमने बेसिक
- 6:19:25ऑथेंटिकेशन को इनेबल कर रखा है। तो इसको
- 6:19:27भी डिसेबल करना होगा। ठीक है? क्योंकि
- 6:19:29बेसिक ऑथेंटिकेशन इनेबल कर रखा है। तो वो
- 6:19:31यूजरनेम पासवर्ड, क्रेडेंशियल्स हर
- 6:19:33रिक्वेस्ट के साथ मांग जा रहा है। ठीक है?
- 6:19:34तो इसको भी डिसेबल करेंगे। ये एक-एक करके
- 6:19:36एक-एक चीजों को हम डिसेबल कर रहे हैं और
- 6:19:39अब लगभग चल जाना चाहिए ये। ठीक है? तो ये
- 6:19:42चल गया। यहां पर आ जाते हैं। अच्छा 403
- 6:19:45फॉर बिडन। अब ये कुछ रोल रिलेटेड इशू है।
- 6:19:47ठीक है? देखिए मैं ये जो इशूज़ वाली जो
- 6:19:49पार्ट है ना इसको मैं ये नहीं करूंगा। कट
- 6:19:52नहीं कर रहा हूं क्योंकि यहां से आपको ये
- 6:19:55भी समझ में आएगा कि यहां से आपको ये भी
- 6:19:57समझ में आएगा कि कौन सी अ कौन सी इशू के
- 6:20:02लिए आपको क्या सॉल्यूशन देना है। ठीक है?
- 6:20:04वो काफी जरूरी है। देखिए इसको कट कर सकता
- 6:20:06हूं मैं। ठीक है? और आपको एक स्मूथ क्लीन
- 6:20:10वीडियो मिल जाएगी। ठीक है? बिना किसी एरर
- 6:20:12की। लेकिन मेरे हिसाब से जो एरर्स आते हैं
- 6:20:14ना वो काफी कुछ सिखा जाते हैं हमें। ठीक
- 6:20:17है? अब ये जो एरर आ रहा है मुझे ये एरर
- 6:20:19मुझे ये बोल रहा है कि 403 फॉरबिडन मतलब
- 6:20:21यहां पर कुछ एक्सेस रिलेटेड इशू हो गया
- 6:20:23है। ठीक है? एक्सेस रिलेटेड इशू हो रहा
- 6:20:25है। इसका मतलब अ यह साइन इन एंड पॉइंट है।
- 6:20:28इस पे कुछ एक एक तरह का ऑथराइजेशन यह मांग
- 6:20:30रहा है। तो यह जो इशू आ रही है वो इशू
- 6:20:34इसीलिए आ रही है क्योंकि हमने हम पोस्ट
- 6:20:36रिक्वेस्ट सेंड कर रहे हैं। ठीक है? और
- 6:20:38जेडब्ल्यूडी बेस्ड ऑथेंटिकेशन करने की
- 6:20:40कोशिश कर रहे हैं। लेकिन हमने सीएसआरएफ को
- 6:20:42डिसेबल नहीं किया हुआ है। सीएसआरएफ एक
- 6:20:44टाइप का अटैक है जो जिसके अगेंस्ट बाय
- 6:20:47डिफ़ॉल्ट प्रोटेक्शन मिलती है स्प्रिंग
- 6:20:49सिक्योरिटी की मदद से। और अगर हम सीएसआरएफ
- 6:20:52अटैक्स को हैंडल करना चाहते हैं तो हमें
- 6:20:54सीएसआरएफ टोकन रिक्वेस्ट में भेजना होगा
- 6:20:56जो कि हम अभी नहीं भेज रहे। तो फिलहाल के
- 6:20:58लिए मैं क्या करूंगा यहां पर
- 6:21:00इसको एंटर करूंगा और डॉट सीएसआरf ऐसे लिख
- 6:21:04दूंगा और फिर यहां पर सीएस आरf और फिर ऐसे
- 6:21:09यहां पर सीएसआरf डॉट डिसेबल ऐसे लिख
- 6:21:12दूंगा। ठीक है? अब ये मुझे सजेस्ट करेगा
- 6:21:14कि मेथड रेफरेंस का इस्तेमाल कीजिए तो मैं
- 6:21:16वह सजेशन एक्सेप्ट भी कर लूंगा। ठीक है?
- 6:21:18तो एक हिसाब से मैं सीएसआरf टोकन को या
- 6:21:20सीएसआरf प्रोटेक्शन को डिसेबल कर रहा हूं।
- 6:21:22ठीक है? अब इस रन इस एप्लीकेशन को रन करने
- 6:21:24से पहले मैं एक और चीज़ मुझे बता दूं। मुझे
- 6:21:26ध्यान में आई कि ये जो JW सीक्रेट है ये
- 6:21:29एक्चुअली बेस 64 नहीं है। तो अगर मैं रन
- 6:21:32करूं तो ये फिर से मुझे एरर आएगी कि बेस
- 6:21:3464 JW सीक्रेट नहीं है। मैं आपको रन करके
- 6:21:37दिखा देता हूं। ठीक है? नहीं तो आपको
- 6:21:39लगेगा कि ये बार-बार एरर आ रही है। ये
- 6:21:41क्या हो रहा है। ठीक है? तो एरर आएगी
- 6:21:43क्योंकि बेस 64 JW सीक्रेट नहीं है और
- 6:21:46जानबूझ के वहां पर मैंने बेस 64 वैल्यू
- 6:21:48नहीं डाली है। ठीक है? तो देखिए अगर मैं
- 6:21:50रन करता हूं इशू आएगी और यहां पर अगर मैं
- 6:21:53स्क्रॉल अप करता हूं यहां पर आप देखिएगा
- 6:21:56तो यहां पर आपको अच्छा काफी ऊपर है एरर।
- 6:21:59तो यहां पर देखिए अच्छा ये बोल रहा है
- 6:22:02इललीगल बेस 64 कैरेक्टर जो कि है हफेन। तो
- 6:22:05सबसे पहले तो हफन एक बेस 64 वैल्यू नहीं
- 6:22:07है। तो इसको हटा के अगर हम किसी दूसरे
- 6:22:09कैरेक्टर से भी रिप्लेस कर देते हैं तो
- 6:22:11बाद में वो इशू आएगी कि बेस 64 वैल्यू ये
- 6:22:13नहीं है। तो हमें बेस 64 वैल्यू डालनी
- 6:22:15चाहिए यहां पर। तो मैं क्या करूंगा? यहां
- 6:22:17पर आ जाता हूं ब्राउज़र में और यहां पर
- 6:22:20लिखता हूं गेटिंग बेस 64 वैल्यू। ठीक है?
- 6:22:25बेस 64 स्ट्रिंग। तो यहां पर कोई भी काफी
- 6:22:27सारे एनकोडर्स होते हैं बेस 64 के। ठीक
- 6:22:30है? आप यहां पर कोई भी स्ट्रिंग ऐड कर
- 6:22:31दीजिए। ठीक है? जैसे कि मैं ये वाली जो
- 6:22:34स्ट्रिंग है
- 6:22:36इसी को मैं पेस्ट कर देता हूं यहां पर।
- 6:22:39ठीक है? और ये हमें अ जो बेस 64 की जो
- 6:22:42वैल्यू है वो उसे अ डिकोड करके दे देगा।
- 6:22:45ठीक है? एनकोड करके देगा। सॉरी। तो ये तो
- 6:22:48एनकोडर है। अच्छा ये डिकोडर है। एक हिसाब
- 6:22:51से मुझे एनकोडर चाहिए। तो मैंने एनकोड पे
- 6:22:53क्लिक किया। ठीक है? और यहां पर इसको करके
- 6:22:57एनकोड कर दूंगा। तो देखिए ये जो है ये बेस
- 6:22:5964 वैल्यू मिल गई है मुझे। इसको ले लूंगा।
- 6:23:01इसको क्लोज कर देता हूं और यहां पर आकर
- 6:23:04इसको पेस्ट कर दूंगा इस तरीके से। ठीक है?
- 6:23:08अब एप्लीकेशन चल जानी चाहिए। ठीक है? कुछ
- 6:23:10चेंजेस किए हमने। सीएसआरएफ डिसेबल किया।
- 6:23:12साइन इन एंड पॉइंट को पब्लिक किया और जो
- 6:23:15JW सीक्रेट है उसको प्रॉपर बेस 64 वैल्यूज़
- 6:23:18से रिप्लेस किया। अब यहां पर आएंगे हम। तो
- 6:23:21यहां पर हम रन करेंगे और देखिए हमें टोकन
- 6:23:24इशू हो रहा है यहां पर। ठीक है? अब आप
- 6:23:26पूछेंगे बेस 64 वैल्यू है क्या? होती क्या
- 6:23:28है बेस 64 वैल्यू? तो देखिए बेस 64 वैल्यू
- 6:23:31एक हिसाब से रिप्रेजेंटेशन है। ठीक है? एक
- 6:23:34रिप्रेजेंटेशन है बाइनरी डेटा का और उसको
- 6:23:37एस्की करैक्टर्स में ट्रांसलेट किया जाता
- 6:23:38है। जैसे कि आप स्ट्रिंग देख रहे हो ये
- 6:23:40रीडेबल नहीं है। ठीक है? क्योंकि इनकोडेड
- 6:23:42है बेस 64 में। तो हमारी जो सीक्रेट होती
- 6:23:44है वो इसी तरह से होती है। एप्लीकेशन में
- 6:23:46होनी चाहिए एक्सपायरेशन सेकंड्स। और इस
- 6:23:48सीक्रेट के अगेंस्ट जो हमारी JW टोकन है
- 6:23:50वह इशू हो रही है। तो देखिए यह JडW टोकन
- 6:23:53है। अब इसे हम कॉपी कर सकते हैं। यहां पर
- 6:23:55आ सकते हैं जो हमारा ब्राउज़र है। और यहां
- 6:23:57पर देखिए JW डिकोडर है JडW आईo में। ठीक
- 6:24:00है? यहां पर आ जाइए JडW डिकोडर में और
- 6:24:02यहां पर पेस्ट कर दीजिए। तो आपको इस इस
- 6:24:07क्या बोलते हैं? इस टोकन में क्या-क्या
- 6:24:09वैल्यूज़ है वो दिखाई देंगी। यहां पर ये
- 6:24:11इसको डिकोड कर देगा। तो देखिए ये
- 6:24:12एल्गोरिदम यहां पर बता रहा है इंक्रिप्शन
- 6:24:14एल्गोरिदम जो कि है एच एस 256 और यहां पर
- 6:24:18पेलोड में आपको दिखाई देगा यूजर वन के
- 6:24:20अगेंस्ट ये JWE टोकन इशू हुई है और यह
- 6:24:23सब्जेक्ट में सब्जेक्ट में कैसे आ गया ये
- 6:24:26तो देखिए यूजरनेम यूजर वन है और यहां पर
- 6:24:29जब जनरेट कर रहे हो आप सब्जेक्ट में खुद
- 6:24:31ही सेट कर रहे हो यूजर नेम तो यहां पर आप
- 6:24:33जो भी सेट कर रहे हो वो दिखाई देगा आपको
- 6:24:35ठीक है और चीज़ आपको यहां पर दिखाई देगी
- 6:24:37इशूड एट ये इशूड एट कब है देखिए आज की डेट
- 6:24:40एक्सपायरेशन टाइम भी आपको दिखाई देगा यहां
- 6:24:42पर। ठीक है? ये सब िक्स का सेकंड्स अप्रोच
- 6:24:46है। देखिए सेकंड्स में दिखाई दे रहा है
- 6:24:47आपको। लेकिन यह टाइम स्टैंप है। ठीक है?
- 6:24:49इसी तरीके से होता है। और ये सीक्रेट है
- 6:24:51यहां पर। ठीक है? तो इस तरीके से जो है
- 6:24:56आपकी JW टोकन तो इशू हो रही है। ठीक है?
- 6:24:58तो कांग्रेचुलेशंस। अब हम यहां तक पहुंच
- 6:25:00गए। ठीक है? थोड़ी दिक्कत आई बीच में।
- 6:25:02थोड़ी एरर्स है जिसको मैंने क्लीन और
- 6:25:04ट्रांसपेरेंट रखा है। ठीक है? आपके एंड पर
- 6:25:06भी अगर ये एरर्स आते हैं तो आपको अब पता
- 6:25:08होगा कि ये एरर्स क्यों आ रहे हैं और आप
- 6:25:10उनको आसानी से सॉल्व कर पाओगे। ठीक है? तो
- 6:25:15ठीक है? उम्मीद करता हूं यह हेल्पफुल रहा।
- 6:25:22तो देखिए दोस्तों, JWD टोकन तो हम इशू कर
- 6:25:25पा रहे हैं। ठीक है? अ जो क्लाइंट है जहां
- 6:25:27से भी रिक्वेस्ट आ रही है यानी कि वेब
- 6:25:29एप्लीकेशन से आ रही है, मोबाइल एप्लीकेशन
- 6:25:31से आ रही है या हो सकता है आप पोस्टमैन से
- 6:25:34ऐसे भेज रहे हो रिक्वेस्ट JW टोकन इशू
- 6:25:37करने की एबिलिटी आ चुकी है और यूजर को JW
- 6:25:39टोकन यूजर या क्लाइंट उसको JW टोकन मिल जा
- 6:25:42रही है लेकिन अब JW टोकन इशू हो चुका है
- 6:25:44तो वो सब्सीक्वेंट रिक्वेस्ट में टोकन तो
- 6:25:47भेजेगा कैसे भेजेगा टोकन ऐसे कॉपी कर लेगा
- 6:25:50उसको ठीक है और कोई भी रिक्वेस्ट है यानी
- 6:25:52कि यह रिक्वेस्ट अगर मैं करना चाह रहा हूं
- 6:25:54यहां पर ऑथराइजेशन में आएगा ठीक है?
- 6:25:56ऑथराइज़ेशन में नहीं सॉरी हेडर में आएगा।
- 6:25:59हेडर में एक ऑथराइज़ेशन हेडर नाम का एक
- 6:26:02हेडर होता है। ऑथराइज़ेशन सेलेक्ट करूंगा
- 6:26:04और फिर यहां पर बेर और फिर टोकन को पेस्ट
- 6:26:07कर दूंगा। इस तरीके से टोकन में भेजूंगा
- 6:26:10मैं अ बैक एंड को। ठीक है? अब दिक्कत ये
- 6:26:14है इसको वैलिडेट कैसे करें? ठीक है? तो
- 6:26:16किसी भी रिक्वेस्ट के साथ हर रिक्वेस्ट के
- 6:26:18साथ यह टोकन आ सकता है। तो आपको ऐसा कुछ
- 6:26:21सोर्स कोड लिखना होगा जो हर रिक्वेस्ट को
- 6:26:24इंटरसेप्ट करे। हर रिक्वेस्ट को रोके और
- 6:26:27उसमें यह टोकन है या नहीं उसको देखें।
- 6:26:29टोकन अगर प्रेजेंट है तो टोकन को रिट्रीव
- 6:26:31करें और फिर उसको वैलिडेट करके रिक्वेस्ट
- 6:26:33को आगे जाने दें। ठीक है? रिक्वेस्ट को
- 6:26:36वैलिडेट करें। इसका मतलब इसमें टोकन वैलिड
- 6:26:38है क्या? पहले यह देखिए। टोकन एक्सपायर हो
- 6:26:40चुका है क्या? यह भी देखना पड़ेगा। और फिर
- 6:26:42जो रिक्वेस्ट आई है वो जो एंड पॉइंट पे जा
- 6:26:45रही है उसको एक्सेस करने की परमिशन है
- 6:26:47क्या उसे? तो ये रूल्स से पता चल जाएगा।
- 6:26:50ठीक है? तो यहां पर आपको क्या करना है?
- 6:26:53यहां पर हम इस डायग्राम पर आ जाएंगे। ठीक
- 6:26:56है? तो ये है स्प्रिंग सिक्योरिटी का
- 6:26:58डायग्राम। ठीक है? और यहां पर एक फ़्टर चेन
- 6:27:01नाम की एक चीज है। ठीक है? तो ये फ़्टर चेन
- 6:27:04का काम क्या होता है? इसमें फ़्टर्स होते
- 6:27:05हैं। करेक्ट? ये फ़्टर चेन है। इसमें
- 6:27:08फ़्टर्स होते हैं तरह-तरह के जिसका काम है
- 6:27:10रिक्वेस्ट को इंटरसेप्ट करना, रिक्वेस्ट
- 6:27:11को रोकना और हर रिक्वेस्ट पर कुछ
- 6:27:13प्रोसेसिंग करना, कुछ वैलिडेट करना, कुछ
- 6:27:15चेक करना। ठीक है? और ये एक चेन की तरह
- 6:27:18होती है। यानी कि एक के बाद दूसरा
- 6:27:19एग्जीक्यूट होता है, दूसरे के बाद तीसरा।
- 6:27:21एक लाइन में सारी चीजें एग्जीक्यूट होती
- 6:27:22है। तो, इसीलिए इसे चेन कहा जाता है। और
- 6:27:25यह फ़िल्टर की चेन है। इसीलिए इसे फ़्टर चेन
- 6:27:27कहा जाता है। ठीक है? तो, सबसे बढ़िया
- 6:27:31तरीका JWT टोकन को वेरीफाई करने का है यह
- 6:27:35फ़्टर चेन। तो, यहां पे हम क्या करेंगे?
- 6:27:38यहां पर ही हम अपना एक कस्टम फ़िल्टर
- 6:27:40बनाएंगे। ठीक है? यह हमारा फ़्टर होगा। ठीक
- 6:27:44है? हमारा फ़्टर होगा। यह हम बनाएंगे और इस
- 6:27:47फ़िल्टर का कोड भी हम लिखेंगे। तो यहां पर
- 6:27:49इस वीडियो से देखिए आपको क्या-क्या समझ
- 6:27:50में आएगा। आपको समझ में आएगा सबसे पहले तो
- 6:27:53कि JडW टोकन को वैलिडेट कैसे करना है।
- 6:27:56दूसरी चीज आपको यह समझ में आएगी कि अपना
- 6:27:59खुद का फ़्टर किस तरीके से लिखना है और
- 6:28:01उसको फ़्टर चेन में कैसे ऐड करना है। यह
- 6:28:04काफी जरूरी है क्योंकि फ़िल्टर चेन का
- 6:28:06इस्तेमाल आप सिर्फ टोकन वैलिडेशन के लिए
- 6:28:08नहीं आप नए फ़िल्टर्स किसी और चीज़ के लिए
- 6:28:10भी कर सकते हो। लॉगिन के लिए एक नया फ़्टर
- 6:28:11बना सकते हो। यानी कि अगर आपको कोई इशू आ
- 6:28:14रही है और आपको समझ में नहीं आ रहा वो इशू
- 6:28:16क्यों आ रही है तो आप देखना चाहते हो कि
- 6:28:18हर रिक्वेस्ट में क्या डेटा आ रहा है क्या
- 6:28:20पैरामीटर आ रहा है सर्वर पे क्या हिट हो
- 6:28:22रहा है तो आप एक फ़िल्टर बना सकते हो जिसका
- 6:28:24काम है सिर्फ लॉक करना ठीक है वो सारी
- 6:28:26रिक्वेस्ट को इंटरसेप्ट करेगा और लॉक
- 6:28:28करेगा आप उसको फ़िल्टर चेन में कहीं पर भी
- 6:28:29प्लेस भी कर सकते हो कहां पर प्लेस करना
- 6:28:31है फिल्टर चेन में या सबसे पहले
- 6:28:33एग्जीक्यूट होनी है सबसे एंड में या कहीं
- 6:28:34बीच में एग्जीक्यूट होनी है ये पूरा
- 6:28:35कंट्रोल हमारे हाथ में है। ठीक है? मैं
- 6:28:38आपको ये स्टेप बाय स्टेप गाइड दूंगा। तो
- 6:28:39ठीक है? आपको कांसेप्ट तो समझ गए ना।
- 6:28:41देखिए कांसेप्ट समझना जरूरी है। हम फिल्टर
- 6:28:42क्यों बना रहे हैं? लोग क्या है अक्सर कोड
- 6:28:44देख लेते हैं और फिर डायरेक्ट इंप्लीमेंट
- 6:28:46करने लग जाते हैं। फिल्टर क्यों बना रहे
- 6:28:47हैं? वो समझ में आना चाहिए। फ़्टर बनाने से
- 6:28:50पहले आपको ये समझ में आना चाहिए कि
- 6:28:51फ़िल्टर्स का मतलब क्या होता है? फ़्टर चेन
- 6:28:53क्या होती है? और ये पार्ट यहां पर फ़्टर
- 6:28:57ऐड करने के लिए हमने क्यों चुना? हम कहीं
- 6:28:59और कोड क्यों नहीं लिख सकते? फिल्टर इसलिए
- 6:29:01बना रहे हैं क्योंकि फिल्टर्स एग्जीक्यूट
- 6:29:03होते हैं हर रिक्वेस्ट के आने पर और हर
- 6:29:05रिक्वेस्ट को इंटरसेप्ट करते हैं। ये
- 6:29:07फिल्टर चेन का पार्ट होता है। ठीक है? तो
- 6:29:10यहां पर मैं क्या करूंगा? यहां पर आ
- 6:29:11जाऊंगा। ठीक है? हमारे कोड में और मैं
- 6:29:13यहां पर एक फ़्टर बना दूंगा। ठीक है? और
- 6:29:16यहां पर इस फ़िल्टर का नाम मैं दूंगा ऑथ
- 6:29:18ऑथेंटिकेशन टोकन फ़िल्टर। यह हमारा एक
- 6:29:22कस्टम फ़िल्टर होगा। ठीक है? देखिए आप कभी
- 6:29:25भी फिल्टर बनाते हो ना तो उसको एक चीज से
- 6:29:28एक्सटेंड करना है जो कि है वंस पर
- 6:29:31रिक्वेस्ट फिल्टर। ये एक क्लास है। देखिए
- 6:29:33ये एक क्लास है और इस पर अगर आप ओवर
- 6:29:36करेंगे तो ये एक हिसाब से एक एब्स्ट्रैक्ट
- 6:29:39क्लास है। ठीक है? और यह देखिए इसका मतलब
- 6:29:41क्या है? फ़िल्टर बेस क्लास दैट एम्स टू
- 6:29:43गारंटी सिंगल एग्जीक्यूशन पर रिक्वेस्ट
- 6:29:47डिस्पैच। ठीक है? तो अगर आप इस
- 6:29:49एब्स्ट्रैक्ट क्लास का इस्तेमाल करते हो,
- 6:29:51इसका मतलब क्या है? कि यह गारंटी देगा कि
- 6:29:54ये जो फिल्टर आप बना रहे हो वो एक बार एक
- 6:29:56रिक्वेस्ट के लिए एग्जीक्यूट होगा। सिर्फ
- 6:29:57एक बार। ठीक है? मल्टीपल टाइम्स
- 6:29:59एग्जीक्यूट नहीं होगा। सिर्फ एक बार एक
- 6:30:00रिक्वेस्ट के लिए एग्जीक्यूट होगा। ठीक
- 6:30:02है? और उसमें ये मेथड प्रोवाइड किया जाता
- 6:30:04है ड फ़ फ़िल्टर इंटरनल मेथड जिसमें ये
- 6:30:06एचटीटीp सर्लेट रिक्वेस्ट और रिस्पांस
- 6:30:08आर्गुमेंट्स दिए जाते हैं। तो आपको उसका
- 6:30:10इस्तेमाल करके काम करना है। http सर्लेट
- 6:30:13रिक्वेस्ट में आपको रिक्वेस्ट की ऑब्जेक्ट
- 6:30:15मिल जाएगी और रिस्पांस में आपको रिस्पांस
- 6:30:17मिल जाएगा। ठीक है? तो यहां पर आप आइए। अब
- 6:30:20जैसे कि मैंने कहा यह एक एब्स्ट्रैक्ट
- 6:30:22क्लास है तो यहां पर इंप्लीमेंट मेथड्स पर
- 6:30:23क्लिक करेंगे और यह देखिए इसको इंप्लीमेंट
- 6:30:25कर लिया और इसको मैं एज ए स्प्रिंग मैनेज
- 6:30:28कंपोनेंट भी डिफाइन कर दूंगा। स्प्रिंग
- 6:30:30मैनेज कंपोनेंट है ये। ठीक है? अब यहां पर
- 6:30:32आ जाते हैं। अब देखिए हमारे पास एक फ़िल्टर
- 6:30:35बनाना है हमें। तो मैं क्या करूंगा? देखिए
- 6:30:37सबसे पहले तो लॉगर ऐड कर दूंगा। यहां पर
- 6:30:39लॉगर। ठीक है? लॉगर। अच्छा लॉगर ऐसे नहीं
- 6:30:43करता हूं मैं। अह इसको यहां पर सिस्टम डॉट
- 6:30:45डॉट डॉट प्रिंटिन करता हूं। ठीक है? लॉगिन
- 6:30:47के लिए मुझे लॉगर का ऑब्जेक्ट लेना
- 6:30:48पड़ेगा। लेकिन यहां पर लिख देता हूं ऑथ
- 6:30:50टोकन फ़्टर कॉल्ड ऐसे। ठीक है? तो, यह
- 6:30:55मैंने यहां पर ऐसे ही लिख दिया है। ऐसे ही
- 6:30:57टाइप कर दिया है। और हम क्या करेंगे? इसको
- 6:30:59पहले तो टेस्ट करेंगे कि ये फ़्टर हर
- 6:31:01रिक्वेस्ट पर कॉल हो रहा है या नहीं। ठीक
- 6:31:03है? तो, मैं क्या करूंगा? मैं अह आ जाता
- 6:31:07हूं अ मुझे आना होगा
- 6:31:11सिक्योरिटी कॉन्फ़िगरेशन में। और मैं यहां
- 6:31:14पर सिक्योरिटी कॉन्फ़िगरेशन में मुझे ऐड
- 6:31:16करना होगा ऑथ टोकन फिल्टर। तो मैं क्या
- 6:31:19करूंगा? यहां पर आ जाऊंगा। ठीक है? और
- 6:31:22यहां पर क्योंकि स्प्रिंग मैनेज कंपोनेंट
- 6:31:23है तो यहां पर लिख दूंगा ऑथ टोकन फ़्टर। और
- 6:31:26ऑथ टोकन फ़िल्टर का एक ऑब्जेक्ट बना लूंगा।
- 6:31:28और यहां पर ठीक है? यहां पर मैं इसे
- 6:31:31फ़िल्टर में ऐड कर दूंगा। तो मैं यहां पर
- 6:31:33कहूंगा HTTP डॉट ऐड फ़िल्टर बिफोर। देखिए
- 6:31:37http डॉट ऐड फ़िल्टर बिफोर। तो आपके पास
- 6:31:40अलग-अलग तरह के मेथड है कि आप ऐड फिल्टर
- 6:31:42बिफोर मतलब आपको एक फिल्टर का नाम देना है
- 6:31:45और उसके आगे आप जो भी फिल्टर लगा रहे हो
- 6:31:46आप लगा सकते हो। ऐड फ़िल्टर आफ्टर आप किसी
- 6:31:49एक पर्टिकुलर फ़िल्टर के बाद में भी फ़्टर
- 6:31:52को ऐड कर सकते हो और ऐड फ़िल्टर ऐड आप एक
- 6:31:54पर्टिकुलर लोकेशन पर भी फ़्टर चेन में फ़्टर
- 6:31:57को ऐड कर सकते हो। तो अलग-अलग तरह से आप
- 6:31:59कर सकते हो। मैं ऐड फ़िल्टर बिफोर का
- 6:32:00इस्तेमाल करूंगा। और मैं यहां पर ऐड ऑथ
- 6:32:03टोकन फ़िल्टर को ऐड कर दूंगा। और कौन से
- 6:32:05फ़्टर के आगे मुझे ऐड करना है? तो देखिए
- 6:32:06पहले तो फिल्टर लिखना है आपको और फिर कौन
- 6:32:08से फिल्टर के आगे लिख लगा रहे हो वो लिखना
- 6:32:11है। तो मैं ऐड करना चाहता हूं इसे यूजरनेम
- 6:32:13पासवर्ड ऑथेंटिकेशन टोकन फ़्टर के आगे। ठीक
- 6:32:18है? तो ये वो फिल्टर है जो यूजरनेम और
- 6:32:19पासवर्ड को वैलिडेट करता है। मैं उसके आगे
- 6:32:22ऐड करना चाहता हूं जेडब्ल्यूटी का फ़्टर।
- 6:32:24ठीक है? क्योंकि यूजरनेम पासवर्ड वैलिडेट
- 6:32:26होने से पहले मुझे टोकन वैलिडेट करना है
- 6:32:27और यूजर को ऑथेंटिकेट कर लेना है। ठीक है?
- 6:32:30इस फ़िल्टर पर हो करके आप पढ़ भी सकते हो इस
- 6:32:32फ़िल्टर के बारे में। लेकिन ये मुझे करना
- 6:32:33है और इसको एक बार रन कर लेते हैं। रन
- 6:32:36करके देखते हैं कि कोई भी रिक्वेस्ट के
- 6:32:37लिए ये ऑड टोकन फिल्टर में हमने जो लॉगिन
- 6:32:40लगाई हुई है वो प्रिंट हो रही है या नहीं।
- 6:32:42ठीक है? तो मैं क्या करूंगा? यहां पर आ
- 6:32:44जाता हूं। देखिए ये मैंने प्रिंट एलन लगा
- 6:32:47रखा है। इसको क्लियर कर देता हूं। अब कोई
- 6:32:50भी रिक्वेस्ट भेजेंगे हम। ये रिक्वेस्ट
- 6:32:51भेज देते हैं। ठीक है? तो यहां पर देखिए
- 6:32:54ऑथ टोकन फ़िल्टर कॉल्ड। ठीक है? फ़िल्टर तो
- 6:32:57कॉल हो रहा है। देखिए हर रिक्वेस्ट के लिए
- 6:32:58अगर मैं 10 बार कॉल करूं किसको? चार बार
- 6:33:00तो मैं कर चुका हूं कॉल। तो देखिए चार बार
- 6:33:02आ चुकी है। ठीक है? तो यह फ़िल्टर वर्क कर
- 6:33:05रहा है हर रिक्वेस्ट के लिए। आप कोई भी
- 6:33:06रिक्वेस्ट भेजो। ठीक है? यहां से कोई भी
- 6:33:08रिक्वेस्ट भेजो। दूसरी रिक्वेस्ट भेजोगे
- 6:33:10तो उसके लिए भी फ़िल्टर कॉल होगा।
- 6:33:12रिक्वेस्ट सक्सेसफुल हो या ना हो
- 6:33:14रिक्वेस्ट सर्वर पर हिट हो रही है तो वो अ
- 6:33:17कॉल होगा ही। ठीक है? इतना काम हमने कर
- 6:33:20लिया है। अब हमें क्या करना है? अब हमें
- 6:33:22इसको आगे डिफाइन करना है। ठीक है? इसको
- 6:33:24आगे डिफाइन करने के लिए हम क्या करेंगे?
- 6:33:26हम इसमें से जो डी हेडर है उसको
- 6:33:29एक्सट्रैक्ट करेंगे। देखिए JW टोकन को
- 6:33:32वैलिडेट करने के लिए ये फिल्टर बनाया गया
- 6:33:33है। ठीक है? सीधी सी बात। अब यहां पर JW
- 6:33:36टोकन किस फिल्टर किस फॉर्म में आएगा? किस
- 6:33:38फिल्टर में किस फॉर्म में आएगा? ऑथराइजेशन
- 6:33:40हेडर में बेर स्पेस JW टोकन ऐसे आएगा। तो
- 6:33:43सबसे पहले तो ऑथराइज़ेशन हेडर को हमें
- 6:33:45रिट्रीव करना है। उसके बाद में इसको
- 6:33:47रिट्रीव करके इसमें से ये टोकन निकाल के
- 6:33:50इसे वैलिडेट करना है। और अगर वैलिड है तो
- 6:33:52आगे जाने देना है। वैलिड नहीं है तो एरर
- 6:33:54थ्रो कर देना है सीधे-सीधे। ठीक है? सिंपल
- 6:33:56है। तो यहां पर हम लिखेंगे अ मैं सबसे
- 6:34:00पहले तो लिखूंगा अ ट्राई ब्लॉक। ठीक है?
- 6:34:02ट्राई कैच ब्लॉक लगा लेते हैं यहां पर।
- 6:34:05ठीक है? कैच और फिर यहां पर एक्सेप्शन।
- 6:34:08ठीक है? एक्सेप्शन ई और फिर यहां पर ई डॉट
- 6:34:10प्रिंट स्ट्रक्ट इस तरीके से। ठीक है?
- 6:34:13यहां पर आ जाते हैं। अब यहां पर मैं क्या
- 6:34:15करूंगा? अह यहां पर अह मुझे अह लिखना है।
- 6:34:20मैं एक मेथड बना लेता हूं। ठीक है? तो एक
- 6:34:22मेथड के जरिए मैं पास करूंगा JWE टोकन को।
- 6:34:24तो मैं करूंगा प्राइवेट स्ट्रिंग पार्स gw
- 6:34:28टी इस तरीके से अच्छा और यहां पर लिख
- 6:34:32दूंगा ये ठीक है तो ये मेथड बना रहा हूं
- 6:34:34मैं और ये मेथड का जो इनपुट रहेगा वो
- 6:34:37रहेगा http सर्लेट रिक्वेस्ट
- 6:34:41और फिर रिक्वेस्ट होगा यहां पर और फिर मैं
- 6:34:44कहूंगा यहां पर स्ट्रिंग ऊप्स स्ट्रिंग
- 6:34:47जेड इज़ इक्वल टू jw यूटिल्स
- 6:34:53अच्छा JWT यूटर्स का हमें ऑब्जेक्ट बनाना
- 6:34:57होगा यहां पर। ठीक है? तो मैं क्या करता
- 6:34:58हूं? यहां पर आ जाता हूं और यहां पर ऑटो
- 6:35:00वायर करूंगा और फिर JWT यूटर्स। ठीक है?
- 6:35:04इस तरीके से और यहां पर आ जाते हैं JWT
- 6:35:07यूटर्स डॉट गेट JWT फ्रॉम हेडर। ठीक है?
- 6:35:10और गेट JWT फ्रॉम हेडर में हम रिक्वेस्ट
- 6:35:12के ऑब्जेक्ट भी दे देंगे यहां पर। ठीक है?
- 6:35:15और फिर मुझे यहां पर रिटर्न JWT। ठीक है?
- 6:35:18तो मुझे यहां पर अ जो हेडर है हेडर में से
- 6:35:21जेडब्ल्यूटी एक्सट्रैक्ट करके मैं उसे
- 6:35:23रिटर्न कर रहा हूं यहां पर। ठीक है? अब ये
- 6:35:25मेथड क्या है? तो अगर ये अ मिनट ये जो
- 6:35:29मेथड है इसको आप देखोगे गेट जेडब्ल्यूटी
- 6:35:31फ्रॉम हेडर इसमें अभी हमने डिफाइन नहीं कर
- 6:35:33रखा है। ठीक है? यहां पर एक एम्प्टी
- 6:35:34स्ट्रिंग रिटर्न हो रही है। तो मैं क्या
- 6:35:36करूंगा? यहां पर http सर्लेट रिक्वेस्ट का
- 6:35:38ऑब्जेक्ट ले लूंगा रिक्वेस्ट और फिर यहां
- 6:35:41पर सबसे पहले तो मैं लूंगा बेरर
- 6:35:46टोकन
- 6:35:47और फिर इज़ इक्वल टू रिक्वेस्ट डॉट गेट
- 6:35:50हेडर। ठीक है? तो रिक्वेस्ट डॉट गेट हेडर
- 6:35:52में से मैं ऑथोराइजेशन
- 6:35:54हेडर को एक्सट्रैक्ट करूंगा ऐसे। तो मैं
- 6:35:57कह रहा हूं रिक्वेस्ट में से ये हेडर मुझे
- 6:35:59दे दीजिए। तो मुझे यहां पर बेर स्पेस टोकन
- 6:36:02आ जाएगी। ठीक है? बेर स्पेस टोकन। और फिर
- 6:36:05मैं यहां पर कहूंगा इफ बेरर टोकन इज नॉट
- 6:36:08इक्वल टू नल तो अगर यह टोकन नल नहीं है।
- 6:36:11ठीक है? यह टोकन नल नहीं होनी चाहिए। ठीक
- 6:36:13है? नल हो रही है तो प्रॉब्लम है। दिक्कत
- 6:36:15है यहां पर। अगर ये टोकन नल नहीं है और ये
- 6:36:19बेरर टोकन अगर स्टार्ट हो रही है बेर
- 6:36:23प्रीफिक्स से। ठीक है? बेर प्रफिक्स बेर
- 6:36:26और स्पेस अगर उससे स्टार्ट हो रही है तो
- 6:36:29आपको क्या करना है? रिटर्न करना है। और
- 6:36:31मैं यहां पर स्ट्रिंग का इस्तेमाल करूंगा।
- 6:36:34ठीक है? तो मैं स्ट्रिंग फंक्शनंस का
- 6:36:36इस्तेमाल करूंगा। बेरर टोकन डॉट
- 6:36:37सबस्ट्रिंग और यहां पर सेवन लिख दूंगा।
- 6:36:39इसका मतलब क्या है पता है? पहले के सात
- 6:36:42कैरेक्टर्स छोड़ के जो बाकी की स्ट्रिंग
- 6:36:44है उसको ये रिटर्न कर देगा। पहले के सात
- 6:36:46कररेक्टर्स क्यों? क्योंकि पहले के सात
- 6:36:48कररेक्टर्स में ये आ जाता है। देखिए बेरर
- 6:36:50छह कैरेक्टर्स हैं और स्पेस सातवां
- 6:36:52कररेक्टर्स है। तो मुझे ये नहीं चाहिए।
- 6:36:53मुझे ये निकालना है। इसको निकाल के जो
- 6:36:55बाकी की स्ट्रिंग है उसको मैं रिटर्न कर
- 6:36:57दूंगा। तो मुझे इस लाइन से मिल जाएंगी
- 6:37:00जेडब्ल्यूडी टोकन एक्सट्रैक्टेड। और फिर
- 6:37:02अगर यह नहीं होता है, इफ़ इफ़ कंडीशन में
- 6:37:04मैच नहीं करता है, तो मैं यहां से रिटर्न
- 6:37:06करूंगा नल वैल्यू। ठीक है? इतना काम हो
- 6:37:09गया हमारा। इस मेथड के जरिए हमने
- 6:37:11एक्सट्रैक्ट कर लिया JW टोकन। करेक्ट? JW
- 6:37:15टोकन हमें मिल गया यहां। और यहां से मैंने
- 6:37:17रिटर्न करके ले लिया यहां। तो मैं यहां पर
- 6:37:19क्या करूंगा? स्ट्रिंग JWT और यहां पर लिख
- 6:37:22दूंगा और पास JWT और यहां पर रिक्वेस्ट
- 6:37:25ऑब्जेक्ट को पास कर दूंगा। इतना काम हो
- 6:37:28गया। अब मेरे पास क्या आ गया? मेरे पास आ
- 6:37:30चुका है जीWT का टोकन। अब JWT टोकन को आगे
- 6:37:33ले जाना है मुझे। ठीक है? तो मैं क्या
- 6:37:35करूंगा? यहां पर मैं लिखूंगा इफ JWT नॉट
- 6:37:40इक्वल टू नल। ठीक है? JWT नल नहीं होना
- 6:37:42चाहिए। ठीक है? और JWT यूटिल्स को वैलिडेट
- 6:37:48ये JWT टोकन है। उसको वैलिडेट करना है
- 6:37:50हमें। ठीक है? तो टोकन को वैलिडेट करेंगे
- 6:37:52हम। तो ये वैलिडेशन का लॉजिक तो हमने अब
- 6:37:54लिखा हुआ नहीं है। लिखा हुआ है हमने
- 6:37:56वैलिडेशन का लॉजिक? जी नहीं। तो हमें ये
- 6:37:59जो वैलिडेशन का लॉजिक है इसको कंप्लीट
- 6:38:02करने की जरूरत है। तो मैं क्या करूंगा?
- 6:38:03देखिए हमारे पास टोकन एज अ पैरामीटर आएगा।
- 6:38:06ठीक है? और फिर उसको लेके हम वैलिडेट
- 6:38:08करेंगे। तो यहां पर मैं लिखूंगा स्ट्रिंग
- 6:38:10अ JWT टोकन।
- 6:38:13अब JW टोकन को लेकर हम वैलिडेट करेंगे। तो
- 6:38:16मैं क्या करूंगा? यहां पर अ मैं लिखूंगा
- 6:38:19ट्रैक ब्लॉक को लिख लेंगे। ठीक है? इस
- 6:38:21तरीके से और यहां पर लिखूंगा JWTS
- 6:38:24ये एक इनबिल्ट क्लास है। आप देख सकते हो।
- 6:38:26ठीक है? है JWTS और ये JSN वेब टोकन से आ
- 6:38:28रही है क्लास जो लाइब्रेरी है JSN वेब
- 6:38:30टोकन की उससे और मैं यहां पर पार्सर का
- 6:38:32इस्तेमाल करूंगा पार्स करूंगा इसे और फिर
- 6:38:34वेरीफाई विथ और यहां पर अ मैं लिख दूंगा अ
- 6:38:39की की ले लूंगा यहां पर ठीक है और फिर
- 6:38:43यहां पर ये पूरा का पूरा जो सिंटेक्स है
- 6:38:44वो आपको लिखना है बिल्ड करूंगा ठीक है
- 6:38:46बिल्ड डॉट बार्स साइन क्लेम्स और फिर यहां
- 6:38:50पर ऑथ टोकन सॉरी जेड टोकन इस तरीके से ठीक
- 6:38:55ठीक है? और यहां पर मुझे एरर आ रही है तो
- 6:38:57मुझे शायद इसको कास्ट करना पड़े। तो अच्छा
- 6:39:00यहां पर सीक्रेट की
- 6:39:03यहां पर इसको अ कास्ट कर देंगे। ठीक है?
- 6:39:06कास्ट। ठीक है? तो इतना चल गया ये।
- 6:39:11और यहां पर कैच ब्लॉक ऐड करने की जरूरत
- 6:39:13है। तो यहां पर मैं लिख दूंगा कैच
- 6:39:15एक्सेप्शन ई और यहां पर हम प्रिंट कर
- 6:39:18देंगे ई डॉट प्रिंटst। ठीक है? इतना हो
- 6:39:21गया। वैलिडेशन का भी लॉजिक हमने लिख लिया
- 6:39:23है। सिंपल सा लॉजिक है। ठीक है? इतना कुछ
- 6:39:25डिफिकल्ट है नहीं। अच्छा यहां पर एरर
- 6:39:27क्यों आ रही है अब? अच्छा यहां पर ये हाफ
- 6:39:29हाफ पिकक्ड है। ठीक है? हमने ये जो मेथड
- 6:39:32है इसे कंप्लीट नहीं किया है। तो यहां पर
- 6:39:34ये कंप्लीट करने की जरूरत है। तो यहां पर
- 6:39:37सबसे पहले तो हमने देखिए पहले चेक कर लिया
- 6:39:39कि वैलिड है या नहीं टोकन। ठीक है? वैलिड
- 6:39:41होने के बाद हमें क्या करना है? हम यहां
- 6:39:43पर आएंगे और फिर यहां पर हम यूजरनेम
- 6:39:46लेंगे। ठीक है? यूजरनेम तो मैं यहां पर
- 6:39:48इस्तेमाल करूंगा JWT यूutls डॉट गेट।
- 6:39:52अच्छा गेट यूजरनेम फ्रॉम टोकन चाहिए हमें
- 6:39:57तो गेट यूजरनेम
- 6:40:00फ्रॉम टोकन करके एक मेथड हमें बनाना होगा।
- 6:40:03ठीक है? तो ये मेथड बनेगा और इसमें हम पास
- 6:40:06करेंगे JW। तो देखिए हमने Jडw टोकन इशू
- 6:40:09करते वक्त उसमें यूजरनेम को एनकोड किया था
- 6:40:11एज अ सब्जेक्ट। तो उसको रिट्रीव करना है
- 6:40:13हमें। क्योंकि ये जो टोकन आई है अब
- 6:40:15रिक्वेस्ट में ये कौन से यूजर ने भेजे?
- 6:40:17देखिए यू टोकन तो वैलिड है। हमने वैलिड
- 6:40:19वैलिडेट कर लिया। ठीक है? इसमें से अब
- 6:40:22यूजरनेम को रिट्रीव करना है। यूजरनेम को
- 6:40:24रिट्रीव इसलिए करना है ताकि हम उस यूजर की
- 6:40:26जो डिटेल्स है उसको लोड कर पाएं। ठीक है?
- 6:40:29तो यहां पर यूजरनेम एक बार मुझे आ जाती है
- 6:40:30तो मैं क्या करूंगा? यूजर डिटेल्स सर्विस
- 6:40:33को ले लूंगा। ठीक है? यूजर डिटेल्स सर्विस
- 6:40:35की मुझे एक ऑब्जेक्ट बनानी पड़ेगी। तो
- 6:40:38यहां पर आ जाता हूं और यहां पर ऑटो वाय।
- 6:40:41ठीक है? यूजर डिटेल सर्विस
- 6:40:44है। ये सबको प्राइवेट मार्क कर देता हूं।
- 6:40:46एक्चुअली बेटर रहेगा।
- 6:40:50प्राइवेट
- 6:40:53फिर यूजर डिटेल्स सर्विस ठीक है इस तरीके
- 6:40:56से मैंने लिख दिया है और यहां पर आ जाता
- 6:40:59हूं
- 6:41:00यूजर डिटेल्स सर्विस डॉट लोड यूजर बाय
- 6:41:05यूजरनेम ठीक है तो हमें अब यूजरनेम से
- 6:41:07यूजर को लोड करना है तो स्प्रिंग
- 6:41:08सिक्योरिटी की मदद से यूजर लोड हो जाएगा
- 6:41:11और हमें यूजर किस फॉर्म में मिलेगा यहां
- 6:41:13पर यूजर हमें मिलेगा यूजर डिटेल्स के
- 6:41:16फॉर्म में यूजर डिटेल्स भी इनबिल्ट क्लास
- 6:41:18है ठीक है ऐसे यूजर डिटेल्स
- 6:41:21और यहां पर यूजर डिटेल्स लिखना है इज़
- 6:41:24इक्वल टू। ठीक है? इतना हो गया। अब यहां
- 6:41:26पर आ जाते हैं। अब यूजर डिटेल्स हमें
- 6:41:28ऑब्जेक्ट मिल चुका है। अब मैं क्या
- 6:41:30करूंगा? यूजरनेम पासवर्ड ऑथेंटिकेशन का
- 6:41:32ऑब्जेक्ट बनाऊंगा जो कि एक ऑथेंटिकेशन का
- 6:41:34ऑब्जेक्ट है। ठीक है? और इसको सिक्योरिटी
- 6:41:37कंटक्स्ट में हमें स्टोर करना है। देखिए
- 6:41:39फ़िल्टर हमें फ़िल्टर हमने क्यों लिखा है?
- 6:41:41यूज़ टोकन को वैलिडेट करने के लिए। टोकन
- 6:41:44वैलिडेट हो चुका है। अब हमें ऑथेंटिकेशन
- 6:41:46सेट करना है। ऑथेंटिकेशन कहां सेट होगा?
- 6:41:48कहां सेट होगा? ऑथेंटिकेशन सिक्योरिटी
- 6:41:50कंटेक्स्ट में। तो यहां पर हम हमने जो
- 6:41:52कस्टम फिल्टर लिखा है उसके जरिए हम
- 6:41:55ऑथेंटिकेट कर रहे हैं यूजर को और फिर उसकी
- 6:41:58जो ऑथेंटिकेशन इनफेशन है उसको सिक्योरिटी
- 6:42:00कॉन्टेक्स्ट में स्टोर करना है।
- 6:42:01सिक्योरिटी कंटक्स्ट में स्टोर करने के
- 6:42:03लिए हमें ऑथेंटिकेशन की एक ऑब्जेक्ट बनानी
- 6:42:05पड़ेगी और ऑथेंटिकेशन का एक सब क्लास है
- 6:42:09वो है यूजरनेम पासवर्ड ऑथेंटिकेशन टोकन और
- 6:42:14यह है ऑथेंटिकेशन
- 6:42:17की ऑब्जेक्ट ऑथेंटिकेशन ऐसे मैं बना लूंगा
- 6:42:19इसको। ठीक है? इज़ इक्वल टू न्यू यूजरनेम
- 6:42:22पासवर्ड ऑथेंटिकेशन टोकन ऐसे और फिर यहां
- 6:42:26पर मैं लिख दूंगा यूजर डिटेल्स ठीक है
- 6:42:30यूजर डिटेल्स कॉमा और फिर यहां पर नल ये
- 6:42:34जो दूसरा चीज़ है दूसरा पैरामीटर
- 6:42:36क्रेडेंशियल्स को मैं नल लिख दूंगा और फिर
- 6:42:38अ यूजर डिटेल्स डॉट गेट अथॉरिटीज़ ऐसे मैं
- 6:42:42लिख दूंगा। ठीक है? इसमें अभी कुछ रूल्स
- 6:42:44तो ऐडेड नहीं है लेकिन मैं अथॉरिटीज़ को भी
- 6:42:45पास कर रहा हूं यहां पर। इतना हो चुका है
- 6:42:48और फिर मैं कहूंगा ऑथेंटिकेशन
- 6:42:50डॉट सेट डिटेल्स और यहां पर जो ऑब्जेक्ट
- 6:42:53ऑब्जेक्ट है उसको तो यहां पर ये सिंटेक्स
- 6:42:55लिखना पड़ेगा डॉट वेब ऑथेंटिकेशन डिटेल्स
- 6:42:58सोर्स
- 6:43:01ठीक है और यहां पर अ ये आ जाएगा डॉट बिल्ड
- 6:43:07डिटेल्स और फिर यहां पर रिक्वेस्ट ऐड करना
- 6:43:09है। ठीक है? तो ये सारी डिटेल्स मैंने
- 6:43:11ऑथेंटिकेशन ऑब्जेक्ट में स्टोर कर दी और
- 6:43:12फिर मुझे सिक्योरिटी कंटेनक्स्ट होल्डर को
- 6:43:14लेना है इस तरीके से। सिक्योरिटी कंटक्स्ट
- 6:43:17होल्डर
- 6:43:19डॉट गेट कॉन्टेक्स्ट और फिर डॉट सेट
- 6:43:22ऑथेंटिकेशन और फिर ऑथेंटिकेशन के ऑब्जेक्ट
- 6:43:24को पास कर देना है। बस इतना हो गया तो ये
- 6:43:26ऑथेंटिकेट हो जाएगी रिक्वेस्ट। ठीक है? तो
- 6:43:29देखिए एक बार और एक्सप्लेन कर देता हूं।
- 6:43:31ये हुआ क्या है इस फाइल में। ठीक है? सबसे
- 6:43:33पहले तो हमने डिसाइड किया हमें ऑथेंटिकेशन
- 6:43:37फ़िल्टर बनाना है। ठीक है? या तो फिर मैं
- 6:43:39एक काम करता हूं। मैं इसको रन करके
- 6:43:40वैलिडेट करके फिर इसके बारे में फिर से
- 6:43:42डिस्कस करते हैं। लेकिन मैं दो लाइन आपको
- 6:43:44एक एक्सप्लेन करना चाहूंगा बढ़िया तरीके
- 6:43:45से। देखिए ये सबसे पहले तो ये लाइन तो
- 6:43:48देखिए हमने इतना क्यों किया है? ये हमने
- 6:43:50इसके लिए किया है यहां पर। तो चलो हम यूजर
- 6:43:52की डिटेल्स लोड कर रहे हैं। और फिर यहां
- 6:43:54पर ऑथेंटिकेशन का एक ऑब्जेक्ट बना रहे
- 6:43:56हैं। ये ऑथेंटिकेशन की सब क्लास है। ठीक
- 6:43:59है? ऑथेंटिकेशन का ऑब्जेक्ट बन रहा है एक
- 6:44:00हिसाब से यहां पर। ठीक है? और देखिए इसको
- 6:44:03ओवर करेंगे ना आप तो यहां पर देखेंगे। द
- 6:44:05प्रिंसिपल एंड कडेंशियल शुड बी सेट। ये
- 6:44:07सारी डिटेल्स आपको मिल जाएगी। इज़ अ
- 6:44:09इंप्लीमेंटेशन दैट इज़ डिज़ फॉर सिंपल
- 6:44:12प्रेजेंटेशन ऑफ यूजरनेम पासवर्ड। ठीक है?
- 6:44:14तो ये ऑथेंटिकेशन का ऑब्जेक्ट है। और फिर
- 6:44:16इसमें हमने डिटेल सेट कर दी। डिटेल्स क्या
- 6:44:18सेट की? तो हमने ये रिक्वेस्ट से जो भी
- 6:44:20डिटेल्स आ रही है देखिए रिक्वेस्ट से जो
- 6:44:22भी डिटेल्स आ रही है यानी कि रिक्वेस्ट की
- 6:44:24डिटेल्स आईपी वगैरह सेशन आईडी वो सारी
- 6:44:26डिटेल्स जो भी हमें आ रही है रिक्वेस्ट
- 6:44:27में वो हमने ऑथेंटिकेशन ऑब्जेक्ट में सेट
- 6:44:29करके उसे सिक्योरिटी कॉन्टेक्स्ट में
- 6:44:32स्टोर कर दी। ठीक है? बस इतना ही किया है
- 6:44:34डीडब्ल्यूटी वैलिडेट करने के बाद। और अब
- 6:44:36यहां पर ये जो मेथड है इसको हमें क्रिएट
- 6:44:38करना होगा। गेट यूजरनेम अ और पासवर्ड
- 6:44:42फ्रॉम दी टोकन। तो इस मेथड में हम क्या
- 6:44:46करने वाले हैं? हम लिखेंगे रिटर्न और jws
- 6:44:50पार्सर। अच्छा सॉरी jws डॉट पार्सर डॉट अ
- 6:44:55वेरीफाई वि
- 6:44:571 मिनट गेट यूजरनेम फ्रॉम jw टोकन वेरीफाई
- 6:45:01वि और यहां पर की को कॉल कर दूंगा मैं और
- 6:45:03फिर यहां पर डॉट बिल्ड डॉट पार्स साइंड
- 6:45:08बुक्स पार्स साइन क्लेम्स और फिर यहां पर
- 6:45:11एक हिसाब से जो टोकन है उसको हम पास
- 6:45:14करेंगे। ठीक है? और फिर यहां पर गेट पे
- 6:45:17लोड और फिर गेट सब्जेक्ट हु्स गेट
- 6:45:21सब्जेक्ट। ठीक है? तो देखिए मैं यहां पर
- 6:45:24आपको बता देता हूं हुआ क्या है। कास्ट
- 6:45:26आर्गुमेंट टू सीक्रेट की। देखिए हमने यहां
- 6:45:28पर पहले JWT को पास किया है। हम हमें क्या
- 6:45:31करना है? यूजरनेम निकालना है JW टोकन से।
- 6:45:33तो पहले तो इसको पास किया है की से
- 6:45:35वेरीफ़ाई किया है की से। फिर उसको यह यह जो
- 6:45:38सिंटेक्स है वेरफ़िकेशन का यह पूरा हमने
- 6:45:40किया है। ठीक है? फिर इसमें से पेलोड को
- 6:45:42रिट्रीव किया और सब्जेक्ट को रिट्रीव किया
- 6:45:44है। ठीक है? पेलोड में सब्जेक्ट ऐडेड है।
- 6:45:47तो यहां पर अगर आप देखते हो की क्रिएट
- 6:45:49करते वक्त हमने पेलोड में सब्जेक्ट ऐड
- 6:45:51किया है। देखिए आप डिकोड भी करोगे इसे तो
- 6:45:54यह पेलोड है और उसमें सब्जेक्ट है और
- 6:45:56उसमें यूजरनेम है। तो हमें यूजरनेम चाहिए।
- 6:45:59करेक्ट? तो यहां पर देखिए सब्जेक्ट में
- 6:46:02आपने यूजरनेम डाला हुआ है। ठीक है? तो
- 6:46:04पेलोड में सब्जेक्ट में स्टोर है। तो हमने
- 6:46:06पेलोड को गेट किया और फिर सब्जेक्ट को गेट
- 6:46:08किया। और ये इतना जो सिंटेक्स है ना ये
- 6:46:10वाला जो हमने लिखा है ना ये वेरिफिकेशन के
- 6:46:12लिए। तो देखिए वो यहां पर भी लिखा हुआ है
- 6:46:14वैलिडेट करने के लिए। तो वैलिडेट करके ही
- 6:46:16आप पेलोड और सब्जेक्ट रिट्रीव कर सकते हो।
- 6:46:17तो इतना हमने किया है। अब सारे एरर्स जा
- 6:46:19चुके हैं। अब एक बार क्या करते हैं? इसको
- 6:46:21रन कर लेते हैं और देखते हैं कैसे रन होता
- 6:46:23है ये। ठीक है? तो देखिए जेडब्ल्यूटी
- 6:46:25ऑथेंटिकेशन अब चलना तो चाहिए। अच्छा यहां
- 6:46:27पर कुछ दिक्कत हो गई है। डिपेंडेंसीज ऑफ
- 6:46:30सम बीन इन दी अच्छा सर्कुलर डिपेंडेंसी
- 6:46:32कुछ हो चुकी है यहां पर ऐसा बोल रहा है यह
- 6:46:35तो ऑर्थ टोकन फिल्टर में यूजर डिटेल
- 6:46:38सर्विस यूज़ हो रही है और फिर यहां पर ठीक
- 6:46:40है तो ये बोल रहा है यहां पर यूजर डिटेल
- 6:46:42सर्विस का इस्तेमाल कर रहे हो तो सर्कुलर
- 6:46:43डिपेंडेंसी थोड़ी सी हो चुकी है तो यहां
- 6:46:46पर आ जाता है टोकन फ़िल्टर में और यहां पर
- 6:46:50अगर आप देखोगे
- 6:46:52एक हिसाब से अच्छा ये यूजर डिटेल्स यहां
- 6:46:55पर आपने यूज़ कर रखा है। ठीक है? तो यहां
- 6:46:58पर मैं क्या करता हूं? इसको मैं लिस्ट ऑफ
- 6:47:00करके एम्प्टी रखता हूं। ठीक है? और यूजर
- 6:47:03डिटेल्स को यहां से हटा देते हैं कुछ समय
- 6:47:05के लिए। ठीक है? यूजर डिटेल्स को हटा देते
- 6:47:07हैं यहां से भी। और यहां से भी ये यूजर
- 6:47:10डिटेल्स सर्विस भी हट सकती है। ठीक है? अब
- 6:47:12रन करके देखते हैं। अच्छा यूजर डिटेल्स
- 6:47:14सर्विस को हटाया हमने। तो यहां पर एरर आ
- 6:47:18रही है। तो इसके बजाय हम यूजरनेम भी पास
- 6:47:20कर सकते हैं। ऐसे। ठीक है? तो इतना चेंज
- 6:47:23मैंने कर दिया। देखिए मैंने क्या किया?
- 6:47:25यहां पर सर्कुलर डिपेंडेंसी आई हुई थी।
- 6:47:27सर्कुलर डिपेंडेंसी बोल रही है कि यूजर
- 6:47:29डिटेल सर्विस
- 6:47:31यहां पर भी है और यह सर्कुलर डिपेंडेंसी
- 6:47:32है। सिक्योरिटी कॉन्फ़िग में भी आप ऑट टोकन
- 6:47:35फ़िल्टर में तो ये सर्कुलर डिपेंडेंसी हो
- 6:47:37गई है। ठीक है? तो एक हिसाब से ये
- 6:47:39डायग्राम की मदद से क्या बताना चाह रहा
- 6:47:41है? ऑड टोकन फ़्टर में आप यूजर डिटेल
- 6:47:43सर्विस यूज़ कर रहे हो। और फिर यूजर डिटेल
- 6:47:46सर्विस यूज़ हो रही है सिक्योरिटी कॉन्फ़िग
- 6:47:49में। करेक्ट? और फिर सिक्योरिटी कॉन्फिग
- 6:47:54में भी आप इंजेक्ट कर रहे हो ऑथ टोकन
- 6:47:56फिल्टर तो यह एक सबसे सर्कुलर बन चुका है
- 6:47:59इसके लिए ये अलाउड नहीं है लेटेस्ट वर्जन
- 6:48:01ऑफ स्प्रिंग बूट में ठीक है तो ये मैंने
- 6:48:03हटा दिया यूजर डिटेल सर्विस ही यहां से
- 6:48:04हटा दिया ऑथ टोकन फ़िल्टर से ठीक है ये हटा
- 6:48:07दिया और यहां पर यूजरनेम पास कर दिया बस
- 6:48:09इतना चेंज किया और यहां से इंजेक्शन भी
- 6:48:11उसका हटा दिया और ये अनयूज्ड डिपेंडेंसी
- 6:48:13को यहां से निकालेंगे नहीं चलो वो तो चल
- 6:48:15जाएगा अनयूज़ इंपोर्ट स्टेटमेंट्स इसको रन
- 6:48:17करके देखते हैं क्या होता है ठीक है रन तो
- 6:48:20हो जाएगा ये अब आई थिंक या रन हो गया।
- 6:48:23यहां पर आ जाते हैं। अब यहां पर यह टोकन
- 6:48:26पास करके देखते हैं। देखिए यहां पर
- 6:48:28ऑथराइजेशन में मैं बेसिक ऑथ को इनेबल कर
- 6:48:30देता हूं। सॉरी डिसेबल कर देता हूं। नो
- 6:48:31ऑथ। ठीक है? और सबसे पहले तो मैं इस टोकन
- 6:48:35को पास नहीं करता। इसको अनचेक कर दिया
- 6:48:37मैंने। ठीक है? तो बिना टोकन के रिक्वेस्ट
- 6:48:38भेजते हैं। अच्छा ये चल तो रही है। तो
- 6:48:41कैसे चल रही है? यहां पर ऑलरेडी सेशन सेट
- 6:48:42है। देखिए जे सेशन आईडी ऑलरेडी सेट है। तो
- 6:48:45इसको मैं क्लियर कर देता हूं यहां से। ठीक
- 6:48:47है? ऐसे सेंड करता हूं। अच्छा फिर भी चल
- 6:48:50रही है। यह क्या दिक्कत हो रही है?
- 6:48:54ठीक है। यहां पर एक प्रॉब्लम हो रही है।
- 6:48:57ठीक है। तो मैं आपको बता देता हूं
- 6:48:59प्रॉब्लम क्या है। यहां पर अगर आप इसको रन
- 6:49:00करते हो तो 200 ओके आ रहा है। और यहां पर
- 6:49:03टोकन ऑथेंटिकेशन टोकन का फ़्टर जो है वो तो
- 6:49:05कॉल हो रहा है। ठीक है? लेकिन यहां पर
- 6:49:07प्रॉब्लम यह है। देखिए यहां पर हमने ऑथ
- 6:49:11टोकन फ़्टर को फ़्टर चेन में ऐड किया। कैसे
- 6:49:14ऐड किया? देखिए इशू समझना जरूरी है। देखिए
- 6:49:17मैं चाहूं तो यहां पर देखिए फिल्टर कॉल हो
- 6:49:20रहा है। यहां से आप भेज रहे हो बिना
- 6:49:22ऑथराइजेशन हेडर के। ठीक है? फिल्टर कॉल हो
- 6:49:25रहा है। लेकिन फिर भी 200 ओके आ रहा है।
- 6:49:27इसका एक रीज़न है क्योंकि फ़िल्टर चेन ब्रेक
- 6:49:29हो रहा है। देखिए मैंने आपको यहां पर कहा
- 6:49:31था ये फ़्टर चेन में हम हमारा कस्टम फ़िल्टर
- 6:49:34जो है ये वाला जो कस्टम फ़िल्टर ये हमारा
- 6:49:36फ़िल्टर है। ये हमने ऐड किया हुआ है फ़िल्टर
- 6:49:38चेन में। इसका काम ये है JW टोकन को
- 6:49:41वैलिडेट करना। ठीक है? अब हो क्या रहा है?
- 6:49:43फ़िल्टर चेन में हमने इसको ऐड किया है। बीच
- 6:49:46में कहीं यूजरनेम, पासवर्ड ऑथेंटिकेशन
- 6:49:49टोकन फ़िल्टर के आगे ऐड किया है। अगर आपको
- 6:49:51याद हो तो मैं आपको कोड भी दिखा देता हूं
- 6:49:53कि कौन सा कोड हमने लिखा था। आपको थोड़ी
- 6:49:55मेमोरी में आ जाएगा वो। देखिए सिक्योरिटी
- 6:49:58फ़्टर में हमने यहां पर ऐड किया हुआ है।
- 6:50:01यूजरनेम, पासवर्ड, ऑथेंटिकेशन फ़िल्टर इसके
- 6:50:03आगे ऐड किया हुआ है। ठीक है? ये वाला
- 6:50:05फ़िल्टर था। मैंने शायद फ़िल्टर का नाम गलत
- 6:50:06बोल दिया, लेकिन यूजरनेम, पासवर्ड,
- 6:50:08ऑथेंटिकेशन फ़िल्टर के आगे ऐड किया है
- 6:50:09इसको। अब हुआ क्या है? यहां तक फिल्टर
- 6:50:12एग्जीक्यूट हो रहा है। ये वाला भी
- 6:50:14एग्जीक्यूट हो रहा है जो हमने किया है।
- 6:50:15लेकिन इसके आगे की जो फिल्टर चेन है वो
- 6:50:17ब्रेक हो चुकी है। ठीक है? वो ब्रेक हो
- 6:50:19चुकी है। क्यों ब्रेक हो चुकी है? क्योंकि
- 6:50:22हमने एक लाइन ऐड नहीं की है। ये मेरे से
- 6:50:24मिस हो गया है। ठीक है? तो यहां पर अगर आप
- 6:50:26आते हो तो यहां पर अ यहां पर नहीं हमें ऐड
- 6:50:31करना है ऑथ टोकन फिल्टर में। तो यहां पर
- 6:50:33फ़्टर हमने बनाया लेकिन एंड में यह डल्टर
- 6:50:36इंटरनल के एंड में हमें एक लाइन ऐड करनी
- 6:50:38है। और हमें कहना है फिल्टर चेन। फिल्टर
- 6:50:41चेन डॉट डू फिल्टर और फिर रिक्वेस्ट और
- 6:50:44रिस्पांस को पास कर देना है।
- 6:50:48ठीक है? तो देखिए मैं क्या चाहता हूं इस
- 6:50:52फ़्टर के बाद ये फ़्टर जो हमने कस्टम फ़िल्टर
- 6:50:54बीच में ऐड किया था। इस फ़िल्टर के बाद
- 6:50:56जैसी चेन बनी हुई थी फ़्टर्स की वो
- 6:50:58कंटिन्यू रहे। ठीक है? वो मैंने वो ये
- 6:51:01लाइन से मैं बोल रहा हूं। ठीक है? अगर यह
- 6:51:04लाइन मैं मिस कर देता हूं, तो इसका मतलब
- 6:51:05वो फ़्टर चेन कंटिन्यू नहीं रहती और फ़िल्टर
- 6:51:07चेन ब्रेक हो जाती है। तो, यह लाइन से हम
- 6:51:08क्या कह रहे हैं? फ़िल्टर चेन में फ़िल्टर
- 6:51:10को कंटिन्यू रखिए और रिक्वेस्ट और
- 6:51:12रिस्पांस की जो ऑब्जेक्ट थी उसको मैंने
- 6:51:14आगे पास कर दिया। तो, आगे के फ़्टर्स में
- 6:51:15भी यह मिलता जाएगा। लेकिन, क्योंकि मैंने
- 6:51:17ये लाइन मिस कर दी थी, तो वो फ़िल्टर चेन
- 6:51:19वहीं पर ब्रेक हो रहा था। हमारी फ़िल्टर तो
- 6:51:22एग्जीक्यूट हो रही थी, तो हमें लग रहा था
- 6:51:23अच्छा चल रहा है। लेकिन, बाद में की जो
- 6:51:25फ़िल्टर्स है, वो ब्रेक हो रही थी और वो
- 6:51:26एग्जीक्यूट नहीं हो रही थी। तो, यह दिक्कत
- 6:51:28हो रही थी। तो, मैंने यह ऐड कर दिया है।
- 6:51:30अब इसको रन करते हैं। ठीक है? शायद एक दो
- 6:51:32एरर और आए जो कि मुझे लगता है मैंने मिस
- 6:51:34किए हैं। लेकिन, देखते हैं एक-एक करके
- 6:51:37डिबग करेंगे। ठीक है? देखोगिंग में मजा
- 6:51:40आएगा। तो देखिए, फिर से मैं इसको रन करता
- 6:51:41हूं। और अब आ रही है 403 फॉरबिडन। 403
- 6:51:45फॉरबिडन आ रही है। ठीक है? यहां पर लेकिन
- 6:51:48अभी फिलहाल कुछ लॉग्स तो नहीं दिख रहे
- 6:51:50हैं। कुछ लॉ्स नहीं दिख रहे हैं। ठीक है?
- 6:51:52और 403 फॉरबिडन इसीलिए आ रही है क्योंकि
- 6:51:55हमने यहां पर ये टोकन को पास नहीं किया
- 6:51:59है। ठीक है? तो मैं क्या करूंगा? टोकन को
- 6:52:00पास कर देता हूं। ठीक है? अब टोकन को पास
- 6:52:03करने के बाद भी मुझे 403 फॉरबिडन आएगी।
- 6:52:05उसके मैं रीज़न आपको बता देता हूं पहले ही।
- 6:52:07ठीक है? ठीक है? नहीं तो आपको लगेगा मैं
- 6:52:08प्रिपयर्ड नहीं हूं। ठीक है? एरर आएगी।
- 6:52:10एरर ये आएगी कि ये जो एंड पॉइंट है इसको
- 6:52:13एक्सेस करने के लिए आप ऑथराइज़्ड नहीं हो।
- 6:52:15ये क्यों आएगी? क्योंकि देखिए यहां पर
- 6:52:17टोकन में हमने क्या किया है? याद रखिए आप
- 6:52:19सर्कुलर डिपेंडेंसी का एरर आ रहा था यहां
- 6:52:21पर। ठीक है? तो हमने देखिए यहां पर
- 6:52:23अथॉरिटीज़ पास कर रखी थी हमने। ये देखिए
- 6:52:25इसको होवर करेंगे। तो यहां पर लास्ट जो है
- 6:52:27अथॉरिटी है। करेक्ट? अथॉरिटी का मतलब
- 6:52:29रोल्स। तो ये हमने एम्प्टी रोल्स दे रखे
- 6:52:31हैं और यूजर डिटेल्स की जो कोड है जहां से
- 6:52:33हम यूजर डिटेल्स को लोड कर रहे थे उसको
- 6:52:35हमने डिसेबल कर रखा है। ठीक है? ये क्यों
- 6:52:38कर रखा है? क्योंकि हमें वो सर्कुलर
- 6:52:39डिपेंडेंसी की जो इशू आ रही थी इसके लिए।
- 6:52:42ठीक है? तो इसका सशन भी होगा। इसका सशन ये
- 6:52:44है कि हम Jड डब्ल्यूटी में ही JडW टोकन
- 6:52:46है। क्योंकि यहां पर सर्कुलर डिपेंडेंसी
- 6:52:48की इशू आ रही है। तो JडW टोकन में ही हम
- 6:52:50रोल्स को एंबेड कर देंगे। ठीक है? तो मैं
- 6:52:52क्या करता हूं? यहां पर आ जाता हूं। और
- 6:52:55यहां पर अब इसको तो मैंने कर दिया है।
- 6:52:58इसको फिक्स कर दिया है। ठीक है? टोकन को
- 6:53:01पास कर दिया है मैंने। और इसको एक बार और
- 6:53:03रन कर देता हूं। मुझे याद नहीं है मैंने
- 6:53:04इसको रन किया कि नहीं। तो इसको एक और बार
- 6:53:06रन कर देता हूं। और टोकन को अब पास करके
- 6:53:08मैं इसको
- 6:53:10इसका आउटपुट देंगे। टोकन को पास किया है।
- 6:53:12इसको रन कर दिया। तो देखिए फिर से 403
- 6:53:14आएगा। अब इस बार 403 इसीलिए आ रहा है।
- 6:53:16देखिए टोकन तो आ गया है। मैंने ना एक और
- 6:53:18वीडियो को पॉज करके ना एक लॉग लगाई थी कि
- 6:53:20यहां पर टोकन आ रहा है कि नहीं इसके अंदर।
- 6:53:23यह जो इफ स्टेटमेंट है इसके अंदर टोकन आ
- 6:53:25रहा है कि नहीं तो टोकन आ रहा है यहां पर
- 6:53:27देखिए टोकन ऐडेड और यहां पर भी एक सिस्टम
- 6:53:30डॉट डॉट प्रिंट एलन है तो पहले तो टोकन ही
- 6:53:32नहीं भेज रहे थे तो उसके अंदर जा ही नहीं
- 6:53:34रहा था इस स्टेटमेंट के अंदर करेक्ट अब
- 6:53:36टोकन आ रहा है लेकिन ये फेल हो गया ये फेल
- 6:53:39क्यों हो रहा है क्योंकि इसको ऑथराइजेशन
- 6:53:41नहीं है यहां पर एक्सेस करने का ठीक है
- 6:53:44ऑथराइजेशन नहीं है तो हम क्या करेंगे हम अ
- 6:53:47जो हमारी जनरेट टोकन की जो कोड है उसमें
- 6:53:50हम रोल्स को भी ऐड कर देंगे ठीक है? या तो
- 6:53:53फिर आप ऐसी कोई एंड पॉइंट को एक्सेस कीजिए
- 6:53:55जहां जो रोल इंडिपेंडेंट है। तो देखिए, यह
- 6:53:57वाली जो एंड पॉइंट है हेलो वाली, यहां पर
- 6:53:59कोई रोल की ज़रूरत है क्या? हेलो कंट्रोलर
- 6:54:02हेलो कंट्रोलर। अच्छा, यहां पर रोल की
- 6:54:04जरूरत है। तो, इसको मैं टेंपरेरीली डिसेबल
- 6:54:06कर देता हूं। और इसको थोड़ा रन करते हैं
- 6:54:09हम। ठीक है? तो, यह ऑथेंटिकेटेड है,
- 6:54:11लेकिन, इसको एक्सेस करने के लिए कोई रोल
- 6:54:13की ज़रूरत नहीं है। तो, इसको मैंने ऐसे कर
- 6:54:14दिया है। ठीक है? और यहां पर अगर मैं इसको
- 6:54:17एक्सेस करता हूं। अच्छा, सॉरी। तो ये
- 6:54:20बेसिक टोकन को मैं नो ऑथ मार्क करूंगा और
- 6:54:22यहां पर हेडर्स में हम ऑथराइजेशन
- 6:54:25ऐड करेंगे। ओके सॉरी ऑथराइजेशन यहां पर
- 6:54:28ऑथराइजेशन हेडर और यहां पर ये बेरर टोकन
- 6:54:30को पास कर देंगे इस रिक्वेस्ट में। ठीक
- 6:54:32है? ऐसे तो ऐसे रन करेंगे तो देखिए ये ये
- 6:54:35चल गई।
- 6:54:37लेकिन जो रोल वाली है वो नहीं चल रही है।
- 6:54:39ठीक है?
- 6:54:44तो JW टोकन तो चल रहा है हमारे एंड पे।
- 6:54:46ठीक है? JW टोकन अगर आप पास करते हो तो ये
- 6:54:48चल रहा है। अगर इसको डिसेबल कर दूंगा और
- 6:54:49सेंड करूंगा तो 403 आ जाएगा। ठीक है? और
- 6:54:52अगर इसको इनेबल करूंगा तो ये तो टोकन
- 6:54:54बेस्ड ऑथेंटिकेशन चल रहा है। लेकिन रोल
- 6:54:56बेस्ड एक्सेस कंट्रोल जो है वो नहीं चल
- 6:54:59रहा है। वो क्यों नहीं चल रहा है? क्योंकि
- 6:55:01टोकन में रोल्स प्रेजेंट नहीं है। तो
- 6:55:03देखिए ये टोकन को अगर मैं यहां पर अ पेस्ट
- 6:55:06करता हूं यहां पर। तो इसमें रोल्स है नहीं
- 6:55:08है। इसमें यूजर है लेकिन रोल नहीं है। तो
- 6:55:10हमें क्या करना है? देखिए अगर एक तरीका है
- 6:55:12आपके पास यूजर है। ठीक है? यूजर है, टोकन
- 6:55:15है, सब कुछ आ जाता है। और जो फ़्टर आपने
- 6:55:17लिखी थी उसमें यूजर डिटेल्स को लोड कीजिए
- 6:55:19और वहां से रोल एक्सट्रैक्ट कीजिए। लेकिन
- 6:55:21वो कर रहे हैं तो हमें सर्कुलर डिपेंडेंसी
- 6:55:23का इशू आ रहा है। तो वो मैं नहीं कर रहा
- 6:55:24हूं। जनरली वैसा करते हैं तो कोड चल जाता
- 6:55:26है। लेकिन अभी ये लेटेस्ट वर्जन ऑफ़
- 6:55:27स्प्रिंग बूट में इन्होंने सर्कुलर
- 6:55:29डिपेंडेंसी को अलाउ नहीं किया है। तो इसका
- 6:55:31एक वर्क अराउंड ये होगा कि ये जो हमारी
- 6:55:34टोकन है, इसी में हम ऐड करेंगे रोल्स को।
- 6:55:37और फिर जब हम यूजरनेम एक्सट्रैक्ट कर रहे
- 6:55:39हैं तो उसी के साथ हम रोल्स को भी
- 6:55:41एक्सट्रैक्ट कर लेंगे टोकन में से ही और
- 6:55:43फिर उसको पास कर देंगे। ठीक है? तो ये एक
- 6:55:45वर्क अराउंड हमने फिगर आउट कर लिया बिकॉज़
- 6:55:47स्प्रिंग बूट हमको वो वाला मेथड अलाउ नहीं
- 6:55:48कर रहा है। ठीक है? ऐसे वर्क अराउंड्स
- 6:55:50निकालने पड़ेंगे आपको दोस्तों। तो यहां पर
- 6:55:52JW यूuts में आना है। हमने जनरेट टोकन
- 6:55:54फ्रॉम यूजरनेम किया हुआ था यहां पे। ठीक
- 6:55:56है? तो मैं क्या करूंगा? सब्जेक्ट के बाद
- 6:55:58यहां पर क्लेम्स ऐड कर दूंगा। ठीक है?
- 6:56:00क्लेम और यहां पर लिख दूंगा। अच्छा सॉरी
- 6:56:04रोल्स ऐसे और यहां पर मैं लिख दूंगा यहां
- 6:56:07पर मेरे पास यूजर नेम है। अच्छा देखिए
- 6:56:10यहां पर मैं ना यूजर नेम ले रहा हूं। यूजर
- 6:56:12डिटेल्स नहीं ले रहा हूं। करेक्ट तो यहां
- 6:56:14पर यूजर डिटेल्स ले सकता हूं मैं। यूजर
- 6:56:16डिटेल्स ऐसे और यूजर डिटेल्स और फिर यहां
- 6:56:20पर यूजरनेम एक्सट्रैक्ट कर सकता हूं। तो
- 6:56:22मैं यहां पर कहूंगा स्ट्रिंग यूजर नेम
- 6:56:25ऐसे और फिर यूजर यूजर डिटेल्स डॉट गेट
- 6:56:29यूजरनेम। ठीक है? और फिर यहां पर मैं ले
- 6:56:32सकता हूं यूजर डिटेल्स डॉट गेट अथॉरिटीज़।
- 6:56:37ठीक है? गेट अथॉरिटीज़। और फिर देखिए ये जो
- 6:56:40है ना इसको आपको लिस्ट में कन्वर्ट करना
- 6:56:42होगा। तो इसको स्ट्रीम में कन्वर्ट करूंगा
- 6:56:43मैं पहले तो डॉट स्ट्रीम डॉट मैप। ठीक है?
- 6:56:48और फिर ए अ और फिर ऐसे करके हर इसको
- 6:56:53रिट्रीव करना है। डॉट गेट अथॉरिटी अथॉरिटी
- 6:56:55को रिट्रीव करना है और फिर इसको डॉट टू
- 6:56:57लिस्ट करके रिटर्न कर देना है। ठीक है? तो
- 6:57:00इसको मैंने एक हिसाब से लिस्ट में कन्वर्ट
- 6:57:01कर दिया। ठीक है? इसको लैम्ब्डा में
- 6:57:03कन्वर्ट कर देना है। इस तरीके से ये सजेशन
- 6:57:05था। ठीक है? तो ये स्ट्रीम्स का कांसेप्ट
- 6:57:07का इस्तेमाल करके हर अथॉरिटीज़ को मैंने
- 6:57:11कन्वर्ट कर लिया एक लिस्ट में। क्योंकि
- 6:57:13यहां पर मैं लिस्ट के फॉर्म में इसको अ
- 6:57:15एंबेड करना चाहता हूं। ठीक है? इतना मैंने
- 6:57:17कर दिया। अब देखिए यहां पर है ना मैंने
- 6:57:18पैरामीटर का टाइप चेंज किया। सीधा-सीधा
- 6:57:20यूजर डिटेल्स अंदर ले लिया है मैंने। तो
- 6:57:22यहां पर चले जाएंगे हम। यह गेट टोकन फ्रॉम
- 6:57:24यूजरनेम हम कहां पे कॉल कर रहे हैं? गेट
- 6:57:26टोकन फ्रॉम यूजरनेम मैं कॉल कर रहा हूं
- 6:57:29यहां पर। ठीक है? तो यहां पर यूजर डिटेल्स
- 6:57:32डॉट गेट यूजरनेम कर रहे थे हम। तो यहां से
- 6:57:34गेट यूजरनेम को हटा देंगे। सीधा यूजर
- 6:57:36डिटेल्स को ही पास कर देंगे। ठीक है? तो
- 6:57:38इतना चल जाना चाहिए और हम नया टोकन को इशू
- 6:57:40करेंगे अब। ठीक है? इतना चलने के बाद
- 6:57:42देखते हैं होता क्या है। तो नए टोकन में
- 6:57:44अब रोल्स की इनेशन होनी चाहिए। तो देखिए
- 6:57:47यहां पर आ जाइए और यहां पर हम आएंगे साइन
- 6:57:50इन पर। सेंड कीजिए। नया टोकन जनरेट हो
- 6:57:53गया। इसको कॉपी कीजिए। यहां पर आ जाइए और
- 6:57:56इसको डिकोड करके देखिए। तो देखिए अब यहां
- 6:57:58पर रोल भी है। देख पा रहे हैं आप मैजिक
- 6:58:01रोल भी है। आप इसमें और काफी सारी चीजें
- 6:58:04ऐड कर सकते हो। देखिए आपका अगर कुछ अ
- 6:58:07डोमेन स्पेसिफिक इनेशन है तो वो आप टोकन
- 6:58:10में ऐड कर सकते हो। तो कस्टम चीजें कैसे
- 6:58:12ऐड करनी है टोकन में? ये भी मैं बता रहा
- 6:58:14हूं। यहां पर रोल ऐड कर दिया हमने।
- 6:58:15करेक्ट? रोल। अब इसके पास क्या है? देखिए
- 6:58:18क्लियरली दिख रहा है। इसके पास रोल है रोल
- 6:58:19अंडरस्कोर यूजर। ठीक है? तो मैं यहां पर आ
- 6:58:22जाऊंगा। टोकन में अब हमारे पास रोल है।
- 6:58:25करेक्ट? तो यहां पर आ जाएंगे। अब
- 6:58:27ऑथेंटिकेशन ऑर्थ टोकन फिल्टर। यहां से हम
- 6:58:29फिल्टर को एक्सट्रैक्ट कर रहे हैं फिल्टर
- 6:58:31में से। ठीक है? और यहां पे अब मैं क्या
- 6:58:35करूंगा? अ
- 6:58:37यहां पे मैं आ जाऊंगा। और ये यहां पर
- 6:58:40लिस्ट ऑफ देखिए एम्प्टी अथॉरिटीज़ दे रहे
- 6:58:43हैं हम। करेक्ट। तो यहां पर ऊपर जस्ट ऊपर
- 6:58:45उसके मैं लिखूंगा क्लेम्स। ठीक है?
- 6:58:48क्लेम्स क्लेम्स इक्वल टू jw यूटिल्स डॉट
- 6:58:52गेट ऑल क्लेम्स ऐसे ठीक है ये मेथड अभी
- 6:58:56बना नहीं है लेकिन इसको बना देंगे हम ठीक
- 6:58:59है तो गेट ऑल क्लेम्स करके एक मेथड बना
- 6:59:01देंगे ये एक हेल्पर मेथड है या अगर आपको
- 6:59:04चाहिए तो आप यहां पर पार्सलर भी कर सकते
- 6:59:06हो लेकिन मैं सेपरेटली इसको रखना चाहता
- 6:59:08हूं क्योंकि जीW यूटर्स में सारे मेथड्स
- 6:59:10रखना चाहता हूं हेल्पर मेथड्स तो ये क्लीन
- 6:59:13कोड की एक प्रैक्टिस है तो मेरे पास सारे
- 6:59:15क्लेम्स आ गए ठीक है क्लेम्स अब क्लेम्स
- 6:59:17में एक क्लेम है रोल। ठीक है? क्लेम्स में
- 6:59:20एक क्लेम है रोल। देखिए दोस्तों रोल है एक
- 6:59:24क्लेम रोल्स में सॉरी क्लेम्स में एक
- 6:59:27क्लेम है रोल। तो काफी सारे लोग को ये
- 6:59:30डाउट होगा कि क्लेम्स का मतलब क्या है? ये
- 6:59:32क्लेम्स में ऐड क्यों कर रहे हैं? देखिए
- 6:59:34क्लेम्स का मतलब सिंपली यह है कि यह एक
- 6:59:36हिसाब से नेम वैल्यू पेयर है। की वैल्यू
- 6:59:39पेयर होती है ना नेम वैल्यू पेयर। आप आपको
- 6:59:41अगर जे डब्ल्यूडी में एक्स्ट्रा
- 6:59:42इनफार्मेशन पास करनी है जैसे कि रोल्स पास
- 6:59:44कर रहे हो। तो आप की वैल्यू पेयर में ऐसे
- 6:59:46डाल सकते हो। जैसे कि हमने पास किया है तो
- 6:59:48रोल्स की जगह पर रोल्स और फिर मैंने एक
- 6:59:50लिस्ट ऐड कर दी है जो कि रोल्स की लिस्ट
- 6:59:52है। आपको और कुछ कस्टम डेटा ऐड करना है तो
- 6:59:53आप वहां पर कर सकते हो। तो मैंने सारे
- 6:59:55क्लेम्स को रिट्रीव किया है। अब इसमें से
- 6:59:57एक क्लेम एक एक क्लेम है रोल सॉरी थोड़ा
- 7:00:02गड़बड़ हो रही है। लेकिन यहां पर मैं
- 7:00:04कहूंगा लिस्ट और फिर यहां पर मैं कहूंगा
- 7:00:06स्ट्रिंग की लिस्ट और फिर यहां पर कहूंगा
- 7:00:08रोल्स और इज़ इक्वल टू क्लेम्स डॉट गेट। और
- 7:00:12देखिए यहां पर नाम देना है मुझे रोल्स। और
- 7:00:15इसका टाइप क्या रहने वाला है वो लिखना है
- 7:00:16मुझे। तो लिस्ट डॉट क्लास। ठीक है? रोल्स
- 7:00:20को हम एक्सट्रैक्ट कर रहे हैं क्लेम्स में
- 7:00:22से। और इसका टाइप क्या रहने वाला है? तो
- 7:00:24मुझे लिस्ट में एक्सट्रैक्टेड चाहिए ये वो
- 7:00:26मैं कर रहा हूं। ठीक है? ये हो गया। और
- 7:00:28फिर अ इतना होने के बाद मैं यहां पर आ
- 7:00:32जाऊंगा। और ये तो मैंने यहां पर लिस्ट ऑफ
- 7:00:35लिखी हुई है। तो लिस्ट ऑफ के बजाय अ मुझे
- 7:00:38यहां पर अथॉरिटीज़ पास करनी है। तो मैं
- 7:00:40क्या करूंगा? एक लिस्ट बना दूंगा ऑफ
- 7:00:41ग्रांटेड अथॉरिटीज़। ठीक है? तो देखिए
- 7:00:44ग्रांटेड अथॉरिटी यह ग्रांटेड अथॉरिटी की
- 7:00:45क्यों लिख रहे हैं? क्योंकि इंटरनली
- 7:00:48स्प्रिंग सिक्योरिटी रोल्स जो है यानी कि
- 7:00:50अथॉरिटीज जो है उसको एज ए टाइप ऑफ
- 7:00:53ग्रांटेड अथॉरिटी ट्रीट करता है। ठीक है?
- 7:00:56देखिए आप लिस्ट ऑफ स्ट्रिंग अगर यहां पर
- 7:00:58पास कर दोगे तो वो नहीं चलेगा। देखिए अगर
- 7:01:00यहां पर आप आओगे तो यहां पर हमने हर तो
- 7:01:04यहां पर देखिए जे डब्ल्यू टी रो जेडब्ल्यू
- 7:01:07टोकन में रोल्स को ऐड करते वक्त सारी
- 7:01:09रोल्स को हमने ग्रांटेड अथॉरिटी से
- 7:01:11स्ट्रिंग में कन्वर्ट किया था। क्यों किया
- 7:01:13था? क्योंकि रोल्स हम चाहते हैं स्ट्रिंग
- 7:01:15में जाए क्लेम्स के अंदर। ठीक है?
- 7:01:17ग्रांटेड अथॉरिटी का टाइप था वो। करेक्ट?
- 7:01:20लेकिन अब फिर से आपको अगर ऐड करना है,
- 7:01:22स्प्रिंग सिक्योरिटी के साथ इस्तेमाल करना
- 7:01:24है, तो आपको ग्रांटेड अथॉरिटी का टाइप
- 7:01:26बनाना पड़ेगा। लिस्ट ऑफ़ ग्रांटेड अथॉरिटी।
- 7:01:28ठीक है? तो यहां पर मैं कहूंगा अथॉरिटीज़
- 7:01:30और फिर यहां पर कहेंगे हम फिर से रोल्स
- 7:01:34अच्छा सॉरी रिक्वेस्ट नहीं रोल्स डॉट
- 7:01:36स्ट्रीम
- 7:01:38और फिर यहां पर आ जाएंगे डॉट और फिर मैप
- 7:01:41और फिर सिंपल ग्रांटेड अथॉरिटी और फिर
- 7:01:45कॉलन न्यू और फिर डॉट टू लिस्ट ऐसे ऐसे।
- 7:01:50ठीक है? अब यहां पर ये एरर क्यों आ रही
- 7:01:52है?
- 7:01:54अच्छा ग्रांटेड अथॉरिटी और यह सिंपल
- 7:01:57ग्रांटेड अच्छा यह सिंपल ग्रांटेड अथॉरिटी
- 7:01:59नहीं चाहिए। यहां पर ग्रांटेड अथॉरिटी
- 7:02:00चाहिए। ठीक है? और ये कॉलन न्यू और फिर
- 7:02:05यहां से ग्रांटेड अब ये एरर क्यों आ रही
- 7:02:06है? तो ये एरर आ रही है क्योंकि ये
- 7:02:10है फंक्शन। अच्छा
- 7:02:13एक मिनट यहां पर यह दिक्कत हो रही है कुछ
- 7:02:17तो इस पर अगर ओवर करेंगे तो प्रोवाइडेड
- 7:02:21मेथड रेफरेंस लेकिन एक्सपेक्टेड है इसको
- 7:02:24फंक्शन अच्छा फंक्शन एक्सपेक्टेड है तो
- 7:02:29यहां पर लिख देता हूं ग्रांटेड अथॉरिटी और
- 7:02:32फिर गेट अथॉरिटी
- 7:02:34अच्छा यही तो चल जाना चाहिए था डॉट मैप
- 7:02:38डॉट स्ट्रीम
- 7:02:40यह क्यों नहीं चल रहा है? अब यहां पर अगर
- 7:02:42हो करते हुए यह फिर से फंक्शन मांग रहा
- 7:02:43है। ठीक है? ठीक है? तो कुछ एरर आ रही थी
- 7:02:46और मैंने उसको इस तरीके से फिक्स किया। तो
- 7:02:48मैंने क्या किया? रोल और फिर हर रोल को
- 7:02:52मैंने एक सिंपल ग्रांटेड अथॉरिटी रोल का
- 7:02:54ऑब्जेक्ट क्रिएट किया है और फिर उसको
- 7:02:56कास्ट कर दिया ग्रांटेड अथॉरिटीज़ में
- 7:02:58क्योंकि यहां पर ग्रांटेड अथॉरिटी
- 7:02:59एक्सपेक्ट कर रहे हैं। ठीक है? तो देखिए
- 7:03:01एक चीज़ समझिए। स्प्रिंग सिक्योरिटी
- 7:03:03इंटरनली रोल को जब रिप्रेजेंट करता है तो
- 7:03:06ग्रांटेड अथॉरिटी ग्रांटेड अथॉरिटी के
- 7:03:10टाइप में करता है। आप देख रहे हो अथॉरिटी।
- 7:03:12ठीक है? तो हमने क्या किया है? उसको पहले
- 7:03:14ग्रांटेड अथॉरिटी से स्ट्रिंग में कन्वर्ट
- 7:03:16किया था। जब उसको जेडब्ल्यूटी में ऐड कर
- 7:03:18रहे थे और फिर उसको स्ट्रिंग से फिर से
- 7:03:21ग्रांटेड अथॉरिटी में कन्वर्ट किया है।
- 7:03:24ठीक है? क्योंकि हमें स्प्रिंग सिक्योरिटी
- 7:03:25के साथ इस्तेमाल करना है। ठीक है? तो पहले
- 7:03:27ऐसा किया फिर ऐसा किया। ठीक है? ये आपको
- 7:03:29अब समझ गया रहेगा। ठीक है? ठीक है? तो
- 7:03:31इतना कर लिया मैंने। अब ये जो अथॉरिटीज है
- 7:03:33इसको मैं लूंगा और यहां पर एम्प्टी लिस्ट
- 7:03:35डालने की जरूरत नहीं है। यहां पर मैं ये
- 7:03:37वाली लिस्ट डाल दूंगा। ठीक है? यानी कि
- 7:03:38रोल्स डाल दूंगा। इतना हो चुका है। ठीक
- 7:03:40है? अब मुझे गेट ऑल क्लेम्स जो है उसको
- 7:03:45डिफाइन करना है। तो यहां पर आ जाते हैं और
- 7:03:47फिर यहां पर आएंगे। और अच्छा यहां पर
- 7:03:50अच्छा यहां पर JWT यूटिल्स में आएगा ये।
- 7:03:54और यहां पर इसको ओवर करते हैं और क्रिएट
- 7:03:56कर लेते हैं ये मेथड। ठीक है? है तो JWT
- 7:03:58यूटर्स में मैंने ये क्रिएट करना है और यह
- 7:03:59यहां पर रिटर्न करूंगा JWTS डॉट पार्सर
- 7:04:03बिल्डर अच्छा पार्सर
- 7:04:071 मिनट पार्सर डॉट बिल्ड डॉट सेट अच्छा एक
- 7:04:11मिनट
- 7:04:15gws
- 7:04:17डॉट पार्सर
- 7:04:19तो हमें क्लेम्स रिट्रीव करना है तो हमने
- 7:04:21सब्जेक्ट ऑलरेडी किया हुआ है तो मुझे
- 7:04:22पार्सर बिल्डर करके कोई मेथड तो नहीं मिल
- 7:04:24रहा है तो मुझे ना ये ही अप्रोच यूज़ यूज़
- 7:04:27करना चाहिए। देखिए, यहां से हमने सब्जेक्ट
- 7:04:28को रिट्रीव किया था। अब यहां से हम
- 7:04:30रिट्रीव करेंगे गेट क्लेम्स। अच्छा
- 7:04:33क्लेम्स भी नहीं मिल रहा है यहां पर। तो
- 7:04:36गेट
- 7:04:38पार्स क्लेम्स GW टी स्पार्स साइन
- 7:04:41क्लेम्स। ठीक है? और फिर यहां पर डॉट गेट
- 7:04:47पेलोड है। हेडर है। ठीक है? पेलोड और फिर
- 7:04:50पेलोड में आएगा क्लेम्स। नहीं पेलोड में
- 7:04:53क्लेम्स नहीं है। तो क्लेम्स है कहां
- 7:04:55एक्चुअली में? पेलोड में ही क्लेम्स है तो
- 7:04:58आइडली
- 7:05:02तो देखिए पेलोड में ही क्लेम्स है राइट तो
- 7:05:04हमें क्या करना चाहिए क्लेम्स को रिट्रीव
- 7:05:06नहीं करना चाहिए ये गेट पेलोड पे ही कहानी
- 7:05:08खत्म कर देनी चाहिए ठीक है एक्चुअली पहले
- 7:05:11प्रीवियस अ जेडब्ल्यूटी वर्जनंस में एक
- 7:05:13मेथड हुआ करता था गेट पार्स जो यानी कि
- 7:05:16पार्सर बिल्डर उसके थ्रू हम क्लेम्स को
- 7:05:18रिट्रीव कर पाते थे लेकिन अभी ये रीसेंट
- 7:05:20वर्ज़ ऑफ़ JWT और सिक्योरिटी में यह थोड़ी
- 7:05:23चेंजज़ आए हैं। तो इसके लिए थोड़ा कंफ्यूजन
- 7:05:24था यहां पर। लेकिन ठीक है हमने क्रैक कर
- 7:05:26लिया यहां पर देखिए जे डब्ल्यूटीएस पार्सर
- 7:05:29वेरीफाई विद बिल्ड पारस साइन क्लेम्स और
- 7:05:31फिर यहां पर पहले हमने गेट पेलोड और फिर
- 7:05:34गेट सब्जेक्ट किया था क्योंकि हमें यहां
- 7:05:35यूजरनेम सिर्फ चाहिए था यहां पर मैं क्या
- 7:05:37कर रहा हूं गेट पे लोड पे रुक जा रहा हूं
- 7:05:39ठीक है और फिर हमें पेलोड पूरा यहां पर
- 7:05:41मिल जाएगा टोकन फ़िल्टर में और फिर पेलोड
- 7:05:43में से हम सिर्फ रोल्स को रिट्रीव कर रहे
- 7:05:45हैं। तो देखिए पेलोड हमें पूरा का पूरा
- 7:05:47ऐसे ही मिल जाएगा। पेलोड में से रोल्स को
- 7:05:49रिट्रीव कर रहे हैं। ठीक है? तो यह वर्क
- 7:05:51होना चाहिए। ठीक है? अब देखते हैं यहां पर
- 7:05:53रन करके कि होता क्या है?
- 7:05:55ठीक है? और मैं क्या करना चाहूंगा? यहां
- 7:05:58पर ना यहीं पर मैं मुझे जो लिस्ट मिल रही
- 7:06:02है लिस्ट ऑफ अथॉरिटीज उसको या तो फिर यहां
- 7:06:05पर ये जो मिल रही है उसको मैं प्रिंट भी
- 7:06:07कर लेता हूं। ठीक है? तो मैं यहां पर
- 7:06:08लिखता हूं रूल्स। ठीक है? और यहां पर
- 7:06:11लिखता हूं रोल्स इस तरीके से। ठीक है?
- 7:06:13रोल्स को प्रिंट भी कर लेता हूं। तो एक
- 7:06:14हिसाब से क्या है? हमें रोल्स क्या आ रहे
- 7:06:16हैं ना वो भी दिखाई देगा यहां पर। सिस्टम
- 7:06:18डॉट डॉट डॉट प्रिंट एलन में। ठीक है?
- 7:06:20प्रिंट कर सकते हो। लॉगर लगा सकते हो जैसा
- 7:06:22आप चाहो। ठीक है? गोल है डाटा को देखना।
- 7:06:24ठीक है? तो, यह मैंने लिख दिया और यहां पर
- 7:06:26आ जाते हैं। यहां पर यह टोकन तो मैंने
- 7:06:30रिट्रीव कर लिया। ठीक है? टोकन को लेते
- 7:06:31हैं और फिर यहां पर ये जो रिक्वेस्ट है जो
- 7:06:34पहले नहीं चल रही थी पुराने टोकन के साथ
- 7:06:36वहां पर ऐड करते हैं। तो देखिए पुराने
- 7:06:37टोकन के साथ अगर आप डाटा भेजते हो ये
- 7:06:39पुराना टोकन है। तो अच्छा मुझे एरर आ रही
- 7:06:42है यहां पर। एरर क्यों आ रही है? क्योंकि
- 7:06:44इसमें रोल्स ही नहीं है। रूल्स देखिए नल
- 7:06:46है। ठीक है? तो इसके लिए एरर आ रही है।
- 7:06:49ठीक है? ये स्ट्रीम रिट्रीव नहीं कर सकता
- 7:06:50क्योंकि ये नल है। तो अगर ये रोल नल है तो
- 7:06:54आप यहां पर चेक भी लगा सकते हो। ठीक है?
- 7:06:55लेकिन मैंने चेक नहीं लगाई है कि अगर रोल
- 7:06:57नल है तो ये आगे नहीं बढ़ेगा या ऐसा कुछ
- 7:06:59या यहां पर एम्प्टी अ लिस्ट ऑफ रूल्स आ
- 7:07:02जाएगी। ऐसा कुछ कर सकते हो आप। ठीक है? तो
- 7:07:04ये कौन सी लाइन पर आ रही है? ये यहां पर आ
- 7:07:06रहा है। अच्छा यहां पर स्ट्रीम में
- 7:07:08कन्वर्ट कर रहा है। उस पर आ रहा है
- 7:07:09क्योंकि ये फिर स्ट्रीम में कन्वर्ट नहीं
- 7:07:10हो सकता। ठीक है? तो मैं क्या कर सकता हूं
- 7:07:13ना? यहां पर एक छोटा सा चेक भी लगा सकता
- 7:07:15हूं। एक कोड इंप्रूवमेंट है एक हिसाब से।
- 7:07:17तो देखिए यहां पर आपने इसमें कन्वर्ट किया
- 7:07:19इसको तो यहां पर मैं लिखूंगा इफ
- 7:07:23रोल्स नॉट इक्वल टू नल तो ही ये स्ट्रीम
- 7:07:28में कन्वर्ट करेगा इसे ऐसे ठीक है नहीं तो
- 7:07:32फिर ये क्या करेगा अच्छा अथॉरिटीज यहां पे
- 7:07:36चला गया ये क्या करेगा नहीं तो फिर
- 7:07:39अथॉरिटीज़ इज़ इक्वल टू
- 7:07:42इक्वल टू लिस्ट ऑफ़
- 7:07:46ऐसे कर देगा एम्प्टी लिस्ट क्रिएट कर दी
- 7:07:47है वैसे भी उसने। ठीक है? और फिर इसको हटा
- 7:07:50देते हैं हम। ठीक है? तो अगर नल नहीं है
- 7:07:51तो ये क्या करेगा? यहां पर इसको ओवर
- 7:07:53इनिशियलाइज़ कर देगा एज़ अ एम्प्टी लिस्ट।
- 7:07:56ठीक है? और अगर नल है तो फिर इसको ओवराइड
- 7:08:00कर देगा पूरा का पूरा डेटा। ठीक है? इसको
- 7:08:02फिर से रन करके देखते हैं।
- 7:08:09ठीक है? रन हो चुका है। और फिर यहां पर
- 7:08:11इसको सेंड करेंगे। तो देखिए अब एरर नहीं
- 7:08:13आनी चाहिए। रोल्स नल है। एरर नहीं आ रही
- 7:08:15है। हमने एरर को हैंडल कर लिया है। अब
- 7:08:17यहां पर जो एक्चुअल हमारी JWई टोकन थी
- 7:08:19रोल्स वाली उसको हम लेंगे और फिर यहां पर
- 7:08:22पहले इसको डिलीट कर देंगे और फिर इसको
- 7:08:24पेस्ट कर देंगे और इसको सेंड कर देंगे। तो
- 7:08:26देखिए अब चल गई। कैसे चली? क्योंकि यहां
- 7:08:28पर रोल्स रिट्रीव हो पाए। देखिए रोल्स
- 7:08:31रिट्रीव हो पाए। उम्मीद करता हूं यह
- 7:08:33क्लियर है आपको रोल बेस्ड ऑथेंटिकेशन
- 7:08:35जेडब्ल्यूडी में आप किस तरीके से कर सकते
- 7:08:37हो। देखिए ये काफी एडवांस कांसेप्ट है।
- 7:08:39यहां पर टोकन में आप रोल्स को एंबेड कर
- 7:08:42रहे हो। यहां पर काफी सारे कांसेप्ट्स
- 7:08:43आपको सीखने मिले। ऑथेंटिकेशन तो हम कर रहे
- 7:08:45थे पहले लेकिन रोल्स का इस्तेमाल नहीं कर
- 7:08:47रहे थे। मैं यहां पर एंप्टी रोल की लिस्ट
- 7:08:49भेज रहा था। अगर आपको याद हो तो। यहां पर
- 7:08:52अथॉरिटीज़ के बजाय एम्प्टी लिस्ट ऑफ रोल्स
- 7:08:54भेज रहा था। ठीक है? लेकिन यहां पर अब
- 7:08:56रोल्स हमें रिट्रीव हो रहे हैं। ठीक है?
- 7:08:59उम्मीद करता हूं ये पूरा का पूरा हेल्पफुल
- 7:09:02रहा है। पूरा का पूरा आपको समझ में आया है
- 7:09:04कि हम कर क्या रहे हैं। ठीक है?
- 7:09:11तो देखिए दोस्तों, अब एक बार फिर से
- 7:09:13रिवाइज कर लेते हैं यह सारी कांसेप्ट्स।
- 7:09:15ठीक है? रिवीजन जरूरी है। तो देखिए, सबसे
- 7:09:18पहले तो मैं फाइल्स के बारे में बता देता
- 7:09:20हूं। क्या-क्या फाइल्स का हम इस्तेमाल कर
- 7:09:21रहे हैं? सबसे पहले तो सिक्योरिटी कॉन्फिग
- 7:09:23फाइल मैं सब कुछ क्लोज कर देता हूं यहां
- 7:09:25पे ताकि थोड़ा क्लीन दिखे। सिक्योरिटी
- 7:09:26कॉन्फिग सिक्योरिटी कॉन्फ़िग है क्या?
- 7:09:28सिक्योरिटी कॉन्फ़िग एक हिसाब से
- 7:09:30सेंट्रलाइज़ कॉन्फ़िगरेशन है हमारी
- 7:09:32एप्लीकेशन की। पॉइंट नंबर वन। ठीक है? फिर
- 7:09:35दूसरी इंपॉर्टेंट फाइल हमारे पास है
- 7:09:37ऑथेंटिकेशन टोकन फिल्टर। ऑथ टोकन फिल्टर
- 7:09:39इसका नाम दिया मैंने। आप नाम कोई भी दे
- 7:09:41सकते हो। मैंने ये नाम दिया है। ठीक है?
- 7:09:43ये क्या है? यह एक हिसाब से फ़्टर है जो कि
- 7:09:46हर इनकमिंग रिक्वेस्ट को आने पर वैलिडेट
- 7:09:48करता है और एक जेडब्ल्यूटी की हेल्पर
- 7:09:50क्लास है जिसको हमने क्रिएट किया है। तो
- 7:09:52इन तीन क्लासेस की मदद से हमने पूरा का
- 7:09:55पूरा जेडब्ल्यूटी ऑथेंटिकेशन को खत्म किया
- 7:09:57है। और एक और क्लास है जिसका हम इस्तेमाल
- 7:09:59कर रहे हैं लॉग इन रिक्वेस्ट जो कि हमारी
- 7:10:01जो लॉग इन की रिक्वेस्ट किस फॉर्म में
- 7:10:02आएंगी उसको डिफाइन करती है। ये एक डीटीओ
- 7:10:04की तरह है। लेकिन फिलहाल इसको इग्नोर
- 7:10:06कीजिए। जेडब्ल्यूडी चलने के लिए ये तीन
- 7:10:08चीजें जरूरी है। ठीक है? तो रिवाइज करते
- 7:10:11हैं। किया क्या है? ठीक है? तो देखिए दो
- 7:10:14चीजें हैं। सबसे पहले तो जेडब्ल्यूटी को
- 7:10:16इशू करना और दूसरी चीज है आती हुई
- 7:10:19जेडब्ल्यूटी को वैलिडेट करना। इशू तो चलो
- 7:10:22हम लाइब्रेरी की मदद से कर सकते हैं।
- 7:10:24जेडब्ल्यूटी की जो डिपेंडेंसी ऐड की है
- 7:10:25उसकी मदद से हम कर सकते हैं। अब जो आती
- 7:10:28हुई jडब्ल्यूटी है उसको वैलिडेट कैसे
- 7:10:29करेंगे? उसको वैलिडेट करने के लिए आपको
- 7:10:31पता है बेस्ट प्लेस कौन सी होगी? फ़िल्टर
- 7:10:33चेन। क्यों होगी बेस्ट प्लेस? क्योंकि वो
- 7:10:35हर आती हुई रिक्वेस्ट को इनकमिंग
- 7:10:37रिक्वेस्ट को इंटरसेप्ट करती है। ठीक है?
- 7:10:40तो हमने क्या सोचा? हम एक हमारा कस्टम
- 7:10:42फ़िल्टर बनाते हैं। ये स्टार वाला फ़िल्टर
- 7:10:44हमारा फ़िल्टर है और इसको कहीं तो फ़्टर चेन
- 7:10:46में प्लेस कर देते हैं। ठीक है? हमने
- 7:10:47प्लेस किया उसको यूजरनेम पासवर्ड
- 7:10:49ऑथेंटिकेशन फ़िल्टर के आगे। क्योंकि वो
- 7:10:52फ़िल्टर क्या पहले JWT ऑथेंटिकेशन हो जाना
- 7:10:54चाहिए। क्योंकि वो जो ऑथेंटिकेशन फ़्टर है
- 7:10:56वो यूजरनेम पासवर्ड के द्वारा ऑथेंटिकेट
- 7:10:59करता है रिक्वेस्ट को और रिजेक्ट करता है।
- 7:11:00अगर वो नहीं है तो। तो हमने उसके आगे ही
- 7:11:02Jडब्यूटी ऑथेंटिकेशन फ़िल्टर हमारा ऐड कर
- 7:11:04दिया। ठीक है? ये वाला फ़िल्टर। अब लॉजिक
- 7:11:06को समझते हैं। ठीक है? यहां पर आ जाएंगे।
- 7:11:10JWT और यूटिल्स में हमने कुछ लॉजिक डिफाइन
- 7:11:13किए। ठीक है? कुछ मेथड्स जहां पर हम
- 7:11:16हेल्पर हेल्पर क्लासेस की मदद यानी कि
- 7:11:20डिपेंडेंसी की मदद से हमने कुछ हेल्पर
- 7:11:22मेथड्स बनाए। ठीक है? तो सबसे पहले तो
- 7:11:24Jडब्ल्यूडी सीक्रेट और एक्सपाइरेशन हमने
- 7:11:26डिफाइन किया है। ठीक है? उसके बाद में
- 7:11:28हमने एक मेथड डिफाइन किया है जिसके जरिए
- 7:11:30हम जो भी JडW आ रही है। ठीक है? उसको
- 7:11:33रिट्रीव कर पा रहे हैं हेडर से। ये सबसे
- 7:11:36पहली चीज़। ठीक है? तो देखिए जेडब्ल्यूटी आ
- 7:11:38रही है उसको रिट्रीव करने का भी तो लॉजिक
- 7:11:40चाहिए। जेडब्ल्यूटी आएगी किस फॉर्म में?
- 7:11:42ऑथराइजेशन हेडर में आएगी और बेरर स्पेस ये
- 7:11:46प्रीफिक्स के साथ आएगी। तो हमको सिर्फ
- 7:11:48स्ट्रिंग चाहिए ऑथ जेड टोकन उसको निकाल
- 7:11:51लेंगे हम। और ये पूरा लॉजिक उसके लिए है।
- 7:11:53फिर दूसरी चीज़ है हमने अ टोकन इशू करने के
- 7:11:58लिए एक लॉजिक लिखा था। तो टोकन इशू करने
- 7:12:01के लिए यह वाला लॉजिक है। जनरेट टोकन
- 7:12:03फ्रॉम यूजरनेम। अब इसमें हमने यूजरनेम
- 7:12:07को ऐड किया है जेडब्ल्यूडी टोकन में
- 7:12:10सब्जेक्ट की जगह पर और क्लेम में ऐड किया
- 7:12:12है रोल्स को। ठीक है? और इशू डेट
- 7:12:15एक्सपायरेशन सेट की है और साइन करके इसको
- 7:12:18रिटर्न कर दिया। ठीक है? रोल्स सेट करते
- 7:12:21वक्त हमने रोल्स जो थे हमारे यूजर डिटेल्स
- 7:12:23में उसको स्ट्रीम की मदद से ग्रांटेड
- 7:12:26अथॉरिटी के टाइप से चेंज कर कर स्ट्रिंग
- 7:12:28में कन्वर्ट किया है। क्योंकि हमको वो
- 7:12:31रोल्स की जो क्लेम है उसमें ऐड करना है।
- 7:12:34ठीक है? JW टोकन में ऐड करना है। यह हो
- 7:12:36गया। वैलिडेशन का लॉजिक सिंपल है। हमने
- 7:12:38यहां पर वैलिडेट किया है। यह की हमने
- 7:12:40रिटर्न की है बेस 64डेड की। ठीक है? और यह
- 7:12:43Jडw सीक्रेट का इस्तेमाल कर रही है। हमने
- 7:12:45एक हेल्प मेथड लिखा है यूजरनेम को टोकन से
- 7:12:47रिट्रीव करने के लिए और क्लेम्स को भी
- 7:12:50रिट्रीव करने के लिए JWई टोकन से। ठीक है?
- 7:12:53इतना काम हो गया। अब फ़्टर की बात करते
- 7:12:56हैं। अब मैंने सोचा कि फ़िल्टर बना लेते
- 7:12:58हैं। मैंने नहीं ये स्टैंडर्ड प्रैक्टिस
- 7:12:59है। फ़्टर बनाते हैं और टोकन फ़िल्टर का
- 7:13:01इस्तेमाल करके। ठीक है? यहां पर हमने सबसे
- 7:13:04पहले तो हेल्पर को ले लिया। ठीक है?
- 7:13:06हेल्पर का इस्तेमाल कर लिया। यहां पर डू
- 7:13:08फिल्टर इंटरनल मेथड का इस्तेमाल किया
- 7:13:10क्योंकि यह है एब्स्ट्रैक्ट क्लास वंस पर
- 7:13:13रिक्वेस्ट फिल्टर। और ये फ़्टर को एक्सटेंड
- 7:13:16करना जरूरी है। ये क्लास को एक्सटेंड करना
- 7:13:18जरूरी है। अगर आप कोई फ़िल्टर बना रहे हो
- 7:13:20जो हर रिक्वेस्ट पर एक बार एग्जीक्यूट
- 7:13:22होनी है। ठीक है? यूटिलिटी क्लास को ऑटो
- 7:13:25ऑटो वायर कर लिया यहां पर। ठीक है? यहां
- 7:13:27पर सबसे पहले हम JडW को पास कर रहे हैं।
- 7:13:30यानी JW टोकन को हेडर से एक्सट्रैक्ट
- 7:13:32करें। सबसे पहला काम तो वही करना होगा
- 7:13:33क्योंकि JWT टोकन के अराउंड ही सब कुछ काम
- 7:13:36करता है। ठीक है? आगे बढ़ने से पहले मैं
- 7:13:38आपको इसके पैरामीटर्स भी बता दूं जो मैंने
- 7:13:40आपको बताए नहीं थे। डू फ़िल्टर इंटरनल।
- 7:13:42यहां पर तीन पैराटर्स आपको देखने मिलते
- 7:13:44हैं। ठीक है? ये आपको इनकमिंग रिक्वेस्ट
- 7:13:47देता है। ये आपको आउटगोइंग रिस्पांस देता
- 7:13:50है। आप चाहो तो मॉडिफाई कर सकते हो
- 7:13:52रिस्पांस जो हमने किया नहीं है क्योंकि
- 7:13:53जरूरत नहीं थी। और आप यहां पे फ़्टर चेन भी
- 7:13:57मिलता है आपको। ठीक है? जो रिमेनिंग
- 7:13:58फ़िल्टर है वो इसमें होगे फ़्टर चेन में।
- 7:14:01ठीक है? और लास्ट में आपको क्या करना है?
- 7:14:03फिल्टर चेन को कंटिन्यू बोल देना है और
- 7:14:05रिक्वेस्ट रिस्पांस को पास कर देना है।
- 7:14:07रिक्वेस्ट और रिस्पांस में अगर आप कोई
- 7:14:09मॉडिफिकेशन करते हो तो बाकी के जो
- 7:14:10फिल्टर्स हैं उसके पास वो मॉडिफाइड
- 7:14:12रिक्वेस्ट और रिस्पांस ऑब्जेक्ट जाएगी।
- 7:14:14एक्चुअल वन नहीं। ठीक है? क्योंकि आपने
- 7:14:16मॉडिफाई किया है। ठीक है? इतना समझ में आ
- 7:14:19गया? अब यहां पर हमने जेडब्ल्यूडी को पास
- 7:14:22किया। जेडब्ल्यूडी को पास किया और फिर चेक
- 7:14:25किया जेडब्ल्यूडी को कि वो नल तो नहीं है
- 7:14:27और वैलिड है या नहीं। नल और वैलिड अगर
- 7:14:30नहीं है। ठीक है? फिर हम हमने ये लॉजिक
- 7:14:34एग्जीक्यूट किया। सबसे पहले तो यूजरनेम को
- 7:14:37रिट्रीव किया। ठीक है? यूजरनेम को रिट्रीव
- 7:14:39किया कहां से? अ हमने एक्सट्रैक्ट किया अ
- 7:14:42यूजरनेम को जेडब्ल्यूई टोकन से। क्योंकि
- 7:14:44हमने वहां पर सब्जेक्ट में ऐड कर रखा था।
- 7:14:46और उसका लॉजिक भी हमने यहां पर लिख रखा
- 7:14:48है। ठीक है? सब्जेक्ट को रिट्रीव कर लिया।
- 7:14:50ठीक है? दूसरी चीज़ हमें चाहिए थी रूल्स।
- 7:14:53अब ये रूल्स क्यों चाहिए थी? रोल्स
- 7:14:55क्लेम्स के फॉर्म में एडेड थी। रोल्स
- 7:14:57चाहिए थी ताकि हम रोल बेस्ड एक्सेस
- 7:14:59कंट्रोल इंप्लीमेंट कर पाए GWD की मदद से।
- 7:15:02ठीक है? यहां पर हम यूजर डिटेल्स का भी
- 7:15:04इस्तेमाल करना चाह रहे थे। पहले देखिए
- 7:15:05हमने मैंने यूजर डिटेल से भी कर रखा है ये
- 7:15:08लॉजिक। लेकिन सर्कुलर डिपेंडेंसी की एरर आ
- 7:15:10रही थी और रीसेंट वर्शन्स ऑफ़ स्प्रिंग बूट
- 7:15:12में सर्कुलर डिपेंडेंसीज़ अलाउड नहीं है।
- 7:15:14तो मैंने अ वो कोड को हटाकर JWT में JW
- 7:15:19टोकन में ऐड किया मैंने रूल्स। ठीक है?
- 7:15:22इतना होने के बाद मैंने रिट्रीव कर लिया
- 7:15:24रूल्स को स्ट्रिंग फॉर्म में लिस्ट में और
- 7:15:26उसको प्रिंट भी कर लिया देखने के लिए एक
- 7:15:28बार और फिर इस रूल्स को हमें कन्वर्ट करना
- 7:15:31होता है ग्रांटेड अथॉरिटी टाइप की लिस्ट
- 7:15:34में। ठीक है? वो क्यों करना है? क्योंकि
- 7:15:36इंटरनली स्प्रिंग सिक्योरिटी काम करता है
- 7:15:39ग्रांटेड अथॉरिटी ऑब्जेक्ट्स पर ही। अगर
- 7:15:42रोल्स का बात कर करोगे आप तो। ग्रांटेड
- 7:15:44अथॉरिटी ऑब्जेक्ट के टाइप में ही चाहिए
- 7:15:46स्प्रिंग सिक्योरिटी को। तो, हमको वह टू
- 7:15:48एंड फ़्रो करना होगा थोड़ा। उसको कन्वर्ट कर
- 7:15:50दिया हमने। हर रोल को कन्वर्ट किया
- 7:15:52ग्रांटेड अथॉरिटी के टाइप में। यहां पर वो
- 7:15:55लॉजिक है। ठीक है? और अगर रोल नहीं भेज
- 7:15:57रहे हम तो हमने ग्रांटेड ये जो लिस्ट है
- 7:16:00उसको एम्प्टी डिक्लेअ कर दिया यहां पर।
- 7:16:02ठीक है? इतना हो गया। फिर हमने यहां पर एक
- 7:16:05ऑथेंटिकेशन का ऑब्जेक्ट बना लिया।
- 7:16:07ऑथेंटिकेशन का ऑब्जेक्ट क्यों बनाया?
- 7:16:08क्योंकि हमें ये ऑथेंटिकेशन के ऑब्जेक्ट
- 7:16:10को सिक्योरिटी कंटेक्स्ट में स्टोर करना
- 7:16:12है। करेक्ट? तो ये यूजरनेम अभी आप बोलोगे
- 7:16:15यूजरनेम पासवर्ड ऑथेंटिकेशन टोकन का
- 7:16:16ऑब्जेक्ट बनाया आपने। तो ऑथेंटिकेशन
- 7:16:18ऑब्जेक्ट कहां है? जी हां। तो यह
- 7:16:19ऑथेंटिकेशन का ही ऑब्जेक्ट है क्योंकि
- 7:16:21यूजरनेम पासवर्ड ऑथेंटिकेशन टोकन एक सब
- 7:16:24क्लास है ऑथेंटिकेशन की। आप देख पा रहे
- 7:16:26हो? ठीक है? और यहां पर यूजरनेम, पासवर्ड
- 7:16:29ऑथेंटिकेशन टोकन के डॉक्यूमेंटेशन में भी
- 7:16:31आपको मिल जाएगा कि एन इंप्लीमेंटेशन ऑफ़
- 7:16:35ऑथेंटिकेशन। देखिए ये ऑथेंटिकेशन का एक
- 7:16:37इंप्लीमेंटेशन है जो कि डिज़ है फॉर सिंपल
- 7:16:40प्रेजेंटेशन ऑफ यूजरनेम एंड पासवर्ड। तो
- 7:16:43ये ऑब्जेक्ट हमें क्यों चाहिए? ये
- 7:16:44ऑब्जेक्ट हमें इसलिए चाहिए ताकि हम
- 7:16:46सिक्योरिटी कॉन्टेक्स्ट में एक हमें
- 7:16:48ऑथेंटिकेशन का ही ऑब्जेक्ट स्टोर करना
- 7:16:50होता है। देखिए सिक्योरिटी कॉन्टेक्स्ट जो
- 7:16:52होती है ना यहां पर जो ऑथेंटिकेटेड यूजर
- 7:16:55की जो इनेशन है वो ऑथेंटिकेशन का ऑब्जेक्ट
- 7:16:58चाहिए। ऑथेंटिकेशन जो इंटरफ़ेस है उसका
- 7:17:01टाइप चाहिए होता है यहां पर स्टोर करने के
- 7:17:04लिए। वो इसी तरह से स्टोर होता है। यही
- 7:17:06सिंटेक्स है और यही इसका नॉर्म है। ठीक
- 7:17:09है? तो हमने इसका इस्तेमाल किया यहां पर।
- 7:17:12ठीक है? और फिर इसको सेट करने से पहले
- 7:17:14सिक्योरिटी कॉन्टेक्स्ट में हमने
- 7:17:16रिक्वेस्ट की जो डिटेल्स थी वह भी ऐड कर
- 7:17:18दी। ऑथेंटिकेशन ऑब्जेक्ट में। देखिए ये
- 7:17:20हमने किया। ये करने की जरूरत नहीं है
- 7:17:22लेकिन कर दिया हमने। बेस्ट प्रैक्टिस है।
- 7:17:23ये होने के बाद सिक्योरिटी कॉन्टेक्स्ट
- 7:17:25अपडेट हो चुका। तो, यहां पर जो रिक्वेस्ट
- 7:17:27है हमारी, वो ऑथेंटिकेटेड मार्क हो गई।
- 7:17:29देखिए, रिक्वेस्ट आई। सारे फ़िल्टर्स
- 7:17:31एग्जीक्यूट हुए। हमारे फ़िल्टर तक आई।
- 7:17:32हमारे फ़िल्टर में हमने जेडब्ल्यूडी को
- 7:17:34ऑथेंटिकेट किया। रोल्स वगैरह सेट किए
- 7:17:36ऑथेंटिकेशन ऑब्जेक्ट में और फिर
- 7:17:38ऑथेंटिकेशन ऑब्जेक्ट को यहां पर सेट कर
- 7:17:39दिया। तो सिक्योरिटी कॉन्टेक्स्ट में यह
- 7:17:41रिक्वेस्ट जो है वह ऑथेंटिकेटेड है। आगे
- 7:17:44के फिल्टर्स को पता रहेगा कि यह
- 7:17:46ऑथेंटिकेटेड है। आगे अगर कंट्रोलर्स भी
- 7:17:48एक्सेस करते हैं उनको पता है ये
- 7:17:50ऑथेंटिकेटेड है। करेक्ट? रोल्स सारी यूजर
- 7:17:52इनेशन लोडेड है। करेक्ट? इतना हो गया। अब
- 7:17:56इतना होने के बाद हमने कह दिया कि फ़िल्टर
- 7:17:58को कंटिन्यू रखा जाए और यहां पर रिक्वेस्ट
- 7:18:00रिस्पांस के ऑब्जेक्ट पास कर दी। तो इतना
- 7:18:02हो गया। ठीक है? अब देखिए यह फिर आगे जाती
- 7:18:06है रिक्वेस्ट और फिर हमारे कंट्रोलर पर
- 7:18:08हिट करती है। हमारा कंट्रोलर कहां पर है?
- 7:18:11कंट्रोलर हमने यहां पर लिखा हुआ है। ठीक
- 7:18:13है? और कंट्रोलर यहां पर लिखा हुआ है। तो
- 7:18:16यहां पर अब इसको एक्सेस करने के लिए यूजर
- 7:18:19का रोल चाहिए। यूजर का रोल चाहिए। तो अब
- 7:18:22देखिए यहां पर सिक्योरिटी कॉन्फ़िग में
- 7:18:24हमने डिफाइन कर रखा है यूजर का रोल। ठीक
- 7:18:26है? तो यूजर का रोल है। तो रोल तो हमने
- 7:18:29ऑलरेडी ऐडेड है। तो फिर यह चलने लग गया।
- 7:18:31बेसिकली रोल बेस्ड ऑथराइजेशन करेक्ट। अब
- 7:18:34मैं एडमिन का एक्सेस करना चाहूं। यहां पर
- 7:18:36देखिए यूजर की एपीआई में एक्सेस कर पा रहा
- 7:18:38हूं। एडमिन का एक्सेस कर पाऊं करना चाहूं
- 7:18:42तो नहीं चलेगा ये। क्योंकि ये फॉरबिडन है।
- 7:18:44क्यों? क्योंकि इसमें जो रोल है वो यूजर
- 7:18:46का है। तो आप कैसे कॉल कर रहे हो? एडमिन
- 7:18:49एपीआई अलाउड ही नहीं है। तो, यह काम कर
- 7:18:51रहा है। ठीक है? और यहां पर ज्यादा कुछ
- 7:18:54चेंज नहीं किया हमने। सिक्योरिटी
- 7:18:55कॉन्फ़िगरेशन में सिंपल ही है। यह
- 7:18:57सिक्योरिटी कॉन्फ़िगरेशन है। जहां पर हमने
- 7:18:59सीएसआरएफ को डिसेबल किया है क्योंकि पोस्ट
- 7:19:01रिक्वेस्ट आनी है। और अगर पोस्ट रिक्वेस्ट
- 7:19:03आप भेजते हो तो उसमें सीएसआरएफ टोकन
- 7:19:04एक्सपेक्ट करता है। ठीक है? टोकन बेस्ड
- 7:19:06ऑथेंटिकेशन में तो उसको डिसेबल किया है।
- 7:19:08और यहां पर हमने ये फ़्टर को ऐड किया। ये
- 7:19:10लॉजिक है फ़िल्टर को ऐड करने का। देखिए,
- 7:19:13फ़िल्टर तो यहां पर आपने लिख दिया। फ़िल्टर
- 7:19:16चेन में फ़िल्टर लिख दिया। लेकिन, ये कहां
- 7:19:18पर ऐड होना है? उसका ऑर्डर डिसाइड होता है
- 7:19:20यहां पर। तो, यह मैंने ऑर्डर डिसाइड किया
- 7:19:22यूजर नेम, पासवर्ड, ऑथेंटिकेशन फ़्टर के
- 7:19:23आगे। तो बिफोर ऑथेंटिकेटिंग यूजिंग
- 7:19:26यूजरनेम एंड पासवर्ड मैं टोकन बेस्ड
- 7:19:28ऑथेंटिकेशन का लॉजिक ऐड कर दिया। तो
- 7:19:30रिक्वेस्ट ऑथेंटिकेट हो गई। ठीक है? और
- 7:19:33फिर ये तो पहले से लिखा हुआ था कोड। ठीक
- 7:19:35है? तो उम्मीद करता हूं यह पूरा क्लियर
- 7:19:37रहा, हेल्पफुल रहा। आपको कैसा लगा मुझे
- 7:19:40बताइए। यह पूरा का पूरा एक्सप्लेनेशन।
- 7:19:42काफी सारी चीजें हमने सीखी। देखिए काफी
- 7:19:44सारी चीजें सीखी। हमने सबसे पहले तो टोकन
- 7:19:47बेस्ड JW का मतलब सीखा। JWD है क्या? टोकन
- 7:19:51बेस्ड ऑथेंटिकेशन सीखा। टोकन बेस्ड
- 7:19:53ऑथेंटिकेशन होता क्यों है? ठीक है? उसके
- 7:19:56बाद में हमने सिंपल टोकन बेस्ड ऑथेंटिकेशन
- 7:19:58देखा। सिंपल टोकन बेस्ड यानी कि उसमें
- 7:19:59रोल्स वगैरह का कुछ झमेला नहीं। फिर हमने
- 7:20:02ये देखा कि हम एक्स्ट्रा इनेशन को कैसे ऐड
- 7:20:04कर सकते हैं टोकन में। जैसे कि हमने ऐड
- 7:20:06किया रोल्स। अब आपकी कोई एप्लीकेशन में
- 7:20:09डोमेन स्पेसिफिक इनेशन है। जैसे कि आप
- 7:20:11हॉस्पिटल मैनेजमेंट सिस्टम बना रहे हो और
- 7:20:13आपको कुछ ऐड करना है टोकन में। ठीक है? कि
- 7:20:17चलिए इसको एडमिन पैनल का एक्सेस है या
- 7:20:19नहीं? या इसको यह एक्सेस है या नहीं? या
- 7:20:21ये यूजर ने ये वेरीिफाइड यूजर है या नहीं?
- 7:20:23ईमेल वेरीिफाइड ऐसे कुछ डाटा ऐड करना है
- 7:20:25तो आप ऐड कर सकते हो टोकन में। कहां ऐड
- 7:20:27करोगे? क्लेम्स में ऐड करोगे। ठीक है? फिर
- 7:20:30हमें डिकोड करते वक्त वो डेटा को रिट्रीव
- 7:20:33कैसे करना है वो भी हमने देखा है। करेक्ट?
- 7:20:35देखा है या नहीं? देखा है? यहां पर
- 7:20:37रिट्रीव कैसे करना है उस डिटेल को। यहां
- 7:20:40पर हमने देखिए क्लेम्स को रिट्रीव किया और
- 7:20:42उसमें से रूल्स निकाले हैं। अगर आप कल को
- 7:20:44कुछ और डाटा ऐड करते हो क्लेम्स में रूल्स
- 7:20:47की बजाय आपने कुछ परमिशन ऐड कर दिया। कुछ
- 7:20:49ऐड कर दिया तो उसको आप इस तरीके से
- 7:20:50रिट्रीव कर सकते हो और इस्तेमाल कर सकते
- 7:20:52हो। यह काफी लॉन्ग टर्म नॉलेज है जो आपको
- 7:20:54मिल रही है यहां पर। ठीक है? JWT
- 7:20:57ऑथेंटिकेशन वि रोल बेस्ड एक्सेस कंट्रोल
- 7:20:59अलोंग विद ए लॉट ऑफ़ कांसेप्ट्स। उम्मीद
- 7:21:02करता हूं मजा आया बहुत। मुझे तो बहुत आया।
- 7:21:10तो देखिए दोस्तों, अब हम आ चुके हैं
- 7:21:13फिटनेस मोनोलथ एप्लीकेशन में। ठीक है? और
- 7:21:17यहां पर हम सिक्योरिटी इंप्लीमेंट करने की
- 7:21:20ओर जाएंगे। ठीक है? अब तक हमने क्या किया
- 7:21:22है? यहां पर अगर आप देखेंगे तो हमारे पास
- 7:21:24ऑथ कंट्रोलर है। इसमें यूजर रजिस्टर हो
- 7:21:26रहा है। ठीक है? लेकिन ऐसे लॉग इन वगैरह
- 7:21:28करने की कोई फंक्शनैलिटी नहीं है और ना ही
- 7:21:30कोई सिक्योरिटी कॉन्फ़िगरेशन है और ना ही अ
- 7:21:34एंड पॉइंट्स ऑथेंटिकेटेड है। ठीक है? तो
- 7:21:36सारी की सारी एंड पॉइंट्स ऐसी ओपन पब्लिक
- 7:21:38है। कोई भी आकर इसे इस्तेमाल कर सकता है।
- 7:21:40तो मैं क्या करूंगा? ऑथेंटिकेशन की ओर
- 7:21:42बढ़ेंगे हम। और हमें क्या करना है? हमें
- 7:21:45यहां पर यूजर की ओर आना है। ठीक है? ये
- 7:21:47यूजर मॉडल हमने बनाया हुआ है। तो देखिए ये
- 7:21:50यूजर मॉडल है। लेकिन इसमें अब रोल की कोई
- 7:21:54केयरिंग नहीं की गई है। ठीक है? यानी रोल
- 7:21:57का इस्तेमाल नहीं किया गया है यहां पर।
- 7:21:59ठीक है? हम सिर्फ यूजर की इनेशन स्टोर कर
- 7:22:02रहे हैं। क्योंकि इसको सिक्योरिटी अ
- 7:22:05स्टैंड पॉइंट से बनाया नहीं था। ठीक है?
- 7:22:06सिक्योरिटी के मॉडिफिकेशंस जो हमें करने
- 7:22:09चाहिए वो हमने किए नहीं थे। तो वो अब हम
- 7:22:11करेंगे। हम कोड को रिफैक्टर करेंगे। ठीक
- 7:22:15है? और रोल वगैरह। तो देखिए यहां पर यूजर
- 7:22:18की इनफेशन तो सब सही से स्टोर हो रही है।
- 7:22:20मेरे हिसाब से हमें क्या करना चाहिए? यहां
- 7:22:22पर रोल की इनेशन स्टोर करनी चाहिए। ठीक
- 7:22:25है? तो मैं क्या करूंगा? यहां पर आऊंगा और
- 7:22:28यहां पर लास्ट नेम के बाद में मैं कहूंगा
- 7:22:29प्राइवेट। ठीक है? यूजर रोल ऐसे और यहां
- 7:22:33पर कहूंगा रोल इज़ इक्वल टू। ठीक है? यूजर
- 7:22:37रोल डॉट यूजर। ठीक है? ऐसे। अब ये दोस्तों
- 7:22:41आप बोलोगे ये क्या लिख रहे हो? तो ये
- 7:22:42बेसिकली हम एक इनम बनाने वाले हैं। ये इनम
- 7:22:45होने वाला है। ठीक है? और यहां पर मैं
- 7:22:46लिखने वाला हूं एनुमिटेड।
- 7:22:49जब भी आपको अ ऐसे इनम वैल्यूज़ इस्तेमाल
- 7:22:52करनी है एंटिटी में तो आपको एनुमिटेड
- 7:22:54लिखना है। ठीक है? और यहां पर इनम टाइप
- 7:22:57स्ट्रिंग लिखना है। इनम टाइप डॉट
- 7:22:59स्ट्रिंग। ठीक है? ताकि इसकी जो स्ट्रिंग
- 7:23:01वैल्यू है वो स्टोर हो डेटाबेस में। अगर
- 7:23:03आप ये नहीं लिखोगे तो जो इंडेक्स है वो
- 7:23:05स्टोर होगा। ठीक है? तो ये तो इनम बन गया।
- 7:23:07अब मैं क्या करूंगा? इस पर होवर करूंगा एक
- 7:23:09हिसाब से ऐसे और फिर मोर एक्शंस करूंगा और
- 7:23:12यहां पर इनम बना लूंगा ऐसे। ठीक है? तो ये
- 7:23:15इनम तो बन चुका है यहां पर और यहां पर मैं
- 7:23:18लिख दूंगा यूजर। ठीक है? अ यूजर और एडमिन
- 7:23:22ऐसे दो रोल हम बनाएंगे। ठीक है? तो यूजर
- 7:23:25को हम इस यहां पर इस्तेमाल कर रहे हैं।
- 7:23:27ठीक है? यूजर को इस्तेमाल कर रहे हैं। तो
- 7:23:28देखिए दोस्तों, यहां पर यूजर का इस्तेमाल
- 7:23:30हो रहा है। और ये जो वैल्यू है, यह
- 7:23:32डिफॉल्ट वैल्यू है। ठीक है? ये हम लोग
- 7:23:34क्या कर रहे हैं? हार्ड कोड करके रख रहे
- 7:23:36हैं। तो कोई भी यूजर क्रिएट होता है तो
- 7:23:37उसका जो रोल होगा वो बाय डिफ़ॉल्ट यूजर
- 7:23:40होगा। हम बाद में इसको ऑल्टर भी कर सकते
- 7:23:43हैं। जैसे कि एडमिन बनाना है हमें किसी
- 7:23:44को। तो हम ये जो वैल्यू है इसको मॉडिफाई
- 7:23:47करके यूजर मॉड्यूल में मॉडिफाई करके उसे
- 7:23:50डेटाबेस में स्टोर कर सकते हैं। ठीक है?
- 7:23:51तो ये सारी चीजें डेटाबेस में जा रही है।
- 7:23:54ठीक है? तो उम्मीद करता हूं इतना क्लियर
- 7:23:55हो गया। ठीक है? अ देखिए अब हम यहां पर आ
- 7:23:57जाते हैं। अब यहां पर मुझे क्या करना
- 7:23:59होगा? अ मैं ये सारी चीजों को क्लोज कर
- 7:24:02देता हूं। ठीक है? यहां पर मैं बनाऊंगा एक
- 7:24:05पैकेज। ठीक है? एक पैकेज बनाएंगे हम जो
- 7:24:09होगा सिक्योरिटी रिलेटेड पैकेज। ठीक है?
- 7:24:11तो यहां पर मैं लिखूंगा सिक्योरिटी।
- 7:24:14ठीक है? सिक्योरिटी लिख देंगे ऐसे। और
- 7:24:17यहां पर सबसे पहले तो एक जावा की क्लास
- 7:24:19बनाएंगे। ठीक है? तो सबसे पहले देखिए हम
- 7:24:22सिक्योरिटी की बात करते हैं ना? तो मैं
- 7:24:23पहले तो यहां पर लिखने से पहले यहां पर आ
- 7:24:25जाता हूं। ठीक है? तो देखिए सिक्योरिटी की
- 7:24:28बात करते हैं ना? तो सबसे पहले तो हमें हम
- 7:24:30लोग जेडब्ल्यूटी ऑथेंटिकेशन इंप्लीमेंट
- 7:24:32करने जा रहे हैं। JWT ओथ। ठीक है? अब JWT
- 7:24:35ओथ में ना हमें कुछ चीजें हैं जो हमें
- 7:24:38चाहिए। तो सबसे पहले तो हमें चाहिए एक
- 7:24:40यूटिलिटी क्लास। तो JWT यूटिल्स JWT
- 7:24:44यूटिल्स नाम की एक क्लास बना देंगे हम।
- 7:24:46ठीक है? इसको थोड़ा बड़ा कर देते हैं हम।
- 7:24:48ठीक है? तो JWT यूटिल्स नाम की एक क्लास
- 7:24:50बनाएंगे। ये JWT यूटिल्स नाम की जो क्लास
- 7:24:52है, ये होगी एक हेल्पर क्लास। ठीक है? ठीक
- 7:24:55है? हेल्पर क्लास का मतलब है इसमें
- 7:24:57जेडब्ल्यूटी टोकंस क्रिएट करने की,
- 7:24:59वैलिडेट कर क्रिएट करने की, यूजरनेम जनरेट
- 7:25:02यूजरनेम से टोकन बनाने की। ये सारी जो
- 7:25:03एबिलिटीज़ है वो इस क्लास में होगी। ठीक
- 7:25:07है? इतना हो गया। ये JWT यूटिस हो गई।
- 7:25:09दूसरी हमारे पास होगी अ कस्टम
- 7:25:13अ तो हम बनाएंगे कस्टम यूजर डिटेल्स
- 7:25:17सर्विस। यूजर डिटेल्स सर्विस। ठीक है? अब
- 7:25:21देखिए आप बोलोगे ये सर्विस हम क्यों बना
- 7:25:23रहे हैं? ठीक है? तो इस पर मैं आता हूं।
- 7:25:24ठीक है? इसके पहले हम बनाएंगे इसको मैं
- 7:25:26लास्ट में रखता हूं कस्टम यूजर डिटेल
- 7:25:28सर्विस क्योंकि इसमें थोड़े कॉन्सप्ट
- 7:25:29समझने होंगे। हमें बनाना होगा सिक्योरिटी
- 7:25:31कॉन्फिग ठीक है? अ सिक्योरिटी कॉन्फ़िगरेशन
- 7:25:34और ये ये जो फाइल है वो सिक्योरिटी
- 7:25:36कॉन्फ़िगरेशंस को अ डिफाइन करेंगे एक हिसाब
- 7:25:39से। ठीक है? तो इतना हमने बना लिया और
- 7:25:40हमें एक बनाना होगा JW टी ऑथ फ़िल्टर। ठीक
- 7:25:45है? यह JWT ऑथ फ़िल्टर क्या करेगा? यह एक
- 7:25:48हिसाब से फ़िल्टर है जो कि सारी इनकमिंग
- 7:25:50रिक्वेस्ट को इंटरसेप्ट करेगा और उनमें
- 7:25:52टोकन है या नहीं यह वैलिडेट करेगा। उम्मीद
- 7:25:54करता हूं आपको समझ में आ रहा है। देखिए
- 7:25:56जीW यूटर्स एक हेल्पर क्लास है। ठीक है?
- 7:25:58यहां पे लिख देता हूं चाहिए तो हेल्पर
- 7:26:00क्लास ऐसे। ठीक है? ये है सिक्योरिटी
- 7:26:03कॉन्फ़िगरेशन सेंट्रलाइज्ड सिक्योरिटी
- 7:26:06कॉन्फ़िगरेशन। ऐसे ठीक है? JW ओथ फ़िल्टर
- 7:26:10क्या है? ये एक फ़िल्टर है फॉर फ़्टर चेन।
- 7:26:15ठीक है? दैट इंटरसेप्ट्स
- 7:26:18एव्री रिक्वेस्ट फॉर ऑथ। ठीक है? हर
- 7:26:22रिक्वेस्ट को इंटरसेप्ट करेगा और चेक
- 7:26:24करेगा कि उसमें ऑथराइजेशन हेडर्स है या
- 7:26:26नहीं। ठीक है? ऑथराइजेशन हेडर्स है तो
- 7:26:28रिक्वेस्ट को आगे जाने देगा और नहीं है तो
- 7:26:30बेसिकली वहीं पर ब्लॉक कर देगा। ठीक है?
- 7:26:32इतना हो गया। फिर हम बनाने वाले हैं कस्टम
- 7:26:35यूजर डिटेल्स सर्विस। तो कस्टम यूजर
- 7:26:36डिटेल्स सर्विस के बारे में बात करते हैं।
- 7:26:38देखिए तो अब हमारे पास है स्प्रिंग
- 7:26:42सिक्योरिटी। यह है स्प्रिंग सिक्योरिटी।
- 7:26:45ठीक है? तो यहां पर लिख देता हूं स्प्रिंग
- 7:26:48सिक्योरिटी।
- 7:26:51अच्छा
- 7:26:54ठीक है। तो यह स्प्रिंग सिक्योरिटी। ठीक
- 7:26:56है? अब एक चीज आप समझ लीजिए यहां पर।
- 7:26:57देखिए स्प्रिंग सिक्योरिटी में एक कोर
- 7:27:00यूजर मॉडल होता है। ठीक है? यूजर कोर यूजर
- 7:27:03मॉडल इसमें यूजर डिटेल्स होती है। ठीक है?
- 7:27:06और यहां पर और भी सारी क्लासेस होती है।
- 7:27:09ठीक है? यूजर और यूजर डिटेल्स के बारे में
- 7:27:10ही बात करूंगा मैं। ठीक है? यूजर जो है
- 7:27:13देखिए ये स्प्रिंग सिक्योरिटी ने डिफाइन
- 7:27:17किया हुआ यूजर मॉडल है। ठीक है? आप अगर
- 7:27:20यहां पर आओगे और अगर आप सिक्योरिटी की
- 7:27:22डिपेंडेंसी ऐड करते हो अपनी एप्लीकेशन में
- 7:27:24तो ये सिक्योरिटी ने डिफाइन किया हुआ यूजर
- 7:27:28मॉडल है और ये हमने डिफाइन नहीं किया है
- 7:27:31और ये जब भी आप स्प्रिंग सिक्योरिटी का अ
- 7:27:35जो डिपेंडेंसी है उसे ऐड करते हो तो आपको
- 7:27:37ये यूजर मॉडल बाय डिफ़ॉल्ट मिल जाता है।
- 7:27:39ठीक है? तो ये हमने डिफाइन किया है। जी
- 7:27:40नहीं ये इनबिल्ट है। अब होता क्या है? जब
- 7:27:43भी आप एप्लीकेशनेशंस बनाते हो, आप जब भी
- 7:27:45एप्लीकेशनेशंस बनाते हो, तो उसमें है ना
- 7:27:48आपकी जो नीड है वो थोड़ी डिफरेंट होती है।
- 7:27:50आप चाहोगे कि मुझे ये सारी चीजें जो
- 7:27:54स्प्रिंग सिक्योरिटी दे रहा है वो तो ठीक
- 7:27:55है लेकिन मुझे और 10 चीजों का ट्रैक रखना
- 7:27:58है। तो मान लीजिए अगर आप एक हॉस्पिटल
- 7:28:00मैनेजमेंट सिस्टम बना रहे हो। ठीक है?
- 7:28:02हॉस्पिटल मैनेजमेंट सिस्टम में आप कहोगे
- 7:28:04कि अच्छा मुझे ऐसा नहीं चाहिए। मुझे ऐसा
- 7:28:06चाहिए। मुझे पेशेंट आईडी ट्रैक करनी है।
- 7:28:09मुझे पेशेंट की कौन सी डिजीजसेस ट्रैक
- 7:28:10करनी है? मुझे तो पेशेंट की रिलेटेड
- 7:28:13इंफॉर्मेशनेशन मुझे ट्रैक करनी है। और ये
- 7:28:15जो अ ट्रैकिंग आप कर रहे हो ठीक है? ये आप
- 7:28:19कर रहे हो अपने डोमेन स्पेसिफिक। लेकिन
- 7:28:21स्प्रिंग सिक्योरिटी का जो यूजर मॉडल है
- 7:28:23वो काफी जेनेरिक है। वो जेनेरिक दिया हुआ
- 7:28:26है ताकि आप स्प्रिंग सिक्योरिटी को आउट ऑफ
- 7:28:28द बॉक्स इस्तेमाल कर पाओ। तो बोलने का
- 7:28:30पॉइंट ये है कि अगर आप एक रियल वर्ल्ड
- 7:28:32प्रोडक्शन ग्रेड एप्लीकेशन बना रहे हो तो
- 7:28:34कस्टम यूजर मॉडल अपने हिसाब से डिजाइन
- 7:28:37करना ये एक कॉमन चीज है। ठीक है? एक कॉमन
- 7:28:40चीज है। आप बैंकिंग एप्लीकेशन बनाओगे तो
- 7:28:43आपकी जो यूजर मॉडल होगा वो डिफरेंट
- 7:28:45दिखेंगी और उसमें आप डिफाइन करोगे चीजें
- 7:28:47जैसे कि अ आप डिफाइन करोगे अकाउंट नंबर
- 7:28:49यूजर का हो सकता है। ठीक है? तो डिपेंडिंग
- 7:28:52ऑन कि आप किस टाइप का एप्लीकेशन बना रहे
- 7:28:54हो। ठीक है? आप उस तरीके की अ यूजर मॉडल्स
- 7:28:58डिफाइन करोगे। तो देखिए दोस्तों अगर आप
- 7:29:00स्प्रिंग सिक्योरिटी को आउट ऑफ द बॉक्स
- 7:29:02इस्तेमाल कर रहे हो। ठीक है? तो यहां पर
- 7:29:03मैं डेटाबेस पर आ जाता हूं। ठीक है?
- 7:29:05डेटाबेस पर अगर आप आते हो तो यहां पर मेरे
- 7:29:07पास एक स्कीमा है जो कि है सिक्योरिटी ऐप
- 7:29:10का। और यहां पर दो टेबल्स आपको दिखाई देगी
- 7:29:13अथॉरिटीज़ और यूज़र्स। ठीक है? तो ये जो है
- 7:29:17ये डिफॉल्ट स्ट्रक्चर है जिस पर स्प्रिंग
- 7:29:20सिक्योरिटी काम करता है। डिफ़ॉल्ट
- 7:29:22स्ट्रक्चर है जिस पर स्प्रिंग सिक्योरिटी
- 7:29:23काम करता है। यूज़र्स और अथॉरिटीज़ इस तरीके
- 7:29:26से। ठीक है? यहां पर कॉलम्स डिफाइंड है,
- 7:29:28यूजरनेम, पासवर्ड इनेबल्ड और अथॉरिटीज़ इस
- 7:29:30तरीके से डिफाइंड है। अब अगर मेरे डोमेन
- 7:29:32के हिसाब से अगर मैं कुछ कस्टमाइजेशंस
- 7:29:34करना चाहता हूं। ठीक है? तो यहां पर अगर
- 7:29:36मैं आऊंगा तो यहां पर मैं क्या करना
- 7:29:38चाहूंगा? मैं यहां पर यूजर मैं बोलूंगा
- 7:29:40मुझे यूजर इस्तेमाल नहीं करना है। मैं
- 7:29:41इसके बजाय मेरा कस्टम यूजर इस्तेमाल करना
- 7:29:44चाहता हूं। ठीक है? कस्टम यूजर इस्तेमाल
- 7:29:47करना चाहता हूं। मैं ऐसा कर रहा हूं। ठीक
- 7:29:49है? मुझे स्प्रिंग सिक्योरिटी का डिफॉल्ट
- 7:29:51इस्तेमाल नहीं करना है क्योंकि मैं एक
- 7:29:52एडवांस एप्लीकेशन बना रहा हूं और मैं मेरा
- 7:29:54यूजर का जो मॉडल है उसे इस्तेमाल करना
- 7:29:56चाहता हूं ऑथेंटिकेशन के लिए। ठीक है? तो
- 7:29:59अब देखिए यहां पर है स्प्रिंग सिक्योरिटी।
- 7:30:02ठीक है? स्प्रिंग सिक्योरिटी। ठीक है?
- 7:30:06यहां पर और यहां पर है आपका अ कस्टम यूजर
- 7:30:11मॉडल। ठीक है? ये है कस्टम यूजर। कस्टम
- 7:30:15यूजर। ठीक है? ये है कस्टम यूजर मॉडल। और
- 7:30:17यहां पर है स्प्रिंग सिक्योरिटी। अब दोनों
- 7:30:19में आपको लिंकिंग तो लगानी पड़ेगी ना। ठीक
- 7:30:22है? स्प्रिंग सिक्योरिटी को क्या पता कि
- 7:30:24आप यूजर इनेशन कैसे स्टोर कर रहे हो।
- 7:30:26स्प्रिंग सिक्योरिटी को नहीं पता।
- 7:30:27स्प्रिंग सिक्योरिटी को उसका खुद का
- 7:30:29डिफॉल्ट यूजर पता है। स्प्रिंग सिक्योरिटी
- 7:30:32को क्या पता है? स्प्रिंग सिक्योरिटी को
- 7:30:33उसका खुद का डिफॉल्ट यूजर मॉडल पता है।
- 7:30:36स्प्रिंग सिक्योरिटी बोलता है अच्छा आप
- 7:30:37अगर ये इस्तेमाल करते हो मुझे पता है कैसे
- 7:30:39ऑथेंटिकेट करना है। कहां से यूज़र्स को लोड
- 7:30:41करना है, क्या करना है सब मुझे पता है।
- 7:30:43ठीक है? लेकिन आपने अगर कस्टम यूजर का जो
- 7:30:47मॉडल है उसे बना लिया अगर कस्टम यूजर मॉडल
- 7:30:50स्प्रिंग सिक्योरिटी बोलेगा मुझे पता नहीं
- 7:30:52है और मुझे इसके बारे में इंफॉर्मेशनेशन
- 7:30:53दो करेक्ट तो आपको जो है एक इसकी
- 7:30:57इंफॉर्मेशनेशन स्प्रिंग सिक्योरिटी को
- 7:30:58देनी होगी। ठीक है? यानी कि इसमें जो डेटा
- 7:31:01है वो आपको स्प्रिंग सिक्योरिटी के हिसाब
- 7:31:03से थोड़ा मैप करना होगा। ठीक है? और उसी
- 7:31:05के लिए हम बना रहे हैं कस्टम यूजर डिटेल्स
- 7:31:08सर्विस। ठीक है? तो कस्टम यूजर डिटेल
- 7:31:11सर्विस हम इसलिए बना रहे हैं क्योंकि
- 7:31:12हमारे पास कस्टम यूजर मॉडल है और और हम
- 7:31:16उसे इस्तेमाल करना चाहते हैं स्प्रिंग
- 7:31:18सिक्योरिटी के साथ। ठीक है? तो उम्मीद
- 7:31:21करता हूं इतना समझ में आया है।
- 7:31:24ठीक है? कि इस इसका मतलब क्या है? अब और
- 7:31:27डिटेल्स में हम समझेंगे जब हम इसे डिफाइन
- 7:31:29करेंगे। ठीक है? लेकिन एक हिसाब से देखिए
- 7:31:31आप अगर कस्टम यूजर मॉडल बनाते हो तो जो अ
- 7:31:35डिफॉल्ट स्प्रिंग सिक्योरिटी का मैकेनिज्म
- 7:31:38है और कस्टम यूजर आपने जो मॉडल बनाया है
- 7:31:40उन दोनों के बीच में एक ब्रिज बनाना होता
- 7:31:42है। ठीक है? और उसे कहते हैं उसके लिए हम
- 7:31:45बना रहे हैं ये वाली क्लास। ठीक है?
- 7:31:47उम्मीद करता हूं ये हेल्पफुल रह रहा है।
- 7:31:50ठीक है? तो अगर आप कस्टम यूजर मॉडल का
- 7:31:53इस्तेमाल नहीं करते तो ये वाली सर्विस की
- 7:31:55आपको जरूरत है नहीं। आप बिना इस सर्विस के
- 7:31:58जो डिफ़ॉल्ट स्ट्रक्चर है स्प्रिंग
- 7:31:59सिक्योरिटी का यूजर मॉडल का और अथॉरिटीज़
- 7:32:01का जो डिफ़ॉल्ट स्ट्रक्चर है उसको इस्तेमाल
- 7:32:03कर सकते हो और यूज़र्स को ऑथेंटिकेट कर
- 7:32:05सकते हो। ठीक है? क्योंकि ये देखिए ये ये
- 7:32:07आपने बना दिया तो कस्टम यूजर मॉडल बनाया
- 7:32:09तो स्प्रिंग सिक्योरिटी को पता नहीं है कि
- 7:32:11यूजर कहां से लोड करना है ऑथेंटिकेशन के
- 7:32:12लिए। ऑथेंटिकेशन के वक्त यूजर को लोड करना
- 7:32:14होगा। करेक्ट इन मेमोरी और देखना होगा कि
- 7:32:16जो क्रेडेंशियल्स आए वो सही आए कि नहीं।
- 7:32:18तो वो स्प्रिंग सिक्योरिटी को पता नहीं
- 7:32:20होगा। अगर वो पता नहीं है तो वो ऑथेंटिकेट
- 7:32:22कैसे करेगा। तो उसके लिए हमें वो मैपिंग
- 7:32:25बनानी पड़ेगी और वो बनेगी हमें वो ब्रिज
- 7:32:27बनानी पड़ेगी और वो ब्रिज बनेगा कस्टम
- 7:32:29यूजर डिटेल्स सर्विस में। ठीक है? उम्मीद
- 7:32:31करता हूं इतना क्लियर है आप लोगों को। ठीक
- 7:32:33है? अब हम क्या करेंगे? अब हम यहां पर आ
- 7:32:35जाते हैं। ठीक है? सबसे पहले तो स्टार डॉट
- 7:32:38स्प्रrिंग डॉटio पर आ जाऊंगा मैं। क्योंकि
- 7:32:40मैं क्या करना चाहता हूं? मैं यहां पर
- 7:32:41डिपेंडेंसीज़ ऐड करना चाहता हूं। तो मैं
- 7:32:43मेवन सेलेक्ट कर लूंगा और यहां पर सेलेक्ट
- 7:32:45करूंगा सिक्योरिटी। ठीक है? सबसे पहले
- 7:32:47सिक्योरिटी ऐड करेंगे हम। ठीक है? यहां पर
- 7:32:50आएंगे और फिर इसको कॉपी कर लेंगे यहां पर
- 7:32:53और हमारी एप्लीकेशन में आ जाएंगे यहां पर।
- 7:32:56ठीक है? और यहां पर फॉर्म डॉट एक्सml में
- 7:32:58आ जाते हैं और यहां पर ये सिक्योरिटी का
- 7:33:00जो पैकेज है उसको हम लगा देंगे यहां पर।
- 7:33:02ठीक है? अब डिफ़ॉल्ट बिहेवियर क्या होता
- 7:33:04है? स्प्रिंग सिक्योरिटी का क्या होता है
- 7:33:06डिफ़ॉल्ट बिहेवियर? डिफ़ॉल डिफ़ॉल्ट बिहेवियर
- 7:33:07ये होता है कि एवरीथिंग इज़ ऑथेंटिकेटेड।
- 7:33:09सब कुछ ऑथेंटिकेटेड होता है। देखिए, ये
- 7:33:11अभी रीड कर रहा है और ये डिपेंडेंसीज़
- 7:33:13रिज़ॉल्व कर रहा है। डिपेंडेंसीज़ डाउनलोड
- 7:33:15करेगा ये। ठीक है? उसके बाद हम एप्लीकेशन
- 7:33:17को रन करेंगे और यहां पर पोस्टमैन भी खुली
- 7:33:19हुई है। ठीक है? तो मैं इसे रन करता हूं
- 7:33:20एक हिसाब से। ठीक है? इसको रन करते हैं।
- 7:33:23एप्लीकेशन तो रन हो चुकी है डिपेंडेंसी के
- 7:33:25बाद। अब यहां पर आ जाता हूं। ये रजिस्टर
- 7:33:27की जो एंड पॉइंट हमने बनाई थी, उसको मैं अ
- 7:33:30क्वेरी करता हूं। देखिए, यहां पर अगर मैं
- 7:33:32क्वेरी भेजता हूं, यहां पर क्या होता है?
- 7:33:34एरर आ जाती है कि अनऑथराइज़्ड है। ठीक है?
- 7:33:36तो, इसका मतलब स्प्रिंग सिक्योरिटी का जो
- 7:33:38कॉन्फ़िगरेशन है, वह चल रहा है। और आपको
- 7:33:40यूजरनेम और पासवर्ड लगभग यहां पर प्रिंटेड
- 7:33:42दिखेगा। देखिए ये स्प्रिंग सिक्योरिटी का
- 7:33:45जो डिफॉल्ट पासवर्ड है तो डिफॉल्ट यूजर है
- 7:33:47यूजर और डिफॉल्ट पासवर्ड है ये पासवर्ड।
- 7:33:49ठीक है? तो ये हर रन पर जनरेट होगा। ठीक
- 7:33:52है? तो इसका हम इस्तेमाल नहीं करेंगे
- 7:33:54क्योंकि हमें इसका इस्तेमाल नहीं करना है।
- 7:33:56हमें क्या इस्तेमाल करना है? हमें
- 7:33:58इस्तेमाल करना है JWT। ठीक है? JWT का
- 7:34:01इस्तेमाल करना है। तो मैं यहां पर आ
- 7:34:02जाऊंगा फिर से यहां पर और मैं यहां पर
- 7:34:04लिखूंगा java gw
- 7:34:07मेन। ठीक है? ऐसा मैं सर्च कर लूंगा और
- 7:34:10यहां पर अगर आप आते हो तो यहां पर आपको यह
- 7:34:13देखिए यह वाली जो रेपोज़िटरी है इस ये
- 7:34:15रिपोज़िटरी का नाम याद रखिए जे जे डब्ल्यू
- 7:34:18टी और ये JW टी के जे जे डब्ल्यू टी ये
- 7:34:21नाम है। ठीक है? यहां पर आ जाइए। कोई
- 7:34:23दूसरी रिपॉज़िटरी पर नहीं चले जाना। ठीक
- 7:34:25है? अपडेट होती रहती है। और इस ये काफी
- 7:34:27पॉपुलर भी है। आप स्टार्स और फोकस देखोगे
- 7:34:29तो काफी पॉपुलर है। यहां पर आना है आपको
- 7:34:31इंस्टॉलेशन में मेवन सेलेक्ट करना है। और
- 7:34:33यहां पर देखिए सारी डिपेंडेंसी आपको मिल
- 7:34:35जाएगी। इसको कॉपी कर लो। ठीक है? कॉपी
- 7:34:38करने के बाद यहां पर आ जाओ और फिर इसको
- 7:34:42सिक्योरिटी की जो हमने लगाई है यहां पर
- 7:34:44डिपेंडेंसी उसके बाद इसको यहां पर लगा
- 7:34:46देंगे। ठीक है? और इसको कर देंगे रिफ्रेश।
- 7:34:50ठीक है? तो ये डिपेंडेंसी भी कॉन्फ़िगर हो
- 7:34:52चुकी है। इसका मतलब अब हमारा प्रोजेक्ट जो
- 7:34:53है वो रेडी है JWT ऑथेंटिकेशन के साथ काम
- 7:34:58करने के लिए। ठीक है? अब मैं सिक्योरिटी
- 7:35:00पर आ जाता हूं। ठीक है? यहां पर
- 7:35:02सिक्योरिटी पैकेज में हम एक-एक करके क्लास
- 7:35:04बनाने लग जाएंगे। तो सबसे पहले तो जे
- 7:35:06डब्ल्यू टी यूटिल्स नाम की क्लास बनाऊंगा
- 7:35:08मैं। ये क्या है? ये है हमारी अ क्या कहते
- 7:35:12हैं इसे? अ हेल्पर क्लास। ठीक है? इसमें
- 7:35:15टोकन जनरेट कैसे करना है? टोकन वैलिडेट
- 7:35:16कैसे करना है? वो सारी चीजें यहां पर आ
- 7:35:19जाएंगी। ठीक है? दूसरी जो क्लास मैं बनाना
- 7:35:22चाहता हूं वो है JWT। तो फ़िल्टर का नाम
- 7:35:25मैंने क्या बताया था? JWT ऑथ फ़िल्टर। आप
- 7:35:28कोई भी फ़्टर का नाम दे सकते हो। ठीक है?
- 7:35:30तो यहां पर जेडब्ल्यूटी ऑथ फिल्टर दे सकते
- 7:35:32हो या आपको कुछ और कस्टम नाम देना है वो
- 7:35:34दे सकते हो। ठीक है? तो यहां पर जे
- 7:35:37डब्ल्यू टी
- 7:35:39ऑथ फ़िल्टर। तो मैं पूरा नाम दे देता हूं
- 7:35:42ऑथेंटिकेशन
- 7:35:43फ़िल्टर। ठीक है? ये फ़िल्टर क्या करेगा? हर
- 7:35:46इनकमिंग रिक्वेस्ट को इंटरसेप्ट करेगा और
- 7:35:48उसमें JWई टोकन है या नहीं उसे वैलिडेट
- 7:35:51करेगा। ठीक है? तो यह हमने बना लिया है।
- 7:35:53यहां पर आ जाऊंगा और मैं बना लूंगा
- 7:35:54सिक्योरिटी कॉन्फिग के हिसाब से। ठीक है?
- 7:35:58डोंट आस्क अगेन। ठीक है? सिक्योरिटी
- 7:36:01कॉन्फिग बना लेंगे। सिक्योरिटी कॉन्फिग
- 7:36:03में हमारे पास जो सिक्योरिटी कॉन्फ़िगरेशन
- 7:36:06है, सेंट्रलाइज़ सिक्योरिटी कॉन्फ़िगरेशन
- 7:36:08हमारी एप्लीकेशन की वो स्टोर रहेगी। ठीक
- 7:36:10है? उसे हमने डिफाइन कर लिया। और भी
- 7:36:11फाइल्स लगेगी जैसे कि अ कस्टम यूजर
- 7:36:14डिटेल्स सर्विस। लेकिन अभी मैं उसे नहीं
- 7:36:15बनाता। कस्टम यूजर डिटेल्स चाहिए तो बना
- 7:36:17के रखते हैं। चलिए। ऐसे कोई हार्म तो है
- 7:36:19नहीं। कस्टम
- 7:36:21यूजर डिटेल्स सर्विस। ठीक है? इसमें लॉजिक
- 7:36:24रहेगा सब। तो ये ठीक है। इतना हो चुका है।
- 7:36:27ठीक है? इतनी चीजें हमने डिफाइन कर ली है।
- 7:36:29अब मैं यहां पर आ जाऊंगा जे डब्ल्यू टी
- 7:36:32यूटल्स में। ठीक है? और हम क्या करेंगे?
- 7:36:34यहां पर एक-एक करके अ सारी जो चीजें हैं
- 7:36:37उसको डिफाइन करने लग जाते हैं। या तो फिर
- 7:36:39पहले सिक्योरिटी कॉन्फ़िगरेशन में आ जाते
- 7:36:41हैं। ठीक है? सिक्योरिटी कॉन्फ़िगरेशन।
- 7:36:42इसको सबसे पहले अह मैं डिफाइन करूंगा अह
- 7:36:46ऐज़ ई कॉन्फ़िगरेशन क्लास। ठीक है? तो, यह
- 7:36:50है कॉन्फ़िगरेशन क्लास। ठीक है? और फिर
- 7:36:53यहां पर डिफाइन करूंगा इनेबल वेब
- 7:36:55सिक्योरिटी। ठीक है? इतना मैंने कर दिया
- 7:36:57है। और फिर यहां पर आ जाऊंगा
- 7:37:01यहां पर और यहां पर डिफाइन करूंगा पब्लिक।
- 7:37:05ठीक है? अच्छा सॉरी यहां पर बीन डिफाइन
- 7:37:08करना है मुझे। बीन और फिर ऑब्लिक
- 7:37:14सिक्योरिटी फ़िल्टर चेन ऐसे
- 7:37:18सिक्योरिटी फ़िल्टर चेन ऐसे और फिर http
- 7:37:22सिक्योरिटी
- 7:37:23एचtटीp
- 7:37:26और इतना मैंने डिफाइन कर दिया। ठीक है? और
- 7:37:28फिर यहां पर मैं रिटर्न करूंगा रिटर्न
- 7:37:31http डॉट बिल्ड। इसे मैं रिटर्न कर दूंगा
- 7:37:34इसको। ठीक है? इतना मैंने रिटर्न कर दिया।
- 7:37:38और फिर यहां पर थोड़े से सिक्योरिटी रूल्स
- 7:37:40भी डिफाइन करने लग जाते हैं। ठीक है? तो
- 7:37:42हम क्या करेंगे? यहां पर मैं लिख देता हूं
- 7:37:44http डॉट सीएसआरएफ और फिर सीएसआरf और फिर
- 7:37:50से यहां पर लिख दूंगा सीएसआरएफ
- 7:37:54डॉट डिसेबल। तो देखिए ये आ गया। और फिर
- 7:37:56मुझे वर्न करेगा कि मेथड रेफरेंस का
- 7:37:58इस्तेमाल कर लो। ठीक है? मेथड रेफरेंस का
- 7:38:00इस्तेमाल कर लेते हैं। ठीक है? सीएसआरएफ
- 7:38:02को डिसेबल कर दिया और फिर ऑथोराइज़
- 7:38:04रिक्वेस्ट को कॉल करेंगे और फिर यहां पर
- 7:38:07ऑथोराइज़ रिक्वेस्ट ठीक है और फिर यहां पर
- 7:38:12हम लिखेंगे
- 7:38:14ऑथोराइज़ रिक्वेस्ट डॉट रिक्वेस्ट मैचर्स
- 7:38:19और फिर यहां पर लिखेंगे एपीआई एडमिन स्लश
- 7:38:23स्टार स्टार ठीक है ऐसे लिख देंगे हम ठीक
- 7:38:26है और फिर यहां पर डॉट हैज़ रोल अच्छा
- 7:38:31अच्छा सॉरी यहां पर नहीं आएगा ये हस रोल
- 7:38:34डॉट हैस रोल हस रोल और फिर यहां पर हम लिख
- 7:38:39देंगे एडमिन
- 7:38:41ऐसे ठीक है ऐसा मैंने लिख दिया है और फिर
- 7:38:45अ यहां पर लिखेंगे डॉट एनी रिक्वेस्ट डॉट
- 7:38:49ऑथेंटिकेटेड
- 7:38:51ठीक है और इसको कर देंगे क्लोज तो ये हो
- 7:38:54चुका है क्लोज एक हिसाब से कुछ मिस किया
- 7:38:57है मैंने यहां पर यहां पर एरर दे रहा है
- 7:38:59ओके यहां पर इसको को क्लोज कर देना है
- 7:39:02शायद। यस इसको क्लोज कर दिया मैंने। तो ये
- 7:39:05हो चुका है। ठीक है? इतना मैंने मैंने
- 7:39:08रूल्स ज्यादा डिफाइन नहीं किए। ठीक है? आप
- 7:39:09देख सकते हो रूल्स मैंने काफी सिंपल रखे।
- 7:39:12यहां पर रिक्वेस्ट मैचेस का इस्तेमाल करके
- 7:39:14मैंने सिर्फ
- 7:39:16एडमिन एंड पॉइंट को प्रोटेक्ट किया है।
- 7:39:18ठीक है? अब एडमिन एंड पॉइंट हमारे पास अभी
- 7:39:19फिलहाल तो है नहीं। ठीक है? लेकिन अगर हम
- 7:39:21बनाते हैं फ्यूचर में है या नहीं है? मुझे
- 7:39:24देखना पड़ेगा एक हिसाब से। ठीक है? ये तो
- 7:39:28रेकमेंडेशन के एंड पॉइंट है। ये वाली है
- 7:39:30ऑथराइजेशन। ठीक है? और ये वाली है
- 7:39:32एक्टिविटी की। तो एडमिन एंड पॉइंट तो ऐसे
- 7:39:35कुछ है नहीं हमारे पास अभी फिलहाल। लेकिन
- 7:39:37आगे चलके अगर हम कोई एडमिन पैनल एडमिन
- 7:39:39डैशबोर्ड ऐसे सब बनाते हैं तो ये आ सकती
- 7:39:42है। ठीक है? और यहां पर मैं लिख देता हूं
- 7:39:44एपीआई अ स्ल
- 7:39:47नहीं इसकी जरूरत नहीं है। एक्चुअली एपीआई
- 7:39:49ऑथ लिख देता हूं। ऑथ सबको ओपन रहना चाहिए।
- 7:39:53ठीक है? ऑथ की जो एंड पॉइंट है वह पब्लिक
- 7:39:55रहनी चाहिए। परमिट ऑल ठीक है ऐसे इतना हो
- 7:39:59चुका है। ठीक है? यह हमने बना लिया
- 7:40:00सिक्योरिटी कॉन्फ़िगरेशन।
- 7:40:03ठीक है? अब यहां पर हम आएंगे तो ये
- 7:40:06सिक्योरिटी कॉन्फ़िगरेशन हो चुका है। अब
- 7:40:08मुझे JWT यूटिल्स में आना चाहिए एक हिसाब
- 7:40:11से। तो देखिए दोस्तों, JWT यूutls एक
- 7:40:14हिसाब से हेल्पर क्लास है। ठीक है? और
- 7:40:16यहां पर सारे के सारे JWT के साथ काम करने
- 7:40:19के लिए सारे जो हेल्पर मेथड्स चाहिए वो
- 7:40:21सारे होंगे। तो मैं क्या करूंगा? इसको
- 7:40:22स्क्रैच से डिफाइन करने के बजाय मेरे पास
- 7:40:24ऑलरेडी एक टेंपल्लेट सेटअप है इस दूसरे
- 7:40:26प्रोजेक्ट में सिक्योरिटी के। यहां पर
- 7:40:28मैंने लिखा हुआ है पूरा का पूरा कोड। ठीक
- 7:40:30है? और ये एक हिसाब से अ मतलब सेम ही होगा
- 7:40:34कोड। इसमें सिर्फ चीजों को आप मॉडिफाई
- 7:40:36करोगे। यानी कि Jडw सीक्रेट को मॉडिफाई
- 7:40:39करोगे, एक्सपायरेशन टाइम को मॉडिफाई
- 7:40:40करोगे। आपको जो एक्सपायरेशन टाइम चाहिए और
- 7:40:43यहां पे यूजर डिटेल्स से हम जनरेट कर रहे
- 7:40:47हैं टोकन और यूजरनेम से जनरेट कर रहे हैं
- 7:40:50टोकन। तो हो सकता है हमारे ऐप में हमें
- 7:40:51यूजरनेम नहीं जनरेट करना है। हमें यूजरनेम
- 7:40:54का इस्तेमाल नहीं करना है। हमें इस्तेमाल
- 7:40:55करना है यूजर आईडी। तो थोड़ी-थोड़ी
- 7:40:57मॉडिफिकेशंस होंगे लेकिन मोटा-मोटा जो अ
- 7:41:00कोड है वो यही होगा। तो मैं इसको कॉपी कर
- 7:41:02लेता हूं पूरा का पूरा और यहां पर इस
- 7:41:04तरीके से पेस्ट कर देता हूं। ये पैकेज का
- 7:41:07जो है इसे चेंज कर देंगे हम। ठीक है? तो
- 7:41:09ये पूरा का पूरा कोड जो है वो आ चुका है
- 7:41:13यहां पर। ठीक है? अब देखिए इसमें मैं कोई
- 7:41:15मॉडिफिकेशन नहीं करने जाऊंगा। ठीक है?
- 7:41:17इसमें हम अभी मॉडिफिकेशन नहीं करेंगे
- 7:41:19करेंगे। देखिए मैं आपको एक चीज बता देता
- 7:41:20हूं। यहां पर आप जनरेट कर रहे हो टोकन
- 7:41:22यूजरनेम से। ठीक है? टोकन कैसे जनरेट कर
- 7:41:24रहे हो? यूजरनेम से। हमें टोकन यूजरनेम से
- 7:41:26जनरेट नहीं करना है। हमारी जो एप्लीकेशन
- 7:41:28है जो कि फिटनेस डेमो है। ठीक है? उसमें
- 7:41:31यूजर है। कॉलम्स देखोगे ना आप तो यूजर
- 7:41:33आईडी है। तो आइडियली हमारा यूजर देखिए
- 7:41:36स्प्रिंग सिक्योरिटी का जो डिफ़ॉल्ट यूजर
- 7:41:38मॉडल है उसमें यूजरनेम से आइडेंटिफिकेशन
- 7:41:40होता है। उसमें यूजर आईडी नहीं है। ठीक
- 7:41:42है? लेकिन हमारा जो कस्टम यूजर मॉडल है
- 7:41:45उसमें जो आइडेंटिफिकेशन है वो होती है
- 7:41:48यूजर आईडी से। तो हमें वो सारी
- 7:41:50मॉडिफिकेशंस करनी होगी। ठीक है? तो वो
- 7:41:52सारी मॉडिफिकेशंस हम करेंगे। ठीक है? तो
- 7:41:54उम्मीद करता हूं इतना क्लियर है आपको। ठीक
- 7:41:56है? यहां पर यूजरनेम का इस्तेमाल कर रहे
- 7:41:57हैं। और यहां पर मेथड का नाम भी जनरेट
- 7:41:59टोकन फ्रॉम यूजरनेम है। तो मैं ये फ्रॉम
- 7:42:01यूजरनेम हटा देता हूं क्योंकि ये जो मेथड
- 7:42:03है इसको हम रिनेम करने वाले हैं। अच्छा
- 7:42:05यहां पर नहीं सॉरी यहां पर नहीं ये दूसरा
- 7:42:06प्रोजेक्ट है। ये वाले प्रोजेक्ट में जो
- 7:42:08हमारा प्रोजेक्ट है फिटनेस का वहां पर हम
- 7:42:10अपडेट करेंगे जनरेट टोकन। ठीक है? उसको
- 7:42:12रीनेम कर देंगे जनरेट टोकन फ्रॉम यूजरनेम
- 7:42:14से जनरेट टोकन। ठीक है? और फिर अंदर हम
- 7:42:16मॉडिफाई करेंगे। ठीक है? लेकिन ये इसको
- 7:42:18थोड़ी देर बाद करते हैं। अब ये जो
- 7:42:20स्प्रिंग सिक्योरिटी का जो हमारा
- 7:42:21प्रोजेक्ट था इसमें हेलो कंट्रोलर जो है
- 7:42:23ठीक है? यहां पर आपको साइन इन दिखाई देगा।
- 7:42:25ठीक है? ये जो साइन इन मेथड है। तो इसको
- 7:42:27मैं ऐसे के ऐसे कॉपी कर लेता हूं। ठीक है?
- 7:42:29ऐसे के ऐसे और फिर इसको यहां पर आ जाते
- 7:42:31हैं। और यहां पर हमारे पास है एक हिसाब से
- 7:42:35ऑथ कंट्रोलर होगा। ठीक है? ऑथ कंट्रोलर
- 7:42:37में हम आएंगे और यहां पर हम साइन इन की जो
- 7:42:39एंड पॉइंट है उसको पेस्ट कर देंगे। ठीक
- 7:42:41है? और ये ऐसे के ऐसे यूज़ नहीं होगी। ठीक
- 7:42:43है? इसमें हम थोड़ी सी मॉडिफिकेशंस करेंगे।
- 7:42:46ठीक है? लेकिन मॉडिफिकेशंस पर अब बात करते
- 7:42:47हैं। अब ये वाली जो क्लास है, ठीक है? जो
- 7:42:51ऑथ कंट्रोलर है, यहां पर ये हमने जो कोड
- 7:42:53लिखा हुआ है, ठीक है? ये हमने डिफॉल्ट जो
- 7:42:56ऑथेंटिकेशन मैकेनिज्म है, उसको इस्तेमाल
- 7:42:58करके लिखा हुआ है। ठीक है? ये सारी
- 7:42:59इनबिल्ट क्लासेस हैं। लेकिन हमारे पास
- 7:43:01सारा का सारा कस्टम बनाया हुआ है। ठीक है?
- 7:43:03तो ये सारी चीजें हम इस्तेमाल नहीं
- 7:43:04करेंगे। ठीक है? लेकिन स्टेप बाय स्टेप
- 7:43:06चलते हैं। तो सबसे पहले तो देखिए, लॉग इन
- 7:43:07रिक्वेस्ट जो है, मैं उसके लिए एक क्लास
- 7:43:09बना देता हूं। ठीक है? यह क्लास मैं
- 7:43:11बनाऊंगा डीटीओ पैकेज में। ठीक है? लॉग इन
- 7:43:13रिक्वेस्ट। और यहां पर अह लॉग इन
- 7:43:16रिक्वेस्ट में क्या डिफ़ाइन करना चाहिए
- 7:43:18हमें? ठीक है? तो लॉग इन
- 7:43:22तो लॉग इन रिक्वेस्ट में हमारे पास होगी
- 7:43:24सिंपल चीज़ जैसे कि प्राइवेट ईमेल अ
- 7:43:27स्ट्रिंग ईमेल सॉरी स्ट्रिंग ईमेल ऐसे।
- 7:43:31ठीक है? अ हमारे पास होगी प्राइवेट अ
- 7:43:34स्ट्रिंग पासवर्ड। ठीक है? तो यू यूजरनेम
- 7:43:37और पासवर्ड की बजाय ईमेल और पासवर्ड लूंगा
- 7:43:39क्योंकि हमारे इसमें जो ऑथेंटिकेशन चलेगा
- 7:43:41वो ईमेल और पासवर्ड बेस चलेगा। देखिए
- 7:43:44यूजरनेम और पासवर्ड बेस भी आप रख सकते हो।
- 7:43:46ईमेल पासवर्ड बेस भी रख सकते हो। यूजरनेम
- 7:43:49और सॉरी यूजर आईडी और पासवर्ड बेस भी रख
- 7:43:51सकते हो। डिपेंडिंग ऑन योर एप्लीकेशन आप
- 7:43:53रख सकते हो। और जो भी आपको एक्सेप्ट करना
- 7:43:55है वो आपको यहां पर मेंशन करना है। अगर आप
- 7:43:58यूजरनेम लेना चाहते हो, यूजर आईडी लेना
- 7:44:00चाहते हो, ईमेल लेना चाहते हो, मैं ईमेल
- 7:44:01और पासवर्ड रखना चाहता हूं फिटनेस में।
- 7:44:03ठीक है? है फिटनेस एप्लीकेशन में और इस
- 7:44:05ईमेल के बिहाफ पर हम लोग क्या करेंगे?
- 7:44:08यहां पर आ जाएंगे। इस ईमेल के बिहाफ पर ये
- 7:44:11देखिए ये मेरा ईमेल का जो फील्ड है इस
- 7:44:14ईमेल के बिहाफ पर हम जो डेटाबेस है उसमें
- 7:44:17क्वेरी करेंगे। ठीक है? और जो यूजर है
- 7:44:20उसकी इंफॉर्मेशनेशन हम फैच करेंगे। ठीक
- 7:44:22है? उम्मीद करता हूं इतना क्लियर है कैसे
- 7:44:24काम करने वाला है ये आगे चलकर। ठीक है? और
- 7:44:26यहां पर हम लॉबक का इस्तेमाल कर रहे हैं।
- 7:44:27तो मैं डेटा ऐड कर दूंगा। यहां पर ऐड कर
- 7:44:29दूंगा नो आस्क् कंस्ट्रक्टर और फिर ऑल
- 7:44:31आस्क् कंस्ट्रक्टर। ठीक है? तो ये हो चुका
- 7:44:34है। ठीक है? और इसको साइन इन के बजाय मैं
- 7:44:36बोल दूंगा लॉग इन। ठीक है? लॉग इन थोड़ा
- 7:44:38बेटर लगता है। तो लॉग इन बोल रहा हूं इसे।
- 7:44:41ठीक है? इतना करने के बाद यहां पर इसकी
- 7:44:43जरूरत है नहीं। तो ये ऑथेंटिकेशन मैनेजर
- 7:44:45क्या कर रहा है? ये ऑथेंटिकेट कर रहा है
- 7:44:47और वेरीफाई कर रहा है कि यूजरनेम और
- 7:44:48पासवर्ड जो दिया गया है यूजर से वो करेक्ट
- 7:44:52है या नहीं। यहां पर यूजर ये जो
- 7:44:53क्रेडेंशियल है उसकी वैलिडेशन चल रही है।
- 7:44:55तो हम वैलिडेशन इस तरीके से नहीं करेंगे।
- 7:44:57ठीक है? क्योंकि हमारे पास कस्टम यूजर
- 7:44:59मॉडल है। तो मैं इसको हटा दूंगा और मैं
- 7:45:01यहां पर क्या करूंगा? यूजर का एक इंस्टेंस
- 7:45:03बना लूंगा। यूजर यूजर इज़ इक्वल टू यूजर
- 7:45:06अच्छा यूजर की कोई रिपॉज़िटरी ही नहीं है।
- 7:45:09अ यूजर की रिपॉज़िटरी है। और यूजर सर्विस
- 7:45:12है हमारे पास। एक मिनट देख लेने दीजिए
- 7:45:14मुझे। तो यहां पर यूजर सर्विस में आप जाते
- 7:45:16हो तो यूजर सर्विस है। अ यहां पर ऑथ
- 7:45:21कंट्रोलर में। यूजर सर्विस में यूजर
- 7:45:22रिपॉज़िटरी तो है। ठीक है? अ लेकिन मैं
- 7:45:25क्या करूंगा? मैं यहां पर अह यहीं पर आ
- 7:45:29जाता हूं ऑथ कंट्रोलर में और यहां पर मैं
- 7:45:34लिखूंगा अ यूजर
- 7:45:38सर्विस। ठीक है? यूजर सर्विस डॉट या यूजर
- 7:45:42सर्विस नहीं अभी के लिए ना सिंपलीफाई करते
- 7:45:43हुए चीजों को। यहां पर है ना मैं यूजर
- 7:45:44रिपॉज़िटरी का ही इंस्टेंस बना देता हूं।
- 7:45:46तो यहां पर यूजर रिपॉज़िटरी लेके आता हूं।
- 7:45:49यूजर रिपॉज़िटरी और फिर यहां पर यूजर
- 7:45:52रिपॉज़िटरी। ठीक है? यूजर रिपॉज़िटरी मैंने
- 7:45:54ला दिया और फिर यहां पर यूजर रिपॉज़िटरी
- 7:45:56डॉट फाइंड बाय ईमेल लिख देता हूं। ठीक है?
- 7:46:00फाइंड बाय ईमेल। अब फाइंड बाय ईमेल नाम का
- 7:46:01कोई मेथड तो है नहीं। ठीक है? रिक्वेस्ट
- 7:46:04डॉट गेट ईमेल। ठीक है? ये मैंने लिख दिया।
- 7:46:07अब फाइंड बाय ईमेल नाम का कोई मेथड तो है
- 7:46:08नहीं यहां पर। तो मैं क्या करूंगा? इसको
- 7:46:10डिफाइन करवा देंगे हम यहां पर। देखिए ये
- 7:46:12डिफाइन हो गया। ठीक है? और फिर यहां पर
- 7:46:16मैं लिख दूंगा इफ
- 7:46:19यूजर इज़ इक्वल टू नल। ठीक है? तो फिर
- 7:46:23रिटर्न करना है क्या रिटर्न करना है 401
- 7:46:26रिटर्न करेंगे हम तो मैं क्या करूंगा
- 7:46:28रिस्पांस एंटिटी डॉट अ स्टेटस और फिर यहां
- 7:46:32पर लिखूंगा 401 डॉट बिल्ड
- 7:46:36ऐसे ठीक है इतना मैंने रिटर्न कर दिया और
- 7:46:39यहां पर देखिए ये स्ट्रिंग लिखी हुई है
- 7:46:41मैंने यहां पर स्ट्रिंग तो इसको हम कर
- 7:46:44देते हैं रिस्पांस एंटिटी और फिर इसको लॉग
- 7:46:47इन रिस्पांस लिख देता हूं यहां पर लॉग इन
- 7:46:49रिस्पांस ठीक है तो रिस्पांस जो है उसका
- 7:46:51भी स्ट्रक्चर हम रखेंगे यहां पर लॉग इन
- 7:46:52रिस्पांस नाम की अभी फिलहाल कोई क्लास
- 7:46:54डिफाइंड नहीं है। इसको डिफाइन करेंगे। ठीक
- 7:46:56है? तो अभी के लिए रिस्पांस एंटिटी और ये
- 7:46:59401 बिल्ड हो रहा है। लेकिन फिर भी इसमें
- 7:47:02एरर तो आ ही रही है। ठीक है? एरर क्यों आ
- 7:47:04रही है? अच्छा 1 मिनट। तो ये 401 इस पर
- 7:47:09ओवर करता हूं। तो
- 7:47:12ऑग डॉट स्प्रिंग फ्रेमवर्क। अच्छा तो ये
- 7:47:14हो तो रहा है। ये रिस्पांस एंटिटी का
- 7:47:17इस्तेमाल कर रहा है। अच्छा ये शायद लॉग इन
- 7:47:19रिस्पांस की जो क्लास है वो बनी नहीं है।
- 7:47:21इसके लिए ये एरर आ रही है। तो मैं इसको
- 7:47:23क्रिएट कर देता हूं और इसको क्रिएट करूंगा
- 7:47:25डीटीओ में ऑफ कोर्स और जैसे ही क्रिएट
- 7:47:28करता हूं यहां पर आ जाता हूं। अच्छा एरर
- 7:47:29चली गई देखिए। तो ये बिकॉज़ ये कंपाइल नहीं
- 7:47:32हुआ था इतना लाइन। इसके लिए वो एरर आ रही
- 7:47:34थी। ठीक है? तो यहां पे लिखता हूं। देखिए
- 7:47:35मैं रिपॉज़िटरी का इस्तेमाल डायरेक्टली
- 7:47:37कंट्रोलर में कर रहा हूं अभी के लिए। ठीक
- 7:47:39है? ताकि हम ऑथेंटिकेशन प्रोसेस को समझ
- 7:47:40पाए। बाद में ये जो रिपॉज़िटरी का कोड है
- 7:47:42इसको हम सर्विस में मूव कर सकते हैं। ठीक
- 7:47:44है? तो अ घबराइएगा नहीं कि अरे ये
- 7:47:46रिपॉज़िटरी कंट्रोल में क्यों यूज़ कर रहा
- 7:47:48है? मैं रीज़न है रीज़न ये है कि सिम सिंपल
- 7:47:50रखूं चीजों को। ठीक है? ताकि आप लोगों को
- 7:47:52समझ में आए। इफ यहां पर अब पासवर्ड
- 7:47:55वैलिडेट करेंगे। इफ पासवर्ड अच्छा यहां पर
- 7:47:58अब पासवर्ड वैलिडेट करने के लिए हमें क्या
- 7:48:01चाहिए होगा? हमें चाहिए होगा पासवर्ड का
- 7:48:04एनकोडर। ठीक है? तो मैं JWT utटिल्स में आ
- 7:48:07जाता हूं। जेडब्ल्यूटी यूutils में हमारे
- 7:48:09पास पासवर्ड एनकोडर डिफाइंड है। अह जी
- 7:48:13यहां पे नहीं है। सिक्योरिटी में होगा।
- 7:48:15सिक्योरिटी में तो एक हिसाब से सिक्योरिटी
- 7:48:18कॉन्फ़िगरेशन में आ जाता हूं। ये रही
- 7:48:20सिक्योरिटी कॉन्फ़िगरेशन। इसमें अ पासवर्ड
- 7:48:23एनकोडर जो है वो डिफाइन नहीं है। ठीक है?
- 7:48:26तो यहां पर मैं डिफाइन कर लूंगा पासवर्ड
- 7:48:28एनकोडर। ठीक है? तो यहां पर आऊंगा और यहां
- 7:48:32पर मैं लिख दूंगा
- 7:48:35पिन
- 7:48:37ठीक है? पब्लिक पासवर्ड एनकोडर
- 7:48:42इस तरीके से और फिर पासवर्ड एनकोडर ऐसे और
- 7:48:45फिर यहां पर लिख दूंगा रिटर्न न्यू
- 7:48:47बिक्रिप्ट एनकोडर बिक्रिप्ट पासवर्ड
- 7:48:50एनकोडर ऐसे। ठीक है? इतना हो चुका है। अब
- 7:48:53यहां पर एरर क्यों आ रही है? अच्छा ये एरर
- 7:48:56चली गई। ठीक है? तो यहां पर हमने एस
- 7:48:58पासवर्ड एनकोडर को डिफाइन कर दिया। देखिए
- 7:49:00पासवर्ड एनकोडर का हमें बीन यहां पर
- 7:49:02लगेगा। इसीलिए हमने वहां पर डिफाइन किया
- 7:49:04है। तो मैं क्या करूंगा? यहां पर प्राइवेट
- 7:49:07फाइनल पासवर्ड एनकोडर तो बिक्रिप्ट
- 7:49:10पासवर्ड एनकोडर हम इस्तेमाल कर रहे हैं और
- 7:49:12उसका इंस्टेंस यहां पर स्प्रिंग
- 7:49:13ऑटोमेटिकली इंजेक्ट कर देगा और हमें
- 7:49:14पासवर्ड एनकोडर क्यों चाहिए यहां पर? एनी
- 7:49:17गेसेस पासवर्ड एनकोडर क्यों चाहिए यहां
- 7:49:19पर? हमें चाहिए पासवर्ड एनकोडर ताकि हम जो
- 7:49:22है एनकोडेड पासवर्ड को कंपेयर कर पाएं।
- 7:49:25ठीक है? तो मैं यहां पर कहूंगा नॉट इक्वल
- 7:49:27टू पासवर्ड एनकोडर डॉट मैचेस। तो देखिए
- 7:49:31यहां पर एक मैचेस मेथड है जहां पर आप रॉ
- 7:49:33पासवर्ड पास कीजिए और एनकोडेड पासवर्ड को
- 7:49:36पास कीजिए। तो पहले रॉ पासवर्ड को पास
- 7:49:37कीजिए और फिर एनकोडेड पासवर्ड को पास
- 7:49:39कीजिए। तो ये कंपेयर करके आपको बता देगा
- 7:49:42कि ये मैच है या नहीं। ठीक है? तो जनरली
- 7:49:46यहां पर मुझे रॉ पासवर्ड कहां पर आएगा?
- 7:49:47लॉग इन रिक्वेस्ट में आएगा। ठीक है? तो
- 7:49:49लॉग इन रिक्वेस्ट डॉट गेट पासवर्ड। और फिर
- 7:49:53यहां पर मैं कहूंगा यूजर डॉट गेट पासवर्ड।
- 7:49:56इनकोडेड पासवर्ड कहां से आएगा? डेटाबेस से
- 7:49:59आएगा। करेक्ट। तो, यह मैंने लिख दिया यहां
- 7:50:01पर। और अगर यह ट्रू नहीं होता है, तो मैं
- 7:50:04फिर से यहां पर रिटर्न कर दूंगा
- 7:50:07रिस्पांस एंटिटी 401 बिल। ठीक है? इतना
- 7:50:09मैंने कर दिया है। अब ये हो चुका है। अब
- 7:50:12यहां पर मुझे क्या करना चाहिए? यहां पर
- 7:50:14मैं लिखूंगा स्ट्रिंग टोकन इज़ इक्वल टू
- 7:50:17JWT यूutil। अच्छा JWT यूutil का भी
- 7:50:19इंस्टेंस है नहीं क्रिएटेड। मैं यहां पर
- 7:50:21लिख दूंगा JWT यूटिल्स और JWT यूटर्स ऐसे
- 7:50:27और यहां पर आ जाऊंगा JWT
- 7:50:29यूटिल्स डॉट जनरेट टोकन ठीक है अब जनरेट
- 7:50:34टोकन में मुझे यहां पर पास करना चाहिए अ
- 7:50:38डिटेल्स कुछ डिटेल्स तो जो डिटेल्स मैं
- 7:50:40पास करना चाहता हूं वो यूजर डिटेल्स नहीं
- 7:50:42है वो मैं पास करना चाहता हूं यूजर डॉट
- 7:50:44गेट आईडी ठीक है और फिर यूजर डॉट गेट रोल
- 7:50:49डॉट गेट
- 7:50:51अच्छा यूजर डॉट गेट रोल इतना काफी है। ठीक
- 7:50:54है? अब यहां पर अगर मैं आता हूं तो यूजर
- 7:50:58डिटेल्स डिफाइंड क्या डिफाइंड है? यूजर
- 7:51:00डिटेल्स। अब यूजर डिटेल तो नहीं चलेगा
- 7:51:02यहां पर। ठीक है? तो हमें इसको मॉडिफाई
- 7:51:04करना होगा। इसको हम कर देंगे स्ट्रिंग
- 7:51:05यूजर आईडी और यहां पर मैं ले लूंगा
- 7:51:08स्ट्रिंग रोल इस तरीके से। इतना हो गया।
- 7:51:11ठीक है? अब यहां पर यूजरनेम लेने की जरूरत
- 7:51:13नहीं है इसे यूजर डिटेल्स में से। तो इसको
- 7:51:14हटा देता हूं। और सब्जेक्ट में यूजर नेम
- 7:51:17नहीं जाएगा। यूजर आईडी जाएगी। ठीक है? जो
- 7:51:19कि सही है। और यहां पर यूजर डिटेल्स डॉट
- 7:51:23करने की बजाय ठीक है यूजर डिटेल्स डॉट ये
- 7:51:27सब करने की बजाय हम क्या कर सकते हैं यहां
- 7:51:29पर
- 7:51:31यहां पर इसको डिलीट कर देता हूं और यहां
- 7:51:33पर लिख देता हूं लिस्ट ऑफ ठीक है और यहां
- 7:51:37पर लिख दूंगा न्यू सिंपल
- 7:51:39ग्रांटेड अथॉरिटी और यहां पर मैं लिख
- 7:51:42दूंगा यूज़ रोल ठीक है इसे ठीक है इतना हो
- 7:51:46गया तो यहां पर यह जो रोल है यह सिंपल
- 7:51:48ग्रांटेड अथॉरिटी
- 7:51:50टाइप है यहां पर ऐसे। ठीक है? इतना हो
- 7:51:53चुका है। अब यहां पर ये तो फिक्स हो गया।
- 7:51:55अब यहां पर आ जाते हैं। ठीक है? यूजर डॉट
- 7:51:57गेट रोल। अच्छा ये यूजर रोल प्रोवाइड कर
- 7:52:00रहा है यहां पर। तो यहां पर मैं कहूंगा
- 7:52:02गेट क्लास। अच्छा गेट क्लास नहीं होगा।
- 7:52:06यहां पर ये इनम है। तो यहां पर यूजर यूजर
- 7:52:09रोल आ रहा है। तो देखिए ये यूजर रोल
- 7:52:12रिटर्न कर रहा है क्योंकि ये इनम है।
- 7:52:14करेक्ट? आप समझ रहे हो? तो यहां पर अगर आप
- 7:52:16यूजर मॉडल में अगर आप जाते हो तो आपने
- 7:52:17उसको एज एन इनम डिक्लेअर किया हुआ है। ठीक
- 7:52:19है? कहां पर गया यूजर? अच्छा यूजर दिखाई
- 7:52:22नहीं दे रहा। तो यहां पर अगर आप जाते हो अ
- 7:52:25यूजर में तो यहां पर आपने इनम डिक्लेअर
- 7:52:27किया हुआ है। ठीक है? तो ये इनम रिटर्न कर
- 7:52:29रहा है। तो आप क्या करोगे? यहां पर आ
- 7:52:30जाओगे और यहां पर डॉट करोगे और नेम कर
- 7:52:32दोगे ना तो ये नेम दे देगा उसका। ठीक है?
- 7:52:35और नेम पास हो जाएगा मेथड में। ठीक है? तो
- 7:52:37जो भी रोल है वो पास हो जाएगा अ वहां पर।
- 7:52:40ठीक है? अब इतना होने के बाद हमें क्या
- 7:52:43करना चाहिए? हमने इतना कर लिया। तो ये
- 7:52:45देखिए ये हमें मिलता है ना टोकन इसका मतलब
- 7:52:46देखिए यूजरनेम यूजर हमें मिल गया हमने
- 7:52:49पासवर्ड वैलिडेट कर लिया टोकन भी जनरेट कर
- 7:52:51लिया और अब हम क्या कर सकते हैं हम लोग
- 7:52:53रिटर्न कर सकते हैं रिस्पांस एंटीटी डॉट
- 7:52:57ओके और फिर यहां पर लिखना है अ न्यू लॉग
- 7:53:00इन रिस्पांस अच्छा लॉग इन रिस्पांस में अब
- 7:53:04आपको टोकन पास करना है करेक्ट तो यहां पर
- 7:53:07मैं क्या करूंगा लॉग इन रिस्पांस में मैं
- 7:53:10लिख दूंगा अ स्ट्रिंग टोकन ठीक है? लॉग इन
- 7:53:14रिस्पांस में देखिए आप अपने हिसाब से
- 7:53:16डिजाइन कर सकते हो। आपको चाहिए टोकन
- 7:53:19डिफाइन कीजिए। यहां पर हमारे पास और कौन
- 7:53:21से कौन से डिटेल्स हैं। यहां पर यूजर
- 7:53:23रिस्पांस भी है। ठीक है? एक हिसाब से यूजर
- 7:53:25रिस्पांस भी है। तो अगर आप चाहते हो कि
- 7:53:27यूजर की सारी डिटेल्स भी जाए तो आप वो भी
- 7:53:29कर सकते हो। तो मैं क्या करूंगा? देखिए
- 7:53:30टोकन भी रख सकते हैं हम। हमारे ऊपर है।
- 7:53:33ठीक है? सिंपल रखना है तो टोकन रख दीजिए।
- 7:53:34लेकिन मैं क्या करूंगा? मैं प्राइवेट और
- 7:53:36फिर यूजर रिस्पॉन्स भी पास करूंगा यहां
- 7:53:38पर। तो यह दूसरा डीटीओ का क्लास है जिसका
- 7:53:42ऑब्जेक्ट मैं यहां पर पास कर रहा हूं। ठीक
- 7:53:44है? एक हिसाब से तो रिस्पांस नहीं रहेगा।
- 7:53:46यह रहेगा यूजर। इसको यूजर बोलता हूं। ठीक
- 7:53:48है? ऐसे और यहां पर फिर से मैं डिक्लेअ कर
- 7:53:51दूंगा डेटा और यहां पर लिख दूंगा नो ऑक्स
- 7:53:54कंस्ट्रक्टर और फिर यहां पर लिख दूंगा ऑल
- 7:53:56ऑक्स कंस्ट्रक्टर इस तरीके से। ठीक है?
- 7:53:59इतना मैंने कर दिया। अब मैं क्या करूंगा?
- 7:54:01यहां पर आ जाऊंगा ऑथ कंट्रोलर में। अब
- 7:54:03यहां पर मुझे पास करना है टोकन। तो सबसे
- 7:54:05पहले पास करूंगा टोकन। अच्छा सॉरी टोकन
- 7:54:07नहीं यहां पर लिखूंगा न्यू लॉग इन
- 7:54:09रिस्पांस
- 7:54:11लॉग इन रिस्पांस और फिर यहां पर मुझे पास
- 7:54:13करना है टोकन सबसे पहले टोकन पास कर दिया
- 7:54:16और फिर मैं कहूंगा यूजर सर्विस यूजर
- 7:54:19सर्विस डॉट मैप अच्छा यूजर सर्विस में है
- 7:54:24कोई ऐसा मेथड जो हमें मैप करने में मदद
- 7:54:27करे अच्छा मैप टू रिस्पांस है तो सही मैप
- 7:54:30टू रिस्पांस लेकिन यह जो मेथड है यह
- 7:54:32प्राइवेट है तो देख लेने दीजिए मुझे यहां
- 7:54:35पर आएंगे हम ठीक है मैप टू अच्छा
- 7:54:40मैप टू रिस्पांस ठीक है ये वर्क नहीं
- 7:54:42करेगा क्योंकि ये प्राइवेट है तो एक सिंपल
- 7:54:44सी चीज कर लेते हैं यहां पर यूजर सर्विस
- 7:54:46में अगर आप चाहोगे तो इसको हम कर देते हैं
- 7:54:50प्राइवेट हटा के पब्लिक क्योंकि ये मैपिंग
- 7:54:52मेथड है तो ठीक है इसको पब्लिक रख सकते
- 7:54:54हैं और यहां पर मैं इसको यूज़ करना चाहूंगा
- 7:54:56ठीक है मैप टू रिस्पांस देखिए खुद का मेथड
- 7:54:59भी यहां पर डिफाइन कर सकते हो लेकिन
- 7:55:00ऑलरेडी डिफाइंड है तो फिर से क्यों करना
- 7:55:02है ठीक है और यहां पर हम पास करेंगे अ
- 7:55:05यूजर यूर ऐसे ठीक है तो इतना मैंने कर
- 7:55:09दिया है यूजर को पास कर दिया है इतना हो
- 7:55:11चुका है और फिर यहां पर हम आएंगे रिटर्न
- 7:55:15अच्छा यहां पर देखिए और भी कोड लिखा हुआ
- 7:55:17है तो ये सारी कोड की अब जरूरत नहीं है तो
- 7:55:19यहां पर मैं क्या करूंगा रिटर्न करते वक्त
- 7:55:21सिर्फ 401 रिटर्न कर दूंगा सीधा-सीधा ऐसे
- 7:55:25ठीक है और इस कोड की अब जरूरत नहीं है।
- 7:55:27ठीक है? तो इसको हटा देते हैं। तो इस
- 7:55:29तरीके से देखिए आपका लॉगिन मेथड जो है वो
- 7:55:32कंप्लीटली बन चुका है। ठीक है? तो एपीआई
- 7:55:35डॉट ऑथ इसको आपको पब्लिकली इनेबल्ड रखना
- 7:55:37है। तो आपको आना है सिक्योरिटी
- 7:55:39कॉन्फ़िगरेशन में यहां पर और एपीआई स्लश ऑथ
- 7:55:42को आपने पब्लिकली इनेबल ऑलरेडी रखा हुआ
- 7:55:44है। ठीक है? तो ये एक हिसाब से अ काम कर
- 7:55:47लेना चाहिए। ठीक है? एक हिसाब से ये काम
- 7:55:49कर लेना चाहिए। इसमें कोई दिक्कत नहीं आनी
- 7:55:51चाहिए। तो इतना हो गया। ठीक है? इसको अब
- 7:55:53चलाते हैं। ठीक है? मैं क्या करूंगा? इसको
- 7:55:55रीन करूंगा और देखते हैं कि हमें कोई इशूज़
- 7:55:58या बग्स आते हैं या नहीं। ठीक है? अच्छा
- 7:56:02यहां पर क्या हो गया? सेमी कॉललन मैंने
- 7:56:03कहीं तो मिस कर दिया है। ठीक है? तो यहां
- 7:56:05पर कहां मिस किया है मैंने? सेमी कॉललन
- 7:56:07रिटर्न करते वक्त सेमी कॉललन मिस किया है।
- 7:56:09ठीक है? छोटी सी गड़बड़ तो होनी है। लाजमी
- 7:56:14है। ठीक है? तो ये देखिए एप्लीकेशन रन हो
- 7:56:16रहा है। रन हो चुका है। कोई एरर वैसे आई
- 7:56:19नहीं है। यह रन हो चुका है। इसको क्लियर
- 7:56:22कर देता हूं स्टक ट्रेस को। ठीक है? यहां
- 7:56:24पर आ जाते हैं। सबसे पहले तो देखिए यहां
- 7:56:28पर यह रजिस्टर्ड है। लॉग इन की जो
- 7:56:30रिक्वेस्ट है उसको ट्रिगर करते हैं हम।
- 7:56:32ठीक है? लॉग इन की रिक्वेस्ट बनानी पड़ेगी
- 7:56:33एक्चुअली में। तो लॉग इन इसको मैं यूजर
- 7:56:36रजिस्ट्रेशन को ही मैं डुप्लीकेट कर देता
- 7:56:37हूं यहां पर। ठीक है? यूजर रजिस्ट्रेशन को
- 7:56:39डुप्लीकेट कर दिया। और यहां पर यूजर
- 7:56:41रजिस्ट्रेशन के बजाय मैं कहूंगा लॉग इन।
- 7:56:44लॉग इन ऐसे। ठीक है? अब यहां पर बॉडी में
- 7:56:47आप देख पा रहे हो ईमेल और पासवर्ड मैं पास
- 7:56:49कर रहा हूं। ठीक है? तो ईमेल और पासवर्ड
- 7:56:50रहने दूंगा। फर्स्ट नेम, लास्ट नेम हटा
- 7:56:52दूंगा। इस तरीके से पोस्ट रिक्वेस्ट ही
- 7:56:54चाहिए हमें। इसको सेव कर दूंगा और इसको कर
- 7:56:56दूंगा सेंड। देखते हैं क्या आउटपुट आता
- 7:56:58है। अच्छा देख पा रहे हो आपको। अच्छा सॉरी
- 7:57:00रजिस्टर के एंड पॉइंट मैंने कॉल किए सॉरी
- 7:57:03रजिस्टर के एंड पॉइंट कॉल किए। रजिस्टर के
- 7:57:05एंड पॉइंट कॉल नहीं करनी है। आपको लॉग इन
- 7:57:07के एंड पॉइंट कॉल करनी है। तो अगर आप
- 7:57:08डुप्लीकेट करते हो एंड पॉइंट्स को इस
- 7:57:10तरीके से तो ध्यान रखिएगा याद रखिएगा आपको
- 7:57:12लॉग इन के एंड पॉइंट कॉल करनी है। ये
- 7:57:14अपडेट कर दीजिएगा। लॉग इन करूंगा मैं।
- 7:57:16अच्छा 403 फॉरबिडन आ चुका है। अब ये 403
- 7:57:20फॉरबिडन क्यों आया है? तो यहां पर देखते
- 7:57:22हैं। एरर तो आई है। सो लेट्स सी। ठीक है?
- 7:57:24तो स्टैक ट्रेस से देखिए कुछ भी एरर आपको
- 7:57:26पोस्टमैन में दिखता है ना तो उस उस एरर की
- 7:57:29जो डिटेल्स है वो आपको दिखाई देगी यहां पर
- 7:57:30कंसोल पर तो देखिए क्वेरी डिड नॉट रिटर्न
- 7:57:35यूनिक रिजल्ट सेवन रिटर्न सेवन रिजल्ट्स
- 7:57:38वर रिटर्न विद रूट कॉस्ट ठीक है अब ये कौन
- 7:57:40सी क्वेरी की बात हो रही है यहां पर तो ये
- 7:57:43मेरे हिसाब से यहां पर ऑथ कंट्रोलर 44
- 7:57:46अच्छा समझ गया मैं क्या इशू हुआ है तो एक
- 7:57:49ही ईमेल से हमने क्रिएट कर रखी है मल्टीपल
- 7:57:54यूज यूज़र्स हमने क्या कर रखा है? एक ही
- 7:57:57ईमेल से हमने क्रिएट कर रखी है अ मल्टीपल
- 7:58:00यूज़र्स। और यह प्रॉब्लम इसीलिए है अगर आप
- 7:58:03ईमेल्स का इस्तेमाल कर रहे हो ऑथेंटिकेशन
- 7:58:05में तो आप चाहोगे कि आपकी जो ईमेल्स है वो
- 7:58:08यूनिक रहे। ठीक है? तो मैं क्या करूंगा?
- 7:58:09देखिए डेटाबेस लेवल पे एक मैं कंडीशन ऐड
- 7:58:12कर रहा हूं कि कॉलम ये कॉलम एनोटेशन है जो
- 7:58:15आप जीपीए में इस्तेमाल कर सकते हो @ कॉलम
- 7:58:17और यहां पर देखिए आप काफी सारी चीजें लिख
- 7:58:19सकते हो। तो देखिए मैं यहां पर अगर ऐसे
- 7:58:21ऐसे लिखता हूं तो देखिए अह यूनिक, नलेबल,
- 7:58:24इंसर्टेबल, अपडेटेबल यह सारे पैरामीटर्स
- 7:58:27हैं। आप लेंथ भी डिफाइन कर सकते हो। ये
- 7:58:28सारी चीजें आप डिफाइन कर सकते हो। तो कॉलम
- 7:58:30लेवल पे अगर कोई कंस्ट्रेंट डिफाइन करना
- 7:58:31है आपको कॉलम एनोटेशन का इस्तेमाल करना
- 7:58:33है। ठीक है? अब इसमें से मैं यूनिक का
- 7:58:35इस्तेमाल करना चाहता हूं। तो मैं कहूंगा
- 7:58:36यूनिक। ठीक है? यूनिक = ट्रू। इतना मैंने
- 7:58:40लिख दिया यूनिक = ट्रू। तो अब ये क्या मेक
- 7:58:42श्योर करेगा कि जो यूजर है वो यूनिक रहे।
- 7:58:45ठीक है? ये मेक श्योर करेगा। लेकिन मुझे
- 7:58:47क्या लगता है पता है? मुझे लगता है कि ये
- 7:58:49सारे चलो डेटा तो ठीक है। मुझे ऐसा लगता
- 7:58:52है कि ये सारी जो टेबल्स हैं ना मुझे इसको
- 7:58:54ड्रॉप कर देना चाहिए फिलहाल के लिए। तो
- 7:58:56मैं तीनों टेबल को ड्रॉप कर देता हूं
- 7:58:57फिटनेस डेमो में से। ठीक है? तो अभी
- 7:58:59फिटनेस डेमो में कुछ भी नहीं है। ठीक है?
- 7:59:01कुछ भी नहीं है एक हिसाब से। और यहां पर
- 7:59:03आता हूं और एप्लीकेशन को स्टॉप करता हूं
- 7:59:05और फिर दोबारा रिस्टार्ट करता हूं।
- 7:59:07क्योंकि देखिए मैंने टेबल लेवल
- 7:59:08कंस्ट्रेंट्स चेंज किए और ऑलरेडी मैंने
- 7:59:10डुप्लीकेट वैल्यूज़ डाल रखी है। तो दिक्कत
- 7:59:13है। करेक्ट? तो देखिए यह सारी की सारी
- 7:59:15टेबल्स क्रिएट हो गई है। यहां पर यहां पर
- 7:59:17आओगे आप। पूरा का पूरा रिसेट हो गया था।
- 7:59:19यूजर भी क्रिएट हो चुकी है। ठीक है? अब
- 7:59:21मैं एक पहला यूजर को रजिस्टर करता हूं। तो
- 7:59:24यहां पर यूजर तो एक्सिस्ट नहीं करता। तो
- 7:59:25पहले यह यूजर को रजिस्टर करेंगे हम। ये
- 7:59:27यूजर रजिस्टर हो चुकी है। आप डेटाबेस में
- 7:59:29आके चेक भी कर सकते हो यूजर रजिस्टर हुई
- 7:59:31है या नहीं। ठीक है? देखिए ये यूजर
- 7:59:33रजिस्टर हो चुकी है। ठीक है? पासवर्ड भी#श
- 7:59:36का अ यानी कि एनकोडेड है। तो यहां पर आ
- 7:59:39जाऊंगा मैं और ये तो हो चुका है। और यहां
- 7:59:42पर लॉग इन करने को कोशिश करेंगे। लॉग इन
- 7:59:44करता हूं मैं। अच्छा लॉग इन किया मैंने तो
- 7:59:47401 अन ऑथोराइज्ड और अब क्या हो गया?
- 7:59:50एनकोडेड पासवर्ड डज नॉट लुक लाइक अ
- 7:59:53बिक्रिप्ट। अच्छा ये क्यों हो गया? अब
- 7:59:56यहां पर ठीक है? तो यहां पर देखते हैं। अब
- 7:59:58देखिए यहां पर ऑथ कंट्रोलर में मैं जब
- 8:00:00यूजर को सेव कर रहा हूं, रजिस्टर कर रहा
- 8:00:02हूं। तो यहां पर पासवर्ड रिक्वेस्ट डॉट
- 8:00:04गेट पासवर्ड कर रहा हूं। ठीक है? और फिर
- 8:00:06यहां पर मैं यूजर को अच्छा मैं सेव कर रहा
- 8:00:10हूं। अच्छा यहां पर देखिए पासवर्ड को मैं
- 8:00:12सेव कर रहा हूं। रिक्वेस्ट डॉट गेट
- 8:00:13पासवर्ड। ठीक है? पासवर्ड कहां पे है?
- 8:00:15पासवर्ड। तो पासवर्ड जो है प्लेन टेक्स्ट
- 8:00:17में सेव हो रहा है। करेक्ट। पासवर्ड एनकोड
- 8:00:19कर रहे हैं हम। जी नहीं बिल्कुल नहीं कर
- 8:00:21रहे। और पासवर्ड कैसे सेव हो रहा है?
- 8:00:23प्लेन टेक्स्ट में सेव हो रहा है। तो हमें
- 8:00:25क्या करना चाहिए? सबसे पहले तो सेव करते
- 8:00:27वक्त भी पासवर्ड को एनकोड करना है। उम्मीद
- 8:00:29करता हूं समझ गए आप ये चल क्यों नहीं रहा
- 8:00:31है? क्योंकि जो पासवर्ड कंपैरिजन हम कर
- 8:00:33रहे हैं वो एनकोडेड पासवर्ड के अगेंस्ट कर
- 8:00:35रहे हैं। देखिए यहां पर मैं एक और बार
- 8:00:36आपको बता देता हूं। ऑथ कंट्रोलर में जिनको
- 8:00:38समझ में नहीं आया। ऑथ कंट्रोलर में हम मैच
- 8:00:40कर रहे हैं ये रॉ पासवर्ड वर्सेस एनकोडेड
- 8:00:42पासवर्ड। लेकिन डेटाबेस से हमें इनकोडेड
- 8:00:44पासवर्ड नहीं मिल रहा है क्योंकि डेटाबेस
- 8:00:45में हम इनकोडेड पासवर्ड स्टोर ही नहीं कर
- 8:00:47रहे। एनकोडेड पासवर्ड को स्टोर करना है।
- 8:00:49ठीक है? हम प्लेन टेक्स्ट में इस तरीके से
- 8:00:52पासवर्ड स्टोर नहीं कर सकते। करेक्ट?
- 8:00:53सिक्योरिटी प्रिंसिपल्स के अगेंस्ट है। तो
- 8:00:56यहां पर आ जाएंगे हम अ लॉग इन अ कहां पर
- 8:00:59थे हम? हमारे पास तो हम ऑथ कंट्रोलर से गए
- 8:01:02थे यूजर सर्विस में। यूजर सर्विस में हम
- 8:01:05यहां पर पासवर्ड को स्टोर कर रहे हैं। तो
- 8:01:07मैं क्या करूंगा? सबसे पहले तो मुझे
- 8:01:08एनकोडर लगेगा यहां पर। तो मैं कहूंगा
- 8:01:09प्राइवेट फाइनल पासवर्ड एनकोडर। और
- 8:01:12पासवर्ड एनकोडर का बीम जो है मैंने ऑलरेडी
- 8:01:14बना रखा है। ठीक है? और यहां पर पासवर्ड
- 8:01:17को मैं स्टोर करने से पहले मैं कहूंगा
- 8:01:19इसको कट कर लूंगा। इसको कहूंगा पासवर्ड
- 8:01:21एनकोडर डॉट एनकोड और ये जो पासवर्ड है
- 8:01:24इसको पास कर दूंगा। बस इतना ही करूंगा
- 8:01:26मैं। ठीक है? अब मैं क्या करूंगा? यहां पर
- 8:01:28आ जाता हूं। ये जो टेबल है इसको मैं
- 8:01:30ट्रंकेट कर देता हूं। ट्रंकेट टेबल।
- 8:01:32ट्रंकेट का मतलब है सारा का सारा डेटा
- 8:01:34डिलीट हो जाएगा। अच्छा ये डिलीट नहीं
- 8:01:35होगा। तो एक काम करता हूं। मैं रिसेट ही
- 8:01:37कर देता हूं। मुझे इस पर डिलीट करने जा
- 8:01:40रहा हूं। तो वो बोल रहा है कि अ
- 8:01:42कंस्ट्रेंट्स है कुछ। ठीक है? तो मैं क्या
- 8:01:44करता हूं? ड्रॉप कर देता हूं सारे के सारे
- 8:01:46डेटाबेस को क्योंकि डेटा वैसे भी हमने नया
- 8:01:48ही डाला था। फिर से रिस्टार्ट करता हूं
- 8:01:50ताकि फिर से नया स्कीमा बने। ठीक है?
- 8:01:53देखिए नया स्कीमा बन रहा है पूरा का पूरा
- 8:01:56नया। और यहां पर अगर आप आते हो तो यहां पर
- 8:01:58आपको रिफ्रेश करना है और यूजर बना बनाया
- 8:02:00दिखेगा यहां पर। ठीक है? और यूजर में अब
- 8:02:03कोई डेटा नहीं दिखेगा आपको। ठीक है?
- 8:02:04क्योंकि आपने पूरा ट्रंकेट किया हुआ था।
- 8:02:06अब मैं यहां पर सबसे पहले रजिस्टर करूंगा
- 8:02:08यूजर को। जैसे ही रजिस्टर करता हूं तो
- 8:02:10देखिए ये जो पासवर्ड है ये पूरा एनकोडेड
- 8:02:12पासवर्ड मिल रहा है मुझे और यहां पर
- 8:02:13डेटाबेस में भी अगर आप देखते हो यहां पर
- 8:02:16आप रन करके देखिए देखिए ये जो पासवर्ड है
- 8:02:18एनकोडेड है ठीक है यहां पर अगर आप आओगे अब
- 8:02:22लॉग इन करने की कोशिश कीजिए इस तरीके से
- 8:02:24लॉग इन आप करते हो अच्छा फॉरबिडन अभी भी आ
- 8:02:26रहा है अब ये फॉरबिडन क्यों आ रहा है फिर
- 8:02:28से कुछ एरर आ गई यहां पर ठीक है एरर्स
- 8:02:30देखिए एरर्स से आप बच नहीं सकते हो ठीक है
- 8:02:33एरर्स क्या आ रही है वो देख लेते हैं हम
- 8:02:35ठीक है एरर आ रही है हमें कैन नॉट इनवोक
- 8:02:37यूजर डॉट रोल डॉट नेम बिकॉज़ रिटर्न वैल्यू
- 8:02:41इसके रिटर्न वैल्यू नल है। अच्छा ऐसे
- 8:02:44क्यों नल है? ये यूजर की रोल स्टोर नहीं
- 8:02:48हो रही है क्या? यहां पर अगर आप आओगे तो
- 8:02:51ये जो यूजर की अच्छा यूजर की रोल ही नहीं
- 8:02:55स्टोर हो रही है। यहां पर यूजर रोल यहां
- 8:02:57पर दिखाई नहीं दे रही है। लेकिन हमने एक
- 8:02:58डिफ़ॉल्ट वैल्यू तो ऐड कर रखी है। तो
- 8:03:00डिफ़ॉल्ट वैल्यू अच्छा डिफ़ॉल्ट वैल्यू नल
- 8:03:02है यहां पर। ये देखिए डिफ़ॉल्ट वैल्यू जो
- 8:03:04जा रही है वो नल जा रही है डेटाबेस में।
- 8:03:06अब ये डिफ़ॉल्ट वैल्यू नल क्यों जा रही है
- 8:03:08डेटाबेस में? तो ये देखने की जरूरत है
- 8:03:10हमें यहां पर। तो हम क्या करेंगे? यूजर
- 8:03:12सर्विस में आ जाएंगे। यहां पर हम यूजर
- 8:03:14स्टोर कर रहे हैं। करेक्ट? यूजर को क्रिएट
- 8:03:17करके मैं यूजर को एक हिसाब से यहां पर सेव
- 8:03:21कर रहा हूं। ठीक है? तो दिक्कत ये है। मैं
- 8:03:24यहां पर अ ये सेट नहीं कर रहा हूं। यहां
- 8:03:28पर आप देखोगे यहां पर मैंने रोल सेट नहीं
- 8:03:31किया हुआ है। क्या ये रीज़न है? 1 मिनट।
- 8:03:34मैं देख लेता हूं। जी हां, शायद यही रीज़न
- 8:03:38है। ठीक है? यही रीज़न है। तो, यहां पर
- 8:03:41मुझे रोल भी सेट कर लेना चाहिए। ठीक है?
- 8:03:43डॉट रोल इस तरीके से। और यहां पर मैं
- 8:03:46कहूंगा रिक्वेस्ट डॉट गेट रोल। अगर
- 8:03:48रिक्वेस्ट अच्छा, रिक्वेस्ट में रोल ही
- 8:03:51नहीं ले रहे हम। ठीक है? रिक्वेस्ट में
- 8:03:52रोल नहीं ले रहे। तो मैं क्या करता हूं?
- 8:03:54यहां पर रजिस्टर रिक्वेस्ट में आ जाता
- 8:03:55हूं। और यहां पर रोल भी ऐड कर देता हूं।
- 8:03:57इसको डुप्लीकेट प्राइवेट स्ट्रिंग रोल ऐसे
- 8:03:59कर देता हूं। ठीक है? तो अगर यहां पर आप
- 8:04:02आओगे रजिस्टर रिक्वेस्ट में तो यहां पर
- 8:04:04गेट रोल कीजिए। गेट रोल अगर यह नॉट इक्वल
- 8:04:08टू नल है।
- 8:04:10इसको मैं यहां पर नहीं लिखता हूं। ये पूरा
- 8:04:12लॉजिक मैं क्या करूंगा? देखिए
- 8:04:14यहां पर लिखता हूं रोल और इज़ इक्वल टू अगर
- 8:04:17रिक्वेस्ट में कोई रोल आ रहा है। ठीक है?
- 8:04:21कोई रोल आ रहा है तो वो वाला रोल को
- 8:04:24इस्तेमाल कीजिए। इस तरीके से तो आप क्या
- 8:04:26कीजिए? अह रिक्वेस्ट डॉट गेट रोल ऐसे
- 8:04:29कीजिए। और अगर नहीं आ रहा है तो फिर आपको
- 8:04:33क्या करना है? यूजर रोल का इस्तेमाल करना
- 8:04:35है जो हमने क्रिएट किया हुआ है। और एक
- 8:04:37डिफॉल्ट रोल जो है यूजर का उसको स्टोर कर
- 8:04:40देना है ऐसे। ठीक है? इस तरीके से कर देना
- 8:04:44है आपको।
- 8:04:46स्ट्रिंग पास करना चाहिए कि अच्छा
- 8:04:48स्ट्रिंग पास नहीं करना चाहिए यहां पर
- 8:04:50मेरे हिसाब से। स्ट्रिंग पास करना चाहिए।
- 8:04:531 मिनट मुझे देख लेनी। अच्छा ये स्ट्रिंग
- 8:04:54नहीं रहेगा। ये रहेगा यूजर रोल का टाइप।
- 8:04:56देखिए यूजर रोल का टाइप रहेगा। तो यहां पर
- 8:04:58यह यूजर रोल का टाइप रहेगा इस तरीके से तो
- 8:05:02रिक्वेस्ट डॉट गेट रोल अगर गेट रोल
- 8:05:06रिक्वेस्ट डॉट गेट रोल अच्छा तो यहां पर
- 8:05:10रजिस्टर रिक्वेस्ट में अगर आप आते हो
- 8:05:12रजिस्टर रिक्वेस्ट तो यहां पर आपको लिखना
- 8:05:16होगा स्ट्रिंग नहीं ये होगा यूजर रोल ऐसे
- 8:05:20इस तरीके से ठीक है अब यहां पर अगर आप आते
- 8:05:22हो तो देखिए रिक्वेस्ट डॉट गेट रोल अगर यह
- 8:05:25नल है तो फिर रोल पास कर दीजिए ऐसे से तो
- 8:05:28रोल एक हिसाब से रिक्वेस्ट में मैंडेटरी
- 8:05:30भी नहीं है। ठीक है? अगर नहीं पास करता है
- 8:05:33कोई यूजर तो आप यहां पर एक डिफ़ॉल्ट रोल
- 8:05:35यूजर का असाइन कर सकते हो और फिर उसे यहां
- 8:05:37पर सेट कर दे रहे हो। ठीक है? उतना आप कर
- 8:05:39रहे हो। और मैं अब क्या करूंगा? फिर से
- 8:05:41हमें ट्रंकेट करने की जरूरत है। सब कुछ
- 8:05:43ड्रॉप कर देंगे हम। ड्रॉप कर दूंगा। ड्रॉप
- 8:05:45नाउ। ठीक है? और इसको मैं दोबारा
- 8:05:47रिस्टार्ट करूंगा। अब रोल एक्चुअली डेटबेस
- 8:05:50में स्टोर होना चाहिए। ठीक है? तो हम चेक
- 8:05:52करेंगे ये। ठीक है? हो सकता है और भी एरर
- 8:05:54आए दोस्तों। देखिए एक-एक करके हमें डिब
- 8:05:55करना है एरर्स को। ऐसे घबराना नहीं है
- 8:05:57एरर्स को और मैं इसे बिल्कुल कट नहीं
- 8:05:59करूंगा। ठीक है? पब्लिश करते वक्त इस
- 8:06:01वीडियो को कट नहीं करूंगा। एडिट नहीं
- 8:06:02करूंगा क्योंकि यह जो डिबगिंग प्रोसेस है
- 8:06:04यह भी समझना जरूरी है। क्लीन क्लीन सब कुछ
- 8:06:07सब सही चल रहा है। वैसे तो आपको देखने
- 8:06:10काफी जगह मिल जाएगा। ठीक है? लेकिन मेरा
- 8:06:12स्टाइल वो नहीं है। मैं आपको एरर आते हैं
- 8:06:13वो भी दिखाता हूं। इसको सेव करूंगा। तो
- 8:06:16देखिए अब यह यूजर क्रिएट हो चुका है। यूजर
- 8:06:19क्रिएट होने के बाद यहां पर हम अगर सर्च
- 8:06:22करते हैं यूजर को तो यहां पर देखिए यूजर
- 8:06:24का रोल सेव हो चुका है। पहले नल था ये
- 8:06:27करेक्ट। अब हम जो है यहां से पोस्टमैन से
- 8:06:31लॉगिन की रिक्वेस्ट करते हैं। लॉग इन की
- 8:06:33रिक्वेस्ट अगर मैं करता हूं। अच्छा देखिए
- 8:06:34अब डाटा आ गया हमारे पास। लॉग इन की
- 8:06:37रिक्वेस्ट अगर मैं मैंने की तो देखिए मुझे
- 8:06:39टोकन मिल चुका है। और यह टोकन को मैं अगर
- 8:06:41कॉपी करता हूं। टोकन को कॉपी करते हैं।
- 8:06:43यहां पर आ जाते हैं। यहां पर हम जाएंगे
- 8:06:45jw.io
- 8:06:46यह jw की ऑफिशियल वेबसाइट है और यहां पर
- 8:06:49इसके लिए आ रहे हैं क्योंकि हम टोकन को
- 8:06:50डिबग कर पाए। तो ये टोकन को मैंने पेस्ट
- 8:06:52कर दिया। और यहां पर आप देखिए ये
- 8:06:54एल्गोरिदम यूज़ किया है। ठीक है? एल्गोरिदम
- 8:06:56है HS 256 और यहां पर आप देखोगे तो ये
- 8:07:00सब्जेक्ट में हमने डाला है यूजर आईडी।
- 8:07:02क्या ये यूजर आईडी सही है? 9A8B तो यहां
- 8:07:06पर मैं देख लेता हूं डेटाबेस में 9A8B।
- 8:07:08देखिए यूजर आईडी सही जा रही है यूजर आईडी।
- 8:07:10करेक्ट। यूजर आईडी जा रही है। हमारे पास
- 8:07:13रोल्स भी है। रोल्स इस तरीके से स्टोर हो
- 8:07:15रही है। अथॉरिटी कोलन यूजर अच्छा इसको
- 8:07:18बढ़िया तरीके से भी स्टोर कर सकते हैं।
- 8:07:20इसको थोड़ा इंप्रूव कर सकते हैं। और यहां
- 8:07:22पर देखिए अ क्या बोलते हैं इसको? इशूड एट
- 8:07:26टाइम और एक्सपायरेशन टाइम ये दोनों सेव्ड
- 8:07:28है। और ये है हमारी सीक्रेट। ठीक है? तो
- 8:07:32एक हिसाब से ये स्टोर हो रही है। ठीक है?
- 8:07:34ये अथॉरिटीज़ की की आ रही है। तो इसको एक
- 8:07:35सिंपल तरीके से हम फिक्स कर सकते हैं।
- 8:07:37यहां पर हमने क्या किया है? सिंपल
- 8:07:38ग्रांटेड अथॉरिटी की लिस्ट बनाई है। तो
- 8:07:40इसको हटा देते हैं। सिंपल ग्रांटेड
- 8:07:41अथॉरिटी जरूरी नहीं है। इसको डायरेक्टली
- 8:07:44लिस्ट ऑफ रोल बना देते हैं। ठीक है? और
- 8:07:45इसको रन करके देखते हैं। ठीक है? देखते
- 8:07:47हैं कि जो टोकन इशू होता है उसमें फिर इस
- 8:07:49तरीके से नॉर्मल अरे के फॉर्म में रोल
- 8:07:52स्टोर है या नहीं। ठीक है? ये देखिए ये
- 8:07:55पूरा रन हो गया। अब मैं फिर से लॉग इन की
- 8:07:57क्वरी चलाता हूं। और यहां पर यह पूरा का
- 8:08:00पूरा जो टोकन है इसको हम कॉपी कर लेंगे।
- 8:08:02टोकन कॉपी कर लिया। यहां पर आ जाएंगे।
- 8:08:05इसको पेस्ट कर देंगे। तो देखिए यह ठीक हो
- 8:08:07गया। ठीक है? अथॉरिटी की जो की थी वह हट
- 8:08:10गई है। तो अभी पार्स करते वक्त थोड़ी
- 8:08:11आसानी हो जाएगी। ठीक है? उम्मीद करता हूं
- 8:08:13यह हेल्पफुल रहा। ठीक है? मैं आपको एक बार
- 8:08:16और समझा देता हूं। एक्चुअली में हुआ क्या
- 8:08:18है यहां पर। ठीक है? पूरा का पूरा चीज
- 8:08:21समझा देता हूं। और हम जो है कंट्रोलर को
- 8:08:23भी थोड़ा रिफैक्टर करेंगे यहां पर। ये जो
- 8:08:25सारी चीजें हैं इसको हम सर्विस में मूव कर
- 8:08:27सकते हैं। ठीक है? देखिए सबसे पहले तो अ
- 8:08:30जो हमने फंक्शनैलिटी बनाई थी वो है
- 8:08:32रजिस्टर की फंक्शनैलिटी। रजिस्टर की
- 8:08:33फंक्शनैलिटी स्ट्रेट फॉरवर्ड है। हम जो
- 8:08:35डेटा है वो एक डीटीओ के थ्रू ले रहे हैं।
- 8:08:38ठीक है? और यहां पर जा रहे हैं। एक हिसाब
- 8:08:40से मैं ना सब चीजें बंद कर देता हूं।
- 8:08:41क्लोज ऑल टैब्स। ठीक है? और यहां पर सिर्फ
- 8:08:43कंट्रोलर खोल लेता हूं ताकि थोड़ा नॉइज़ कम
- 8:08:45रहे। ठीक है? तो देखिए यहां पर डेटा हम ले
- 8:08:47रहे हैं रजिस्टर एंड पॉइंट में और फिर
- 8:08:49सर्विस की मदद से हम उसको स्टोर कर रहे
- 8:08:51हैं डेटाबेस में। अब यहां पर एक चीज़ आप
- 8:08:53समझिए। हमारा पहले हमने पासवर्ड को एनकोड
- 8:08:56नहीं कर रखा था। यानी कि पासवर्ड स्टोर हो
- 8:08:58रहा था प्लेन टेक्स्ट में। तो हमने वो
- 8:09:00एनकोडिंग लगाई सबसे पहले। ठीक है? ताकि जो
- 8:09:02पासवर्ड स्टोर हो रहा है वो एनकोडेड फॉर्म
- 8:09:04में स्टोर हो डेटाबेस में। वो हमने किया
- 8:09:06सबसे पहले। अब यह हमने इसके लिए किया
- 8:09:09क्योंकि हमारा जो पासवर्ड आएगा वो अ वो जो
- 8:09:12पासवर्ड है वो रॉ होगा और हम एनकोडर का
- 8:09:14इस्तेमाल कर रहे हैं। और ये इन जनरल बेटर
- 8:09:16प्रैक्टिस है। ठीक है? रोल्स को हमने
- 8:09:18इंट्रोड्यूस किया है यहां पर। रोल्स को
- 8:09:20इंट्रोड्यूस किया है। तो बेसिकली एक
- 8:09:21डिफ़ॉल्ट रोल लगाने की जरूरत पड़ गई। यहां
- 8:09:23पर यहां पर अगर हमें यूजर जो है वो रोल की
- 8:09:26इनेशन रिक्वेस्ट के साथ देता नहीं है। तो
- 8:09:28हमने वो सेट किया और यहां पर रोल को सेट
- 8:09:30कर लिया। ठीक है? और यह सारी चीजें हमने
- 8:09:32मॉडिफाई की है मॉडल में भी। हमने रोल को
- 8:09:35यहां पर ऐड किया है। और रोल हमने अभी
- 8:09:37फिलहाल दो टाइप के रखे हैं। यूजर और
- 8:09:38एडमिन। ठीक है? फ्यूचर में कुछ एडमिन
- 8:09:41एपीआई आती है तो हम उसके लिए अ एडमिन रोल
- 8:09:44का इस्तेमाल कर सकते हैं। ठीक है? तो ये
- 8:09:45एक हिसाब से फ्यूचर प्रूफ बन गया
- 8:09:47एप्लीकेशन। अब यहां पर लॉगिन करते वक्त।
- 8:09:50ठीक है? लॉग इन करते वक्त मैंने इस्तेमाल
- 8:09:51किया है जीW यूटिल्स का जो कि एक हिसाब से
- 8:09:54एक यूटिलिटी क्लास है जिसमें सारे के सारे
- 8:09:57मेथड्स दिए गए हैं। जिसके जरिए मैं टोकन
- 8:09:59को जनरेट कर सकता हूं। वैलिडेट कर सकता
- 8:10:01हूं, हेडर्स से रिट्रीव कर सकता हूं। JW
- 8:10:03के साथ काम करने के लिए जो भी मेथड्स
- 8:10:05चाहिए वो मुझे सारे के सारे मेथड्स यहां
- 8:10:06पर मिलेंगे। ठीक है? फिलहाल हम एक ही मेथड
- 8:10:08इस्तेमाल कर रहे हैं। जनरेट टोकन क्योंकि
- 8:10:10टोकन इशू कर रहे हैं हम लोग। तो यहां पर
- 8:10:12आओगे आप लॉग इन पर। लॉग इन पर हम क्या कर
- 8:10:16रहे हैं? हम यहां पर अच्छा ये ऑथेंटिकेशन
- 8:10:17के ऑब्जेक्ट की भी जरूरत नहीं है यहां पर।
- 8:10:19ठीक है? तो लॉग इन पर हम क्या कर रहे हैं?
- 8:10:21लॉग इन रिक्वेस्ट के फॉर्म में डेटा ले
- 8:10:23रहे हैं। ठीक है? लॉग इन रिक्वेस्ट क्या
- 8:10:24है? ईमेल और पासवर्ड। तो हमने हमारी
- 8:10:26एप्लीकेशन में बनाया है ईमेल और पासवर्ड
- 8:10:28बेस्ड ऑथेंटिकेशन। हमने अह हमारे
- 8:10:32एप्लीकेशन में यूजरनेम और पासवर्ड बेस्ड
- 8:10:34ऑथेंटिकेशन नहीं बनाया। ठीक है? ईमेल और
- 8:10:36पासवर्ड बेस्ड बनाया। जो डिफ़ॉल्ट स्प्रिंग
- 8:10:38सिक्योरिटी काम करता है वो काम करता है
- 8:10:40यूजरनेम और पासवर्ड बेस्ड ऑथेंटिकेशन पर।
- 8:10:43तो अगर आप कस्ट कस्टम मॉडल बना रहे हो।
- 8:10:45अगर आप इनबिल्ट मॉडल का इस्तेमाल करते हो
- 8:10:47तो आप यूजरनेम पासवर्ड ऑथेंटिकेशन का
- 8:10:50इस्तेमाल करना होगा आपको। क्योंकि जो
- 8:10:51स्प्रिंग सिक्योरिटी का मैकेनिज़्म है वो
- 8:10:52यूजरनेम और पासवर्ड पर चलता है। लेकिन मैं
- 8:10:54इस्तेमाल करना चाह रहा था ईमेल का। तो
- 8:10:56इसके लिए मैंने ईमेल ले लिया लॉग इन
- 8:10:57रिक्वेस्ट में और ईमेल मैंने इसलिए लिया
- 8:10:59क्योंकि हमारे पास जो मॉडल है उसमें ईमेल
- 8:11:01की इनेशन है। ठीक है? अब अगर आप यूजर को
- 8:11:04ईमेल के अगेंस्ट ऑथेंटिकेट कर रहे हो तो
- 8:11:06ईमेल आपके डेटाबेस में यूनिक होनी चाहिए।
- 8:11:09करेक्ट? तो इसके लिए हमने ये कंस्ट्रेंट
- 8:11:11लगा दी ईमेल पर कि अगर डुप्लीकेट ईमेल आए
- 8:11:13तो उसको सीधा रिजेक्ट कर दो। तो ईमेल होनी
- 8:11:16है यूनिक अब डेटाबेस में। ठीक है? ये हमने
- 8:11:18कर लिया। देखिए यह सारी चीजें ना जरूरी
- 8:11:21है। आप अगर यूजरनेम मान लीजिए मैं ईमेल
- 8:11:23नहीं कस्टम यूजर मॉडल में भी यूजरनेम रख
- 8:11:25रहा हूं। तो ऑथेंटिकेशन अगर आप यूजरनेम के
- 8:11:28अगेंस्ट कर रहे हो। ठीक है? आप यूजर से
- 8:11:30एक्सेप्ट कर रहे हो, एक्सपेक्ट कर रहे हो
- 8:11:32कि वो यूजरनेम भेजे और आप यूजरनेम के
- 8:11:35अगेंस्ट चेक कर रहे हो डेटाबेस में वो
- 8:11:36यूजर है या नहीं। आपको मल्टीपल रिकॉर्ड्स
- 8:11:38मिलेगा। अगर आपने उसको यूनिक मार्क नहीं
- 8:11:40किया है तो। तो जो भी की आप इस्तेमाल कर
- 8:11:42रहे हो लॉग इन के लिए, ऑथेंटिकेशन के लिए
- 8:11:44उसे आपको यूनिक रखना है। वो चीजें काफी
- 8:11:47आसान हो जाती है। ठीक है? तो मैंने ईमेल
- 8:11:48रखा है यहां पर। ठीक है? जो भी आप की रखते
- 8:11:50हो, मोबाइल नंबर रखते हैं काफी लोग। आजकल
- 8:11:52तो मोबाइल बेस्ड ओटीपी भी चलता है। तो
- 8:11:55मोबाइल नंबर रखते हैं। मैंने ईमेल और
- 8:11:56पासवर्ड रखा है। मोबाइल और पासवर्ड भी रख
- 8:11:58सकते हो आप। ठीक है? यहां पर ये रखा है और
- 8:12:01इसको इसके लिए यूनिक किया है। उम्मीद करता
- 8:12:03हूं ये यूनिक क्यों किया है? ये समझ में आ
- 8:12:04गया। अब यहां पर आकर मैंने क्या किया है?
- 8:12:06यूजर को सबसे पहले तो डेटबेस से रिट्रीव
- 8:12:08किया है। ठीक है? यूजर मिलता है तो ठीक
- 8:12:10है। नहीं मिलता है तो मैं रिटर्न कर रहा
- 8:12:12हूं एरर। फिर मैंने पासवर्ड एनकोडर के
- 8:12:14थ्रू जो लॉग इन रिक्वेस्ट में जो रॉ
- 8:12:16पासवर्ड आई है उसको मैंने मैच किया है जो
- 8:12:19इंक्रिप्टेड पासवर्ड है डेटाबेस में उससे
- 8:12:21और फिर मैंने जनरेट किया है टोकन ठीक है
- 8:12:23टोकन जनरेट करके मैंने टोकन को सिंपली
- 8:12:25रिटर्न कर दिया है यूजर डिटेल्स के साथ
- 8:12:28ठीक है और बस यही रहा है पूरा पूरा का
- 8:12:30पूरा लॉजिक अब हम क्या करेंगे यहां पर जो
- 8:12:33लॉग इन की जो रिक्वेस्ट है सॉरी लॉग इन का
- 8:12:35जो मेथड है उसको थोड़ा रिफैक्टर करेंगे
- 8:12:37यहां पे काफी सारी चीजें जो सर्विस में
- 8:12:39होनी चाहिए जैसे कि ये पूरी की पूरी चीज
- 8:12:41होनी चाहिए सर्विस दिस लेयर पर। ठीक है?
- 8:12:44तो मैं क्या करूंगा? इसको एक हिसाब से
- 8:12:45कॉपी कर लूंगा। ठीक है? और यहां पर कहूंगा
- 8:12:48अ बुलियन। यहां से सर्विस से मैं लूंगा
- 8:12:50बुलियन। बुलियन अ
- 8:12:54यहां पर हम क्या कर रहे हैं? ईमेल को
- 8:12:56फाइंड कर रहे हैं और पासवर्ड को अ मैच कर
- 8:12:58रहे हैं। ठीक है? तो इज़ ऑथेंटिकेटेड करके
- 8:13:03एक बुलियन ले लूंगा यहां पर। ठीक है? और
- 8:13:05यहां पर मैं करूंगा यूजर सर्विस का
- 8:13:06इस्तेमाल। सॉरी यूजर रिपॉज़िटरी नहीं यूजर
- 8:13:08सर्विस डॉट और यहां पर करूंगा अ लॉगिन या
- 8:13:12ऑथेंटिकेट या लॉग इन लिख देता हूं या लॉग
- 8:13:15इन यहां पर क्रिएटेड है तो मैं कहूंगा
- 8:13:17ऑथेंटिकेट ऐसे ठीक है और यहां पर मैं पास
- 8:13:21कर दूंगा जो हमारी
- 8:13:24सर्विस है ठीक है उसमें मैं पास कर दूंगा
- 8:13:27लॉग इन रिक्वेस्ट तो रिक्वेस्ट पास कर
- 8:13:29दूंगा इस तरीके से ठीक है अब यहां पर मैं
- 8:13:32इसको क्रिएट कर दूंगा मेथड को यहां पर और
- 8:13:35यहां पर यह कर दूंगा ठीक ठीक है? इस ये जो
- 8:13:37कोड था हमारा जिसमें हम रिपॉज़िटरी का
- 8:13:39इस्तेमाल कर रहे थे उसको यहां पर लिख
- 8:13:40दिया। ठीक है? अब यहां पर अ देखिए अगर
- 8:13:43यूजर नल है तो मैं यहां से रिटर्न करूंगा।
- 8:13:46मैं यहां से क्या रिटर्न करूंगा? फॉल्स।
- 8:13:48क्योंकि यूजर ही नहीं मिला है। ठीक है? और
- 8:13:50अगर पासवर्ड एनकोडर और ये मैच नहीं हो रहे
- 8:13:52तो मैं यहां से क्या रिटर्न करूंगा?
- 8:13:54फॉल्स। ठीक है? दोनों जगह से फॉल्स रिटर्न
- 8:13:56करूंगा। और यह हो गई पाथ। और यहां पर मैं
- 8:14:00रिटर्न करूंगा रिटर्न फॉल्स।
- 8:14:04रिटर्न ट्रू कर दूंगा यहां पर। ठीक है? एक
- 8:14:07के हिसाब से। ठीक है? या तो फिर एक और
- 8:14:09लेवल का इंप्रूवमेंट हम कर सकते हैं। मैं
- 8:14:11यहां पर इसको थोड़ा सोच रहा था कि ये
- 8:14:13बुलियन बेस्ड रखना चाहिए या कैसा रखना
- 8:14:14चाहिए? तो यहां पर देखिए हम बुलियन रिटर्न
- 8:14:16कर रहे हैं। यहां पर मैं सोच रहा हूं कि
- 8:14:17बुलियन रिटर्न ना करें और अगर हम
- 8:14:19एक्सेप्शन डायरेक्टली थ्रो करें तो वो
- 8:14:21बेटर हो सकता है। ठीक है? तो मैं यहां पर
- 8:14:22क्या करूंगा? यहां पर एक्सेप्शन बेटर
- 8:14:24एक्सेप्शन डायरेक्टली थ्रो कर देता हूं।
- 8:14:26एक रन टाइम एक्सेप्शन और यहां पर लिख देता
- 8:14:28हूं इनवैलिड क्रेडेंशियल्स। ठीक है? ऐसे
- 8:14:32क्रेडेंशियल्स और यहां पर अह
- 8:14:36यहां पर भी मैं लिख दूंगा इनवैलिड
- 8:14:37क्रेडेंशियल्स। तो यह रिटर्न फॉल्स की
- 8:14:39बजाय मैं लिख दूंगा थ्रू अ न्यू रन टाइम
- 8:14:43एक्सेप्शन इनवैलिड क्रेडेंशियल्स। ठीक है?
- 8:14:44और इसको यहां पर ना हम यूजर बुलियन रिटर्न
- 8:14:47नहीं करेंगे। यहां पर रिटर्न करते हैं
- 8:14:48यूजर का ऑब्जेक्ट। ये बेटर रहेगा। ठीक है?
- 8:14:51और यहां पर रिटर्न ट्रू के बजाय यूजर
- 8:14:53रिटर्न कर देंगे। तो जो कंट्रोलर है उसको
- 8:14:55यहां से यूजर की ऑब्जेक्ट रिट्रीव करके
- 8:14:58मिल रही है डेटाबेस से। करेक्ट?
- 8:15:01यूजर की जो ऑब्जेक्ट है वह रिट्रीव करके
- 8:15:03मिल रही है डेटाबेस से ना कि एक बुलियन
- 8:15:05वैल्यू। ठीक है? तो अगर हम यूजर रिटर्न कर
- 8:15:07रहे हैं यहां पर तो चीजें काफी सिंपलीफाइड
- 8:15:09हो जाती है। यहां पर है ना मुझे सिर्फ
- 8:15:11लिखना है यूजर और फिर यूजर को लेना है इस
- 8:15:14तरीके से। और ये जो लॉजिक है ये पूरा का
- 8:15:16पूरा लॉजिक ये मूव हो चुका है डेट अ सॉरी
- 8:15:19सर्विस लेयर में। तो इसको हटा देते हैं।
- 8:15:22ठीक है? अब कुछ बचा नहीं यहां पर। ठीक है?
- 8:15:24काफी सिंपल हो चुके हैं यहां के कोड।
- 8:15:26देखिए आप काफी सिंपल हो चुके हैं यहां के
- 8:15:28कोड। ठीक है? और यहां पर यह सिंपलीफाई हो
- 8:15:32चुका है। और यहां पर अब पासवर्ड एनकोडर की
- 8:15:35जरूरत नहीं है। ठीक है? एक हिसाब से
- 8:15:37रिपोज़िटरी की भी जरूरत नहीं है। ठीक है?
- 8:15:39तो अनवांटेड क्लासेस को हमने हटा दिया और
- 8:15:41यहां से अनवांटेड इंपोर्ट जो है उसे भी हम
- 8:15:44हटा देंगे।
- 8:15:46ठीक है? तो देखिए आपको समझ में आ गया हमने
- 8:15:48क्या इंप्रूवमेंट किया। देखिए हम हमने ना
- 8:15:50रिपॉज़िटरी लेयर का भी इस्तेमाल कंट्रोलर
- 8:15:53में किया था। एक हिसाब से कर सकते हो आप।
- 8:15:55अगर आपका कोड सिंपलीफाइड है। लेकिन मैं
- 8:15:57थोड़ा ऑर्गेनाइज़ रखना चाहता हूं डे वन से।
- 8:15:59तो मैंने क्या किया? स्टार्टिंग में तो
- 8:16:00रिपॉजिटरी लेयर यहीं पे लिखा ताकि आपको
- 8:16:02लॉजिक एक जगह पे दिखाई दे कि कैसे फ्लो हो
- 8:16:04रहा है क्योंकि हम कुछ नई चीज करने जा रहे
- 8:16:06थे। ठीक है? नई चीज करने जा रहे थे। फिर
- 8:16:09मैंने क्या किया है? अब जब चीजें चल रही
- 8:16:12है प्रॉपर्ली तो मैंने उन चीजों को
- 8:16:13रिफैक्टर करके सर्विस लेयर पर मूव किया
- 8:16:15है। अब सर्विस लेयर पर मैंने ये मेथड
- 8:16:17बनाया ऑथेंटिकेट करके जो कि डेटाबेस से
- 8:16:20फैच करेगा यूजर की इनेशन। जैसे ही उसको
- 8:16:23यूजर की इनेशन मिलती है। ठीक है? मिलती है
- 8:16:26तो वह रिटर्न कर देगा। अगर नहीं मिलती है,
- 8:16:28ठीक है? नहीं मिलती है यहां पर तो वो
- 8:16:30रिटर्न करेगा एक एक्सेप्शन। ठीक है? और
- 8:16:33पासवर्ड को भी मैच करेगा। अगर वो पासवर्ड
- 8:16:36मैच होता है तो सही है। आगे चला जाएगा।
- 8:16:38नहीं होता है तो यहीं पर एक्सेप्शन थ्रो
- 8:16:40कर देगा। और अगर ये दोनों कंडीशंस को पास
- 8:16:42कर जाता है वो तो यहां पर हम क्या कर रहे
- 8:16:45हैं? यूजर को रिटर्न कर रहे हैं। इसका
- 8:16:46मतलब अगर यहां से यूजर रिटर्न हो रहा है,
- 8:16:48इसका मतलब यूजर इज़ नॉट नल और पासवर्ड भी
- 8:16:51मैचिंग है जो डेटाबेस में है। अगर यहां से
- 8:16:53यूजर रिटर्न हो रहा है, तो ठीक है? अगर इन
- 8:16:55दोनों में से एक भी कंडीशन फेल्ड है तो
- 8:16:57मेथड ये जो सर्विस का मेथड है ऑथेंटिकेट
- 8:16:59वहीं पर ब्रेक हो जाएगा क्योंकि एक्सेप्शन
- 8:17:01थ्रो कर देगा। ठीक है? फिर यूजर की डिटेल
- 8:17:04यहां पर आ गई तो हमने उसका इस्तेमाल करके
- 8:17:05एक टोकन जनरेट कर लिया है और जो टोकन है
- 8:17:08उसको लॉग इन रिस्पांस में रिटर्न कर दिया।
- 8:17:10बस इतनी सी बात है। अब इसको आप रन करोगे
- 8:17:12तो ये वैसे ही रन होगा जैसे पहले हो रहा
- 8:17:14था। यह रिफैक्टर्ड चीज़ है। देखिए कोड
- 8:17:16रिफैक्टरिंग के बाद भी आपको अह टेस्टिंग
- 8:17:19जो है वह करनी है। वह इंपॉर्टेंट है। तो
- 8:17:21देखिए यह रन हो गई। अब यहां पर मैं फिर से
- 8:17:24रन करके देखता हूं। यह देखिए आपको मिल गया
- 8:17:27यहां पर यह टोकन। अब इसको आप डिबक कर सकते
- 8:17:31सॉरी इसको डिकोड कर सकते हो। और यहां पर
- 8:17:33देखिए सेम चीज आपको दिखाई देगी। ठीक है?
- 8:17:36उम्मीद करता हूं ये हेल्पफुल रहा और आपको
- 8:17:38समझ में आया कि हम कस्टम यूजर मॉडल के साथ
- 8:17:41किस तरीके से ऑथेंटिकेशन कर सकते हैं। ठीक
- 8:17:44है?
- 8:17:50तो दोस्तों, मैंने एप्लीकेशन को रन करके
- 8:17:53जो यह एंड पॉइंट है एक्टिविटीज को, इसको
- 8:17:56टेस्ट करने की कोशिश की। ठीक है? तो मैंने
- 8:17:57क्या किया? यहां पर सबसे पहले तो लॉगिन
- 8:18:00करके मैंने ये जनरेट कर ली टोकन और फिर
- 8:18:04मैं यहां से ट्रैक करने की कोशिश कर रहा
- 8:18:06हूं एक्टिविटी को। लेकिन ये फेल हो रही
- 8:18:08है। और यह फेल इसलिए हो रही है क्योंकि
- 8:18:09स्प्रिंग सिक्योरिटी ये रिक्वेस्ट को
- 8:18:11रिजेक्ट कर रहा है। क्यों रिजेक्ट कर रहा
- 8:18:12है? क्योंकि हमने जो टोकन वैलिडेशन की
- 8:18:15लॉजिक है यहां पर उसे हमने लिखा ही नहीं
- 8:18:17है। ठीक है? तो ये जेडब्ल्यूडी ऑथेंटिकेशन
- 8:18:20फिल्टर जो है ये हमने बनाया ही नहीं है एक
- 8:18:22हिसाब से। तो इसे ऐड करना जरूरी है। तो
- 8:18:24इसके लिए देखिए मेरे पास एक दूसरा
- 8:18:26प्रोजेक्ट है स्प्रिंग सिक्योरिटी का
- 8:18:28जिसमें मैंने ऑलरेडी ये फ़िल्टर बनाया हुआ
- 8:18:30है। ठीक है? तो ये फ़िल्टर आसानी से बनाया
- 8:18:33हुआ है। जिसमें मैंने इस्तेमाल किया है
- 8:18:36वंस पर रिक्वेस्ट फ़िल्टर। तो मैं क्या
- 8:18:38करूंगा? इसको कॉपी कर लूंगा एक हिसाब से।
- 8:18:40ठीक है? यहां पर आ जाऊंगा और फिर इसमें
- 8:18:42मॉडिफिकेशंस करेंगे और समझेंगे चीजों को।
- 8:18:45ठीक है? तो यहां पर देखिए सबसे पहले तो
- 8:18:50मैं इस्तेमाल करना चाहूंगा यहां पर आएंगे
- 8:18:53तो आप अच्छा और टोकन फ़िल्टर लिख दिया
- 8:18:55मैंने। तो ये जो क्लास का नाम है ये है
- 8:18:58JWT ऑथेंटिकेशन। JWT ऑथेंटिकेशन
- 8:19:02फ़िल्टर ऐसे। ठीक है? यहां पर जे डब्ल्यू
- 8:19:05टी यूटिल्स लिखना है। जे डब्ल्यू टी
- 8:19:08यूटिल्स ऐसे और इसको तो हम हटा ही देंगे।
- 8:19:13ठीक है? और यहां पर मैं क्या कर रहा हूं?
- 8:19:16देखिए मैं यहां पर अ यूजरनेम
- 8:19:21लोड कर रहा हूं। ठीक है? गेट यूजरनेम
- 8:19:23फ्रॉम द टोकन को लोड कर रहा हूं। ठीक है?
- 8:19:25तो यहां पर यूजरनेम नहीं चाहिए। हमें
- 8:19:28चाहिए यूजर आईडी। क्योंकि हमारी जो टोकन
- 8:19:30है उसमें ऐडेड है यूजर आईडी। तो मैं यहां
- 8:19:32पर क्या करूंगा? इसको अ मैं हटा दूंगा।
- 8:19:36ठीक है? क्योंकि हमारे पास यूजर आईडी है।
- 8:19:39ठीक है? तो यहां पर यूजर आईडी की ऑलरेडी
- 8:19:41मेथड हमने डिफाइन कर रखी है क्या? अ जी
- 8:19:44नहीं कर रखी है। ठीक है? तो देखिए यहां पर
- 8:19:46यूजर आईडी ऐड कर रहे हैं। तो मैं यहां पर
- 8:19:48आ जाता हूं। यूजर नेम की बजाय मैं यहां पर
- 8:19:49लिख देता हूं यूजर आईडी ऐसे।
- 8:19:53ठीक है? इतना मैंने कर दिया। और यहां से अ
- 8:19:56हमें मिल जाती है जी डब्ल्यू टी पार्सर
- 8:19:58वेरीफाई विद और बिल्ड कर देते हैं यूजर
- 8:20:00आईडी को और यहां से स्ट्रिंग रिटर्न कर
- 8:20:02देता है। ठीक है? इतना हो चुका है। ये
- 8:20:05सब्जेक्ट दे रहा है हमें। ठीक है? तो
- 8:20:07सब्जेक्ट में हमें क्या मिलेगा? यूजर
- 8:20:09आईडी। तो मैं यहां पर कहूंगा यूजर आईडी
- 8:20:11फ्रॉम टोकन। ठीक है? तो यहां पर यूजर नेम
- 8:20:12नहीं है हमारे पास। अब हमारे पास है यूजर
- 8:20:15आईडी। ठीक है? यूजर आईडी। तो ये मैंने
- 8:20:18यूजर आईडी ले लिया क्लेम्स। तो चलिए हमारे
- 8:20:20पास हम निकाल रहे हैं क्लेम्स। और फिर
- 8:20:22क्लेम्स को मैं प्रिंट भी कर रहा हूं। और
- 8:20:24फिर लिस्ट ऑफ ग्रांटेड अथॉरिटीज़ को यहां
- 8:20:26पर मैं अथॉरिटीज़ भी बना रहा हूं। और फिर
- 8:20:29यहां पर आ जाते हैं। तो देखिए ये है
- 8:20:31ऑथेंटिकेशन का पार्ट। ठीक है? ये है
- 8:20:33ऑथेंटिकेशन का पार्ट। अब यहां पर हम इसको
- 8:20:36ऑथेंटिकेट कर रहे हैं। और ऑथेंटिकेशन के
- 8:20:38लिए मुझे पास करना है यूजर आईडी। ठीक है?
- 8:20:41और सेट ऑथेंटिकेशन डॉट सेट डिटेल्स। ठीक
- 8:20:46है? तो यहां पर रिक्वेस्ट की मैं एडिशनल
- 8:20:48डिटेल्स यहां पर ऐड कर रहा हूं। और
- 8:20:49सिक्योरिटी कंटेक्स्ट में इसको ऐड कर दे
- 8:20:50रहा हूं। ठीक है? इतनी बात हो गई। तो ये
- 8:20:53सिमिलर ही था पूरा का पूरा एक हिसाब से ये
- 8:20:55जो फिल्टर है ये सिमिलर ही था। ठीक है?
- 8:20:57इसमें इतना कुछ मैंने ज्यादा चेंजेस नहीं
- 8:21:00किए। ठीक? सिर्फ मैंने यूजर नेम का जो
- 8:21:02लॉजिक है उसको हटाकर यूजर आईडी पर कर दिया
- 8:21:05है। ठीक है? और इसको इस फ़िल्टर को हमें ऐड
- 8:21:07भी करना होगा स्प्रिंग सिक्योरिटी में।
- 8:21:10ठीक है? या फ़िल्टर चेन में। ठीक है? तो
- 8:21:12यहां पर आएंगे हम। और यहां पर मैं कहूंगा
- 8:21:14HTTP
- 8:21:15डॉट ऐड फ़िल्टर बिफोर। और फिर मैं कहूंगा
- 8:21:19जे डब्ल्यू टी। अच्छा रुक जाइए तो इसको ऐड
- 8:21:22करेंगे हम यूजरनेम पासवर्ड ऑथेंटिकेशन
- 8:21:25फिल्टर डॉट क्लास के आगे और इस फिल्टर की
- 8:21:29हमें एक क्लास भी बनानी होगी एक्सपोज करनी
- 8:21:31होगी ठीक है तो मैं क्या करूंगा
- 8:21:35यहां पर ऊपर आ जाता हूं ठीक है और यहां पर
- 8:21:39लिख दूंगा प्राइवेट जे फाइनल जे डब्ल्यू
- 8:21:44टी ऑथेंटिकेशन फ़िल्टर अच्छा ये इसने
- 8:21:48एसक्यू ले लिया पता नहीं तो यहां पर इसको
- 8:21:51ऐसे कर देता हूं और यहां पर अगर मैं ऐसे
- 8:21:53करता हूं तो अच्छा ये ऐसे इंपोर्ट हो रहा
- 8:21:58है मे बी कुछ गड़बड़ है ठीक है लेकिन अभी
- 8:22:00इसे अभी के लिए इसे ऐसे ही रहने देता हूं
- 8:22:02डब्ल्यू टी ऑथेंटिकेशन फ़्टर ठीक है और
- 8:22:06यहां पर मैं लिख देता हूं ये फाइनल है
- 8:22:07करेक्ट और यहां पर मैं लिख सकता हूं
- 8:22:09रिक्वायर्ड आर्गुमेंट्स ठीक है रिक्वायर्ड
- 8:22:12आस्क् कंस्ट्रक्टर ठीक है ऐसे तो ये जनरेट
- 8:22:15हो चुका है और यहां पर जे डब्ल्यू टी
- 8:22:17ऑथेंटिकेशन फ़्टर आ चुका है ठीक है तो ये
- 8:22:19फ़्टर ऐड हो चुका है। फ़िल्टर का काम हो
- 8:22:21चुका है। अब हमें क्या करना है पता है?
- 8:22:23हमें अ कस्टम यूजर डिटेल्स सर्विस बनानी
- 8:22:27है। तो देखिए ये जो स्प्रिंग सिक्योरिटी
- 8:22:29का जो डायग्राम है जो मैंने बनाया था उस
- 8:22:30पर फिर से आ जाते हैं। ठीक है? तो यहां पर
- 8:22:33कस्टम यूजर डिटेल्स हमने बनाई है। ठीक है?
- 8:22:36कस्टम यूजर डिटेल्स। तो मुझे स्प्रिंग
- 8:22:39सिक्योरिटी को ये बताना होगा कि ये जो
- 8:22:41यूजर डिटेल्स है इसको रिट्रीव कैसे करना
- 8:22:42है। क्योंकि ये यूजरनेम बेस नहीं है। ये
- 8:22:44एक तो कस्टम यूजर मॉडल पे बना हुआ है। ठीक
- 8:22:46है? कस्टम यूजर मॉडल पे बना हुआ है।
- 8:22:48करेक्ट?
- 8:22:50और यह स्टोर हो रहा है डेटाबेस में और
- 8:22:52इसकी प्राइमरी की भी अलग है। लाइक इसकी की
- 8:22:54है ईमेल मेरे लिए। करेक्ट? मैं ईमेल से
- 8:22:57यूजर फेस फैच करना चाहता हूं। तो मुझे
- 8:22:59स्प्रिंग सिक्योरिटी को बताना होगा कि किस
- 8:23:01तरीके से इसका इस्तेमाल किया जाए। तो इसके
- 8:23:04लिए मुझे बनानी होगी एक कस्टम यूजर
- 8:23:06डिटेल्स सर्विस की क्लास। तो यहां पर मैं
- 8:23:08आ जाता हूं सिक्योरिटी में। और यहां पर
- 8:23:10देखिए कस्टम यूजर डिटेल्स सर्विस की क्लास
- 8:23:12ऑलरेडी बनी हुई है। तो इस पर मैं
- 8:23:13इंप्लीमेंट करूंगा यूजर डिटेल सर्विस। ठीक
- 8:23:16है? ये इंटरफ़ेस है ऑलरेडी। तो ये यूजर
- 8:23:19डिटेल सर्विस को हम इस्तेमाल कर रहे थे अब
- 8:23:21तक। लेकिन अब मैं इसकी एक कस्टम
- 8:23:23इंप्लीमेंटेशन क्रिएट कर रहा हूं। ठीक है?
- 8:23:25इस तरीके से और इसको मैं मार्क करूंगा एज
- 8:23:28ए कंपोनेंट बी अ सॉरी कंपोनेंट या तो फिर
- 8:23:31इसको एज अ सर्विस मार्क कर सकते हो आपको
- 8:23:33जैसा चाहिए। ठीक है? और यहां पर मुझे
- 8:23:36देखिए मुझे यूजर कैसे फच करना है वो बताना
- 8:23:39है स्प्रिंग सिक्योरिटी को। तो यहां पर
- 8:23:40मुझे लगेगा ऑटो वायर्ड। ठीक है? और यहां
- 8:23:43पर मैं लिखूंगा प्राइवेट फाइनल यूजर
- 8:23:47रिपॉजिटरी
- 8:23:51और यहां पर यूजर रिपॉजिटरी को इस्तेमाल
- 8:23:53करूंगा। ठीक है? इसको हटा देते हैं इस
- 8:23:55तरीके से। और यहां पर लिख देंगे
- 8:23:59रिक्वायर्ड आस्क कंस्ट्रक्टर। ठीक है? तो
- 8:24:00ये कंस्ट्रक्टर इंजेक्शन हो गया। अब यहां
- 8:24:02पर आ जाते हैं और यहां पर मैं लिखूंगा अ
- 8:24:05यहां पर लोड बाय यूजरनेम है। ठीक है? तो
- 8:24:07देखिए लोड बाय यूजरनेम जो मेथड है ना
- 8:24:10देखिए आप यूजर डिटेल्स सर्विस में आते हो
- 8:24:11ना यहां पर यूजर डिटेल्स सर्विस एक हिसाब
- 8:24:14से कोर इंटरफेस है जो लोड करता है यूजर
- 8:24:16स्पेसिफिक डेटा। अब आप इनबिल्ट यूजर का
- 8:24:20इस्तेमाल करते हो जो स्प्रिंग सिक्योरिटी
- 8:24:22का कोर यूजर है इनबिल्ट तो उसे पता है कि
- 8:24:24यूजर को कैसे रिट्रीव करना है। लेकिन अगर
- 8:24:26आप एक कस्टम यूजर मॉडल बनाते हो तो आपको
- 8:24:29इंप्लीमेंटेशन देनी है कि कैसे यूजर को
- 8:24:32लोड करना है और वो आपको करना है इसको
- 8:24:34इंप्लीमेंट करके एक सर्विस बनाकर। ठीक है?
- 8:24:36और यहां पर ये लिख देना है लोड यूजर बाय
- 8:24:39यूजरनेम। ये ऑटोमेटिकली आ जाएगा क्योंकि
- 8:24:40ये ओवरडन मेथड है। ठीक है? और यहां पर मैं
- 8:24:42क्या करने वाला हूं? यहां पर यूजर का एक
- 8:24:44ऑब्जेक्ट बनाने वाला हूं। ठीक है? यूजर
- 8:24:46मॉडल का एक ऑब्जेक्ट। ठीक है? और यहां पर
- 8:24:49कहूंगा अ यूजर रिपॉज़िटरी डॉट फाइंड बाय
- 8:24:53ईमेल इस तरीके से। और यहां पर यूजरनेम को
- 8:24:56पास कर दूंगा। एक्चुअली यूजरनेम नहीं है।
- 8:24:58ये ईमेल ही है। ठीक है? ये ऐसे पास कर
- 8:25:00दूंगा मैं। अच्छा यहां पर क्या हो रहा है?
- 8:25:02अब ये आ रहा है। अच्छा यहां पर दिक्कत हो
- 8:25:05गई। तो ये वाला जो यूजर है ये स्ट्रिंग
- 8:25:06सिक्योरिटी का यूजर नहीं है। ये हमारा
- 8:25:08यूजर है। ठीक है? स्प्रिंग सिक्योरिटी
- 8:25:11वाले इंपोर्ट को हटा देते हैं। हम हमारा
- 8:25:12यूजर इस्तेमाल कर रहे हैं यहां पर। ठीक
- 8:25:14है? स्प्रिंग सिक्योरिटी वाला यूजर नहीं
- 8:25:16इंपोर्ट कर लेना। यह हमारा यूजर है। ठीक
- 8:25:18है? ये मैंने ले लिया। अब मैं यहां पर
- 8:25:20लिखूंगा इफ यूजर इज़ इक्वल टू नल। ठीक है?
- 8:25:24तो यहां पर आएगा अ थ्रो
- 8:25:28अ न्यू रन टाइम एक्सेप्शन
- 8:25:32या रन टाइम एक्सेप्शन या कुछ भी कर कुछ भी
- 8:25:35थ्रो कर सकते हो। आप यूजर नॉट फाउंड और
- 8:25:37यहां पर लिख सकते हो प्लस यूजर नेम। ठीक
- 8:25:40है? यह यूजरनेम एक्चुअली थोड़ा कंफ्यूजन
- 8:25:42दे रहा है। तो यहां पर इसको ईमेल कर दूंगा
- 8:25:44मैं ईमेल और यह सारी जगह पर ईमेल रख
- 8:25:48दूंगा। ठीक है? तो ईमेल का हम एक्सेप्शन
- 8:25:50थ्रो कर रहे हैं कि अगर यह यूजर मिलता
- 8:25:51नहीं है तो और अगर मिलता है तो मैं क्या
- 8:25:54करूंगा? मैं यहां पर आ जाऊंगा और यहां पर
- 8:25:57यूजर डिटेल्स की यूजर का इनबिल्ट स्प्रिंग
- 8:26:01सिक्योरिटी का जो यूजर है उसको बिल्ड
- 8:26:02करूंगा। तो देखिए इनबिल्ट स्प्रिंग
- 8:26:04सिक्योरिटी का यूजर को लूंगा। उसमें
- 8:26:06बिल्डर है वो बिल्डर का इस्तेमाल करूंगा
- 8:26:09और यहां पर बिल्ड करूंगा और बिल्ड करने से
- 8:26:12पहले मैं सारी जो वैल्यू्यूज है उसे सेट
- 8:26:14कर दूंगा तो मैं कहूंगा यूजर यूजर नेम
- 8:26:16यूजरनेम क्या है यूजर डॉट गेट ईमेल ठीक है
- 8:26:20फिर मैं कहूंगा डॉट पासवर्ड पासवर्ड क्या
- 8:26:23है यूजर डॉट गेट पासवर्ड ठीक है गेट
- 8:26:27पासवर्ड और क्या है दूसरी चीज़ डॉट रोल्स
- 8:26:30तो रोल्स क्या है आपको जो भी रोल्स है
- 8:26:33आपके पास यूजर डॉट गेट
- 8:26:35रोल उसको सेट कर देना है आपको और यहां पर
- 8:26:38लिस्ट में सेट कर देना है लिस्ट क्योंकि
- 8:26:40लिस्ट ले रहा है लिस्ट ऑफ इस तरीके से
- 8:26:43आपको सेट कर देना है ठीक है इतना आपने कर
- 8:26:46दिया अब ये काम बन जाएगा ठीक है अच्छा
- 8:26:50यहां पर क्या हो गया रैप यूजिंग स्ट्रिंग
- 8:26:52वैल्यू ऑफ
- 8:26:55अच्छा यह रोल्स ले रहा है 1 मिनट दिक्कत
- 8:27:00क्या हुई है यहां पर इसको होवर करें अगर
- 8:27:03तो यह ले रहा है स्ट्रिंग ले रहा है रोल्स
- 8:27:06की। ठीक है? तो ये पहले क्यों नहीं काम
- 8:27:08किया इसने? ये अगर ऐसे लगा लेते हैं हम तो
- 8:27:12ये तो चलना चाहिए था। ये क्यों नहीं चल
- 8:27:14रहा है? अच्छा गेट रोल डॉट नेम डॉट नेम
- 8:27:20लेना है क्योंकि इनम है। ठीक है? गेट रोल
- 8:27:22हमें रिटर्न कर रहा है इनम। तो गलती हो
- 8:27:24गई। गेट रोल रिटर्न कर रहा है इनम। और
- 8:27:26यहां पर ये एक्सपेक्ट कर रहा है स्ट्रिंग।
- 8:27:28तो यहां पर मैंने नेम डाल दिया। ठीक है?
- 8:27:29तो इतना हो गया। तो हम क्या कर रहे हैं?
- 8:27:31देखिए हमारा जो यूजर है उसको लोड करके
- 8:27:33स्प्रिंग सिक्योरिटी का जो यूजर है उसमें
- 8:27:36हम रिटर्न कर रहे हैं। बस इतना करना है
- 8:27:38हमको तो ये एक हिसाब से जो ब्रिज है
- 8:27:40स्प्रिंग सिक्योरिटी का और हमारे बीच में
- 8:27:42वो फुलफिल हो जाएगा और इसको एप्लीकेशन को
- 8:27:44मैं रन कर दूंगा यहां पर। ठीक है? रन करके
- 8:27:46देखते हैं होता क्या है। ठीक है? तो ये रन
- 8:27:50हो रहा है। ठीक है? कुछ समय के लिए रुक
- 8:27:51जाएंगे हम। यहां पर आ जाते हैं। ठीक है?
- 8:27:54ये एंड पॉइंट तो अभी चल नहीं रही है। ठीक
- 8:27:57है?
- 8:27:59पहले चल नहीं रही 403 दे रहा था। तो ये
- 8:28:01थोड़ा रुक जाते हैं हम।
- 8:28:07अच्छा ये एरर हो गया यहां पर। एरर क्या हो
- 8:28:11गया? तो ज़ीरो पैरामीटर ऑफ कंस्ट्रक्टर।
- 8:28:16अच्छा ये कहां पे एरर आ रही है?
- 8:28:20ठीक है तो ये एरर आई है
- 8:28:24से
- 8:28:28जेडब्ल्यूटी ऑथेंटिकेशन फ़िल्टर तो इसको
- 8:28:31हमने कंपोनेंट तो मार्क किया हुआ है ठीक
- 8:28:34है अच्छा मुझे प्रॉब्लम समझ में आ गई तो
- 8:28:36यहां पर हमने ये दूसरे प्रोजेक्ट से कॉपी
- 8:28:38पेस्ट किया था ये वाला तो यहां पर पैकेज
- 8:28:40नेम जो है वो दूसरे प्रोजेक्ट का रह गया
- 8:28:42था तो इसको सेट पैकेज नेम कर देता हूं और
- 8:28:44यहां पर देखिए फिर ये हट जाता है ठीक है
- 8:28:47तो यहां पर आप आपको याद रहेगा कि यहां पर
- 8:28:49जब ये मैं इसे इंपोर्ट कर रहा था तो यह
- 8:28:51पूरा अ लिखेला आ गया था। तो ये एक्चुअली
- 8:28:54इसीलिए आ रहा था। ठीक है? तो आप जब भी
- 8:28:55कॉपी पेस्ट करते हो तो ये पैकेज नेम जो
- 8:28:57पहली क्लास होती है ठीक है? जो पहली लाइन
- 8:29:00होती है उसे आप एक बार देख लीजिएगा। ठीक
- 8:29:02है? अब यहां पर इसको हटा देता हूं रिमूव
- 8:29:04ऑन यूज़्ड इंपोर्ट। ठीक है? अब ये चल जाना
- 8:29:06चाहिए। यहां पर आता हूं मैं और इसे रन
- 8:29:08करके देखता हूं। अच्छा
- 8:29:11तो ये सर्वर ही स्टार्ट नहीं हुआ है। ठीक
- 8:29:14है? ठीक है? तो देखिए अब ये जो एंड पॉइंट
- 8:29:16है ये चल रही है प्रॉपर्ली। ठीक है? यहां
- 8:29:18पर देखिए ये वैलिडेशन चल रहा है जो टोकन
- 8:29:21हमने भेजा है उसका। अब दूसरी अगर आप एंड
- 8:29:24पॉइंट पे अ भेजते हो रिक्वेस्ट जैसे जनरेट
- 8:29:27रेकमेंडेशन। ठीक है? तो ये वाली भी
- 8:29:29रेकमेंड ये वाली भी पहले जैसी है। लेकिन
- 8:29:31इसमें मुझे एक हिसाब से यहां पर ऑथराइजेशन
- 8:29:36हेडर भेजना पड़ेगा। तो यहां पर अगर मैं आ
- 8:29:38जाता हूं तो यहां पर ऑथोराइजेशन हेडर। अगर
- 8:29:40मैं ऐसे ही कॉल करता हूं इसे बिना
- 8:29:42ऑथराइजेशन हेडर के तो मुझे 403 आ जाएगा।
- 8:29:45देखिए अलाउड नहीं है। ऑथराइजेशन हेडर के
- 8:29:47साथ मैं अगर टोकन बेचता हूं यहां पर बेर
- 8:29:50टोकन तो अच्छा फिर भी 403 आ रहा है। क्यों
- 8:29:53आ रहा है ये? 403 फोरपिडन आइडली आना नहीं
- 8:29:56चाहिए। ठीक है? ये आ रहा है 403 फोरपिडन
- 8:30:00और यहां पर दिया जा रहा है। अच्छा यूजर
- 8:30:02आईडी या कुछ गलत होगा यहां पर। इसीलिए यह
- 8:30:04एरर आई है। एक्चुअली एरर आई है। तो, यहां
- 8:30:06पर जो यूजर आईडी के अगेंस्ट मैं एक्टिविटी
- 8:30:10रिकॉर्ड कर रहा हूं, वह सही नहीं है। यूजर
- 8:30:12आईडी और एक्टिविटी आईडी सही होनी चाहिए।
- 8:30:14तो, देखिए, यह यूजर आईडी है मेरी। ठीक है?
- 8:30:17यह रिक्वेस्ट चली थी। तो, यह है मेरी यूजर
- 8:30:20आईडी। और एक्टिविटी आईडी कौन सी है?
- 8:30:22एक्टिविटी आईडी है यह वाली। तो, इसको भी
- 8:30:25कॉपी करना होगा। और यहां पर आना होगा। और
- 8:30:27यह एक्टिविटी के अगेंस्ट मैं रेकमेंडेशन
- 8:30:29ऐड कर रहा हूं। इसको सेंड कर देता हूं। तो
- 8:30:32देखिए यह जनरेट अब होना तो चाहिए। देखिए
- 8:30:34जनरेट हो गया। ठीक है? उम्मीद करता हूं यह
- 8:30:37हेल्पफुल रहा। आपको समझ में आया कि हमने
- 8:30:40ये जो फ़िल्टर है ये एक्चुअली में किस लिए
- 8:30:43क्रिएट किया। जो कस्टम यूजर डिटेल्स की जो
- 8:30:45क्लास है वो हमने क्यों क्रिएट की? सिंपल
- 8:30:48सा प्रोसेस था बट समझना काफी जरूरी है।
- 8:30:50उम्मीद करता हूं ये हेल्पफुल रहा।
- 8:30:58तो चलिए दोस्तों बात करते हैं वैलिडेशंस
- 8:31:00के बारे में। ठीक है? तो देखिए अब हमारे
- 8:31:02पास एपीआई है। यह एंड पॉइंट है। बहुत सारी
- 8:31:06एपीआई होगी। अगर आप प्रोडक्शन लेवल
- 8:31:08एप्लीकेशन पर काम करते हो। बहुत सारे एंड
- 8:31:09पॉइंट्स हो गए। बहुत सारे कंट्रोलर्स हो
- 8:31:11गए। ठीक है? अब इन एंड पॉइंट्स पर डेटा
- 8:31:15आएगा और ये डेटा यूज़र्स या जो भी
- 8:31:18क्लाइंट्स जहां पर भी आपकी जो एप्लीकेशन
- 8:31:19है वो इस्तेमाल हो रही है वो डेटा सेंड
- 8:31:21करेगी। ठीक है? तो देखिए डाटा अब बैक एंड
- 8:31:24में आ रहा है एक हिसाब से एपीआई के थ्रू।
- 8:31:26तो वैलिडेशंस डालना यह थोड़ा मैंडेटरी हो
- 8:31:29जाता है। ठीक है? वैलिडेशंस का मतलब यह है
- 8:31:32कि डाटा जो आ रहा है आपके एप्लीकेशन में
- 8:31:34जिन जिन्हें वैलिडेशन का मतलब नहीं पता
- 8:31:36मैं उन्हें बता दूं डेटा जो आ रहा है
- 8:31:37एप्लीकेशन में वो सही डेटा है या नहीं।
- 8:31:41ठीक है? यानी प्रोसेस करने लायक डेटा है
- 8:31:43या नहीं। जैसे कि मैं आपको एक एग्जांपल दे
- 8:31:44देता हूं। ठीक है? यहां पर हम आ जाते हैं।
- 8:31:46ठीक है? तो मान लीजिए आपके पास एक एंड
- 8:31:48पॉइंट है। ठीक है? तो ये एंड पॉइंट है
- 8:31:51रजिस्टर की एंड पॉइंट। ठीक है? अब इस एंड
- 8:31:53पॉइंट में जरूरी है ईमेल और पासवर्ड।
- 8:31:59ठीक है? तो अब आपकी ये रिक्वायरमेंट होगी
- 8:32:03जो ईमेल जो है वो पहली बात तो प्रेजेंट
- 8:32:06होना चाहिए। ठीक है? ये पहली रिक्वायरमेंट
- 8:32:08हो गई। दूसरी रिक्वायरमेंट है देखिए ईमेल
- 8:32:10और पासवर्ड होगा तभी तो आप यूजर को
- 8:32:12रजिस्टर करोगे या लॉग इन करोगे। लॉग इन
- 8:32:14एंड पॉइंट में भी यही रिक्वायरमेंट होगी।
- 8:32:15करेक्ट? तो रजिस्टर की बात कर लेते हैं।
- 8:32:17रजिस्टर में ईमेल सबसे पहले तो प्रेजेंट
- 8:32:19होना चाहिए। सबसे पहली बात। दूसरी बात हो
- 8:32:22गई ईमेल का फॉर्मेट सही होना चाहिए। ईमेल
- 8:32:25फॉर्मेट ठीक है या वैलिड ईमेल लिख देता
- 8:32:27हूं। वैलिड ईमेल होनी चाहिए। वैलिड ईमेल
- 8:32:29का मतलब ये है कि @ [email protected]@
- 8:32:34yahoo.com जो भी है। ठीक है? प्रॉपर
- 8:32:36फॉर्मेट जो है ईमेल का उस फॉर्मेट में
- 8:32:39होना चाहिए। ठीक है? अ दूसरी चीज़ है आप
- 8:32:41कुछ साइज़ प्रोबब्ली डालना चाहो लेकिन मैं
- 8:32:45साइज़ यहां पर डालना नहीं चाहता। ठीक है?
- 8:32:46क्योंकि ईमेल में बस ये दो चीज़ इनफ है।
- 8:32:49ठीक है? ठीक है? तो पहले तो प्रेजेंट होनी
- 8:32:50चाहिए ईमेल और वैलिड ईमेल होनी चाहिए। अब
- 8:32:53पासवर्ड की बात करते हैं। ठीक है? पासवर्ड
- 8:32:55सबसे पहले तो प्रेजेंट होना चाहिए। ठीक
- 8:32:57है? पासवर्ड ब्लैंक नहीं हो सकता अगर आपको
- 8:32:59यूजर क्रिएट करना है तो। और दूसरी चीज़
- 8:33:02पासवर्ड की एक मिनिमम लेंथ होनी चाहिए। तो
- 8:33:04फॉर एग्जांपल मिनिमम सिक्स सिक्स की लेंथ
- 8:33:07होनी चाहिए सिक्स कैरेक्टर की। ठीक है? इस
- 8:33:09हिसाब से आप वैलिडेशन सेट कर सकते हो। और
- 8:33:11भी कॉम्प्लेक्स वैलिडेशंस रह सकती है। ठीक
- 8:33:13है? लेकिन मैं सिंपल एग्जांपल कंसीडर कर
- 8:33:15रहा हूं यहां पर। ठीक है? तो देखिए ये
- 8:33:17दोनों चीजें प्रेजेंट और यहां पर ईमेल की
- 8:33:20एक ईमेल स्पेसिफिक वैलिडेशन होनी चाहिए और
- 8:33:22यहां पर पासवर्ड की एक लेंथ स्पेसिफिक
- 8:33:23वैलिडेशन होनी चाहिए। ठीक है? तो अब ये हम
- 8:33:28इंप्लीमेंट कैसे करेंगे? ये वैलिडेशंस
- 8:33:29इंप्लीमेंट कैसे करेंगे? ठीक है? देखिए
- 8:33:31वैलिडेशन जरूरी होती है क्योंकि जो डेटा आ
- 8:33:33रहा है आपको ये मेक श्योर करना है कि डेटा
- 8:33:36प्रोसेस होने से पहले वो डेटा वैलिड है या
- 8:33:38नहीं ये मालूम होना चाहिए। ठीक है? अब
- 8:33:42वैलिड होना जरूरी है डेटा का। ठीक है? और
- 8:33:45इसीलिए हम वैलिडेशंस लिखेंगे। तो मैं यहां
- 8:33:46पर आ जाता हूं अगर। ठीक है? तो पहले क्या
- 8:33:49होता था? रजिस्टर रिक्वेस्ट में आपको सब
- 8:33:50डेट आ रहा है। यहां पर आप एक हिसाब से कुछ
- 8:33:53कोड लिखोगे। ठीक है? वैलिडेशन कोड जिसका
- 8:33:56काम यह होगा कि वो चेक करेगा कि सारी जो
- 8:33:59चीजें हैं इस रिक्वेस्ट में आ रही है वो
- 8:34:01सही है या नहीं। तो यहां पर एक
- 8:34:02कॉम्प्लेक्स ब्लॉक ऑफ कोड लिखा जाएगा। ठीक
- 8:34:05है? आई थिंक कुछ पांच छह लाइन ऑफ कोड का
- 8:34:08और फिर उसे इस्तेमाल करके रिक्वेस्ट को
- 8:34:11वैलिडेट किया जाएगा। और अगर वैलिड नहीं है
- 8:34:12तो रिस्पांस भी चला जाएगा एरर के साथ। ठीक
- 8:34:16है? लेकिन अब यहां पर स्प्रिंग फ्रेमवर्क
- 8:34:18जो है, स्प्रिंग बूट जो है, स्प्रिंग
- 8:34:20बोर्ड हमारी लाइफ बहुत आसान बना देता है।
- 8:34:22आपको यहां पर कुछ कॉम्प्लेक्स वैलिडेशन
- 8:34:24कोड सबसे पहले तो लिखने की जरूरत है नहीं।
- 8:34:26आपको इस्तेमाल करना है सिंपल एनोटेशंस का।
- 8:34:29ठीक है? सिंपल एनोटेशंस का आप इस्तेमाल
- 8:34:30करते हो और एक डिपेंडेंसी आपको ऐड करनी
- 8:34:33है। बस वैलिडेशंस डिपेंडेंसी और उसकी मदद
- 8:34:36से सारे के सारे वैलिडेशंस ऑटोमेटिकली काम
- 8:34:38करते हैं। देखिए, मैं आपको एक चीज़ बता
- 8:34:40देता हूं। यह जो ईमेल वैलिड ईमेल है या
- 8:34:43नहीं यह चेक करना। चीज प्रेजेंट है या
- 8:34:46नहीं? कोई फील्ड प्रेजेंट है या नहीं?
- 8:34:47फील्ड की मिनिमम लेंथ ये सारी जो चीजें
- 8:34:50हैं जो हम लिख रहे हैं यहां पर। ठीक है?
- 8:34:52ये सारी जो चीजें हम लिख रहे हैं यहां पर।
- 8:34:54ठीक है? वो काफी कॉमन है। ठीक है? अगर आप
- 8:34:58लॉग इन एंड पॉइंट बनाते हो और उसमें आप
- 8:35:01ईमेल एक्सेप्ट कर रहे हो तो आपको ये तो
- 8:35:02चेक करना ही होगा वहां पर कि ईमेल वैलिड
- 8:35:04है या नहीं। ठीक है? ईमेल प्रेजेंट है या
- 8:35:06नहीं? पासवर्ड प्रेजेंट है या नहीं। ये जो
- 8:35:08सारी चीजें हैं मिनिमम लेंथ की वैलिडेशन
- 8:35:09ये सारी चीजें ना कॉमन है और हर एप्लीकेशन
- 8:35:12में लिखी जाती ही है। तो यहां पर क्या
- 8:35:15किया गया है स्प्रिंग स्प्रिंग बूट के साथ
- 8:35:18यहां पर एक इसका जो प्रीडफाइंड कोड है वो
- 8:35:21दिया गया है और आपको सिर्फ एनोटेशन
- 8:35:22इस्तेमाल करना है और अ बस वो वैलिडेशन लग
- 8:35:25जाएगी। ठीक है? आपको खुद से कोड नहीं
- 8:35:27लिखना है। आपको सिर्फ बिनेस लॉजिक पर फोकस
- 8:35:29करना है। यही बढ़िया चीज है। ठीक है? तो
- 8:35:31देखिए मैं आपको बता देता हूं इसकी शुरुआत
- 8:35:33कैसे करनी है। आपको सबसे पहले तो स्टार
- 8:35:35डॉटstring. पर आ जाना है क्योंकि यहां से
- 8:35:38आपको डिपेंडेंसी मिलेगी। यहां पर जो भी आप
- 8:35:40इस्तेमाल कर रहे हो लाइक ग्रेड ग्रेडल
- 8:35:42इस्तेमाल कर रहे हो ग्रेडल सेलेक्ट कर
- 8:35:43लीजिए या मेवन। मैं मेवन इस्तेमाल कर रहा
- 8:35:45हूं। यहां पर आ जाइए ऐड डिपेंडेंसी में और
- 8:35:47यहां पर सेलेक्ट कीजिए वैलिडेशन। तो देखिए
- 8:35:50बीन वैलिडेशन वि हाइबनेट वैलिडेटर। ठीक
- 8:35:53है? तो इसे सेलेक्ट करना है। यहां पर आ
- 8:35:55जाइए। ठीक है? ठीक है? यहां पर जैसे ही आप
- 8:35:57आते हो तो देखिए आपको यहां पर अ
- 8:35:59डिपेंडेंसी दिखाई देगी जो ऐड हुई है ये
- 8:36:01डिपेंडेंसी। तो ये स्प्रिंग बूट स्टार्टर
- 8:36:04वैलिडेशन ये जो डिपेंडेंसी है ये आपको
- 8:36:06कॉपी करनी है। ठीक है? और फिर यहां पर आ
- 8:36:09जाना है स्प्रिंग बूट स्टार्टर वैलिडेशन
- 8:36:11को लेकर और यहां पर इस प्रोजेक्ट में मैं
- 8:36:14ओपन करूंगा। सबसे पहले तो मैं सब कुछ
- 8:36:16क्लोज कर लेता हूं। और यहां पर pmxl में
- 8:36:18आऊंगा और यहां पर कहीं पर भी इस
- 8:36:20डिपेंडेंसी को ऐड कर देना है। अब जैसे ही
- 8:36:22आप डिपेंडेंसी को ऐड कर देते हो, यहां पर
- 8:36:24आपने pm.xml फाइल में चेंज किया है। तो
- 8:36:27यहां पर आपको मेवन रीलोड करने की जरूरत
- 8:36:28है। देखिए मेवन रीलोड का आइकॉन तो मुझे
- 8:36:30दिखाई नहीं दे रहा है। एक हिसाब से यहां
- 8:36:32पर दिखाई नहीं दे रहा है। ऑटोमेटिकली आ
- 8:36:34जाना चाहिए था। लेकिन यहां पर मैं मेवन
- 8:36:36रिफ्रेश कर दूंगा मेवन रीलोड। ठीक है? तो
- 8:36:38मेवन एक हिसाब से रीलोड हो गया और ये
- 8:36:40डिपेंडेंसी फैच हो जाएगी। ठीक है? तो ये
- 8:36:43एक हिसाब से ये डिपेंडेंसी जो है ना इसके
- 8:36:45जरिए आप वैलिडेशन रिलेटेड जो भी एनोटेशंस
- 8:36:49है उसका इस्तेमाल कर सकते हो अपने कोड में
- 8:36:51अपने कोड लेवल पर। ठीक है? और मैं आपको
- 8:36:54बताता हूं यह चीजों को कितना आसान कर देता
- 8:36:56है और अगर यह चीज होती नहीं तो आपको और
- 8:36:59कितना कोड लिखना पड़ता इसका भी अंदाजा
- 8:37:01आपको आ जाएगा। तो मैं आ जाता हूं ऑथ
- 8:37:02कंट्रोलर में। देखिए यहां पर वैलिडेशन कोड
- 8:37:04लिखने की बात की थी मैंने। इसको हटा देते
- 8:37:06हैं क्योंकि इसकी जरूरत नहीं है। अब सबसे
- 8:37:08पहले मैं रजिस्टर रिक्वेस्ट में जाता हूं
- 8:37:09क्योंकि हम रजिस्टर रिक्वेस्ट एक डीटीओ है
- 8:37:11हमारा। ठीक है? और रजिस्टर रिक्वेस्ट की
- 8:37:15मदद से हम लोग क्या कर रहे हैं? अह जो
- 8:37:18डेटा है उसको कलेक्ट कर रहे हैं। ठीक है?
- 8:37:20अब रजिस्टर रिक्वेस्ट जो है ये एक हिसाब
- 8:37:23से बीन है। ठीक है? एक हिसाब से बीन है।
- 8:37:26करेक्ट। स्प्रिंग मैनेज्ड कंपोनेंट है।
- 8:37:28अच्छा सॉरी एक हिसाब से बीन नहीं है। ये
- 8:37:29इसको हमने कंपोनेंट मार्क नहीं किया है।
- 8:37:31सॉरी कंपोनेंट मार्क नहीं किया है। लेकिन
- 8:37:34ये एक हिसाब से एक क्लास है। ठीक है? और
- 8:37:35यहां पर हमें क्या हम क्या करेंगे? देखिए
- 8:37:37ईमेल पर हमें वैलिडेशन लगाना है और
- 8:37:39पासवर्ड पर लगाना है। रजिस्टर रिक्वेस्ट
- 8:37:41में। तो मैं क्या करूंगा? यहां पर लिख
- 8:37:42दूंगा। ठीक है? नॉट ब्लैंक। ठीक है? नॉट
- 8:37:46ब्लैंक। अच्छा नॉट प्लैंक यहां पर आ नहीं
- 8:37:50रहा है। यह क्यों नहीं आ रहा है? आइडली तो
- 8:37:52आना चाहिए था इसे लेकिन आ नहीं रहा है।
- 8:37:55लगता है कुछ गड़बड़ हुई है। एक मिनट मुझे
- 8:37:58पोम एक्सml देख लेनी चाहिए। स्टार्टर
- 8:38:00वैलिडेशन हमने ऐड किया है। मेवन रीलोड
- 8:38:02किया है। रीलोड और मेवन प्रोजेक्ट्स।
- 8:38:05ठीक है? डिपेंडेंसी सारी रेल्व हो रही है।
- 8:38:07अगर आप देखोगे यहां पर थोड़ा डिपेंडेंसी
- 8:38:09को फिर से रिॉल्व होने देते हैं क्योंकि
- 8:38:11ये आइडली आ जाना चाहिए था। ठीक है? यहां
- 8:38:13पर आता हूं और अच्छा देखिए अब आ गया ये।
- 8:38:16लगता है मुझे मेवन की जो रीलोड है उसमें
- 8:38:18कुछ दिक्कत हुई थी शायद क्योंकि यहां पर
- 8:38:21जब मैंने डिपेंडेंसी ऐड की तो यहां पर
- 8:38:23मुझे जो ऑटोमेटिक मेवन रीलोड का आइकॉन आता
- 8:38:25है वो भी नहीं आया तो ऐसा हो सकता है तो
- 8:38:27आप प्रोजेक्ट को जरा क्लीन करके रीलोड ऑल
- 8:38:29मेन प्रोजेक्ट्स कर लीजिएगा यहां पर मेन
- 8:38:31के आइकॉन से ठीक है टेंपरेरी इशू होता है
- 8:38:33आईडी का ग्लिच है तो यहां पर देखिए नॉट
- 8:38:36ब्लैंक लिखना है यह देखिए ये आपको आ जाता
- 8:38:38है जकार्ता वैलिडेशन कंस्ट्रेंट्स ये आपने
- 8:38:40डाल दिया है ठीक है और यहां पर इतना डालने
- 8:38:44के बाद ना आप यहां पर पर आ सकते हो। अच्छा
- 8:38:46ये नॉट ब्लैंक है और फिर मैं यहां पर लिख
- 8:38:48दूंगा यहां पर एक और चीज लिख दूंगा अ यहां
- 8:38:52पर लिख दूंगा ईमेल
- 8:38:55ईमेल इस तरीके से। ठीक है? और यहां पर मैं
- 8:38:58मैसेज भी पास कर सकता हूं। तो जैसे कि
- 8:39:00मैसेज इनवैलिड ईमेल। ठीक है? और यहां पर
- 8:39:04मैं लिख सकता हूं मैसेज और यहां पर लिख
- 8:39:06दूंगा ईमेल अह इज़ रिक्वायर्ड ऐसे। इस
- 8:39:10तरीके से। ठीक है? तो ये दोनों चीजें हो
- 8:39:12चुकी है और ये देखिए इन दोनों को मैंने
- 8:39:14इंपोर्ट लगाया हुआ है यहां पर। ठीक है?
- 8:39:16इतना हो गया। अब मैं है ना पहले तो इसको अ
- 8:39:20रन करता हूं। ठीक है? इसको इसका आउटपुट
- 8:39:23देखते हैं हम लोग कि क्या आता है आउटपुट।
- 8:39:25ठीक है? तो एप्लीकेशन रन हो रही है। मैं
- 8:39:27यहां पर आ जाता हूं। और यहां पर मेरे पास
- 8:39:29एक थी यूजर रजिस्ट्रेशन की एंड पॉइंट। तो
- 8:39:31देखिए ये यूजर रजिस्ट्रेशन की जो एंड
- 8:39:33पॉइंट है वह थी। ठीक है? अब इसमें मैं
- 8:39:36क्या करूंगा? यहां पर ईमेल और पासवर्ड है।
- 8:39:38इन दोनों को कमेंट कर देता हूं इस तरीके
- 8:39:39से। ठीक है? ऐसे और यह हो चुका है। यहां
- 8:39:45पर इसको सेंड करता हूं। तो देखिए अब यह
- 8:39:47रिक्वेस्ट तो थ्रू चली गई। अब यहां पर ये
- 8:39:50वैलिडेशन अप्लाई नहीं हुई है। ठीक है?
- 8:39:51ईमेल भी नल है, पासवर्ड भी नल है। ये
- 8:39:53वैलिडेशन अप्लाई नहीं हुई। क्यों नहीं
- 8:39:54हुई? तो अक्सर बिगिनर्स जो है यहां पर एक
- 8:39:57गलती कर देते हैं। जनरली वैलिडेशंस डीटीओ
- 8:39:59में डालते हैं। और फिर इनको इनेबल करने के
- 8:40:01लिए एक और एनोटेशन की जरूरत होती है जो
- 8:40:03आपको समझना जरूरी है। ठीक है? जस्ट आप
- 8:40:05एनोटेशन यहां पर डाल दोगे डीटीओ में तो
- 8:40:08काम नहीं बनने वाला। आपको यहां पर आना है
- 8:40:10और यहां पर जब आप रिक्वेस्ट को एक्सेप्ट
- 8:40:13कर रहे हो यहां पर आपको लिखना है वैलिड
- 8:40:15ऐसे वैलिड। तो देखिए वैलिड लिखना है और
- 8:40:17यहां पर वैलिड लिखने के बाद आपको प्रेस
- 8:40:20करना है एंटर। तो देखिए ये वैलिड कहां से
- 8:40:22आ रहा है? जकार्ता वैलिडेशन से आ रहा है
- 8:40:24ये। ठीक है? तो यहां पर ऐसे करेंगे। तो इस
- 8:40:28ये करने से क्या होगा? आपने जो वैलिडेशन
- 8:40:30लिखी हुई है डीटीओ में ये वैलिडेशन के जो
- 8:40:32एनोटेशंस लिखे हुए हैं डीटीओ में ये इनेबल
- 8:40:36हो जाएंगे। तो एक हिसाब से आप वैलिडेशन को
- 8:40:38इनेबल कर रहे हो। यह वैलिडेशन इनेबल्ड
- 8:40:40नहीं थे। ठीक है? तो देखिए यहां पर यह
- 8:40:43एप्लीकेशन रन हो गई। और अब मैं दोबारा ये
- 8:40:46डेटा पास करूंगा ऐसे ही। और जैसे ही डेटा
- 8:40:48पास करूंगा तो देखिए मुझे फॉरबिडन आ गया
- 8:40:50यहां पर। अच्छा फॉरबिडन क्यों आ गया?
- 8:40:52एक्सेस टू रिसोर्सेज प्रोहिबिटेड। तो
- 8:40:54देखिए यहां पर जो कंसोल है वहां पर एरर
- 8:40:57थ्रो हो गई। आप देख पा रहे हो यहां पर एरर
- 8:41:01थ्रो हो गई। तो यह एरर बोल रही है मेथड
- 8:41:04आर्गुमेंट नॉट वैलिड एक्सेप्शन और यहां पर
- 8:41:07जो आपने मैसेज दिया हुआ था वो मैसेज यहां
- 8:41:09पर आपको दिखाई देना चाहिए मैसेज यहां पर
- 8:41:12दिखाई देना चाहिए डिफॉल्ट मैसेज देखिए
- 8:41:14ईमेल इज़ रिक्वायर्ड ठीक है ये मैसेज है तो
- 8:41:17बेसिकली ईमेल नहीं है इसके लिए ये फेल हो
- 8:41:19रहा है आप देख पा रहे हो तो ये जो एरर है
- 8:41:23वो आपको कंसोल पर दिखाई देगी ठीक है तो
- 8:41:26कंसोल पर हैंडल्ड है ये और ये कौन सा
- 8:41:28एक्सेप्शन थ्रो हो रहा है इसको भी नोट कर
- 8:41:30लीजिएगा आप मेथड थड आर्गुमेंट वैलिड
- 8:41:32एक्सेप्शन
- 8:41:34ठीक है मेथड आर्गुमेंट नॉट वैलिड
- 8:41:35एक्सेप्शन सॉरी तो ये एक्सेप्शन थ्रो हो
- 8:41:38रहा है वैलिडेशन अगर फेल होती है तो ठीक
- 8:41:40है तो अब मैं अगर ईमेल पास करता हूं एक
- 8:41:42वैलिड ईमेल ठीक है और इसको सेंड करता हूं
- 8:41:44तो भी एरर आएगी बिकॉज़ पासवर्ड मैंने पास
- 8:41:46नहीं किया है तो देखिए यहां पर अगर आप आते
- 8:41:48हो यहां पर तो ये फिर से एरर आएगी अच्छा
- 8:41:51एसक्यूएल इंटीग्रिटी कंस्ट्रेंट
- 8:41:54ये क्या हो गया यहां पर
- 8:41:57ठीक है अब से इसको क्लियर करता हूं मैं और
- 8:42:00इसको एक के सेंड करता हूं। ठीक है? तो ये
- 8:42:03पासवर्ड पर एरर क्यों आ रहा है? पासवर्ड
- 8:42:05पर एरर नहीं आना चाहिए था आईडियली। यहां
- 8:42:07पर ऊपर अगर आप जाते हो तो हो क्या रहा है
- 8:42:10यहां पर? अच्छा ये कुछ और एरर आ रहा है।
- 8:42:13इंसर्ट इंटू यूजर डुप्लीकेट एंट्री। अच्छा
- 8:42:16ये डुप्लीकेट एंट्री क्रिएट करने जा रहा
- 8:42:18है। [email protected]
- 8:42:21तो मैं यहां पर
- 8:42:23मैं कुछ रैंडम स्ट्रिंग दे देता हूं। ठीक
- 8:42:25है? और फिर यहां पर इसको क्लियर कर देता
- 8:42:27हूं। ठीक है? अब मैं फिर से सेंड करता
- 8:42:30हूं। अच्छा तो यह तो थ्रू हो गया। तो
- 8:42:32पासवर्ड की वैलिडेशन सक्सेसफुल नहीं हुई।
- 8:42:35ईमेल पासवर्ड अच्छा सॉरी मैंने पासवर्ड पर
- 8:42:37लगाया ही नहीं है एनोटेशन। सॉरी तो
- 8:42:40पासवर्ड पर लगाया नहीं थोड़ा सा कंफ्यूजन
- 8:42:41हो गया था। और जो पहले एरर आ रही थी वो
- 8:42:44यूनिक कंस्ट्रेंट की एरर आ रही थी। तो वो
- 8:42:47एरर इसलिए आ रही थी क्योंकि यह जो ईमेल था
- 8:42:49[email protected]
- 8:42:51उस ईमेल से एक यूजर ऑलरेडी बना हुआ था
- 8:42:54डेटाबेस में। ठीक है? है तो मैं डुप्लीकेट
- 8:42:55यूजर बनाने जा रहा था और अगर आप मॉडल चेक
- 8:42:57करोगे मॉडल यूजर की ठीक है यहां पर आके
- 8:43:01यूजर की मॉडल ऐसे तो यहां पर आप देखोगे तो
- 8:43:05ईमेल को हमने ट्रू मार्क कर रखा है ईमेल
- 8:43:07इज़ ईमेल शुड बी यूनिक ठीक है तो वो एरर
- 8:43:09इसलिए आ रही थी और यहां पर पासवर्ड के लिए
- 8:43:12हमने एक्चुअली वैलिडेशन लगाई नहीं है तो
- 8:43:14इसके लिए पासवर्ड के लिए एरर नहीं आई। ठीक
- 8:43:16है? तो पासवर्ड को तो मैं वैसे भी इनेबल
- 8:43:18कर देता हूं। पासवर्ड के लिए वैलिडेशन लगी
- 8:43:20नहीं है। लेकिन अब मैं जो है ना ईमेल एक
- 8:43:22इनवैलिड फॉर्मेट में भेजता हूं। तो मैं @
- 8:43:24हटा देता हूं। ठीक है? @ हटा दिया है
- 8:43:26मैंने ईमेल में से। अब इसको सेंड करता
- 8:43:28हूं। तो देखिए फिर से एरर आ गई। और यहां
- 8:43:30पर अब एरर का मैसेज देखोगे तो ये बोलेगा
- 8:43:32इनवैलिड ईमेल। ठीक है? वैलिड इनवैलिड ईमेल
- 8:43:36है ये क्योंकि फॉर्मेट ही सही नहीं है।
- 8:43:38करेक्ट? तो ये फेल हो गया। तो देखिए एक
- 8:43:40हिसाब से कितना टाइम आपका बचा रहा है।
- 8:43:42आपको ईमेल वैलिडेशन के लिए कॉम्प्लेक्स
- 8:43:44लॉजिक लिखना पड़ता। अच्छा वो पैटर्न
- 8:43:46मैचिंग वो सब करना पड़ता। आपको आपको ईमेल
- 8:43:50प्रेजेंट है या नहीं उसके लिए इफ कंडीशंस
- 8:43:51लिखनी पड़ती। ठीक है? अब आपने किया ही
- 8:43:54क्या है? अब आपने एक डिपेंडेंसी ऐड की है
- 8:43:57और आपने एनोटेशंस का इस्तेमाल किया है।
- 8:43:59ठीक है? एनोटेशंस के इस्तेमाल से आपको ये
- 8:44:02भी प्रोविज़ मिल जाता है कि आप इसमें मैसेज
- 8:44:05अपना खुद का डिफाइन कर पाओ। ठीक है? और
- 8:44:07देखिए वो मैसेज इस्तेमाल भी हो रहा है। और
- 8:44:09यहां पर सेम एक्सेप्शन थ्रो हुआ है मेथड
- 8:44:11आर्गुमेंट नॉट वैलिड एक्सेप्शन।
- 8:44:14ठीक है? तो आप देख पा रहे हैं कैसे ये एक
- 8:44:17हिसाब से मैनेज हो रहा है। ठीक है? तो
- 8:44:20उम्मीद करता हूं यह आपको क्लियर हो रहा
- 8:44:22है। ठीक है? देखिए दो स्टेप तीन स्टेप
- 8:44:24प्रोसेस है वैलिडेशन इनेबल करना। एक तो
- 8:44:26सबसे पहले आपको यहां पर ये स्टार्टर
- 8:44:29वैलिडेशन की जो डिपेंडेंसी है उसको ऐड
- 8:44:31करना है। सबसे पहली चीज़ ठीक है? दूसरी चीज़
- 8:44:34आपको यहां पर अ ये एनोटेशंस ऐड करने हैं
- 8:44:38डीटीओ में। ठीक है? और फिर यहां पर हमने
- 8:44:40आया और यहां पर हमने यह वैलिड एनोटेशन को
- 8:44:42इनेबल किया। वैलिड एनोटेशन को अगर आप नहीं
- 8:44:44लिखते हो तो वैलिडेशंस अप्लाई नहीं होते।
- 8:44:47तो वैलिडेशंस को इनेबल करने के लिए आपको
- 8:44:49ये वैलिड एनोटेशन का इस्तेमाल जरूर करना
- 8:44:52है। ठीक है? अब देखिए यहां पर हो क्या रहा
- 8:44:54है ना मैं आपको एक चीज बता देता हूं। ठीक
- 8:44:56है? अ यहां पर हो ये रहा है कि यहां पर ये
- 8:44:59जो एरर आपको दिखाई दे रहा है ये एरर आपको
- 8:45:02कंसोल पर दिखाई दे रहा है। यहां पर 403
- 8:45:04फॉरबिडन आ रहा है। क्या ये हैंडल्ड है
- 8:45:07प्रॉपर्ली? जी नहीं। यह प्रॉपर्ली हैंडल्ड
- 8:45:09नहीं है। तो आप क्या कर सकते हो? यहां पर
- 8:45:10ना आप एक ग्लोबल एक्सेप्शन हैंडलर भी लिख
- 8:45:13सकते हो। ठीक है? एक ग्लोबल एक्सेप्शन
- 8:45:15हैंडलर जिसकी मदद से एक्सेप्शनंस को आप
- 8:45:17हैंडल करोगे। ठीक है? तो मैं देखिए यहां
- 8:45:20पर आ जाता हूं और यहां पर वो एक्सेप्शन
- 8:45:22थ्रो हो रहा है। करेक्ट मेथड क्या था? अ
- 8:45:26एक्सेप्शन का नाम मेथड आर्गुमेंट नॉट
- 8:45:28वैलिड एक्सेप्शन। ठीक है? तो आप यहां पर आ
- 8:45:29सकते हो और उसको बढ़िया तरीके से आप हैंडल
- 8:45:31भी कर सकते हो जो हिसाब से। तो आप यहां पर
- 8:45:33लिख सकते हो एक्सेप्शनंस डॉट ग्लोबल
- 8:45:37एक्सेप्शन हैंडलर। ठीक है? इस तरीके से
- 8:45:41आपने ये एक ग्लोबल एक्सेप्शन हैंडलर आपने
- 8:45:43डिफाइन कर दिया। रेस्ट कंट्रोलर एडवाइस
- 8:45:45लिखोगे यहां पर रेस्ट कंट्रोलर एडवाइस।
- 8:45:48ठीक है? इस पर अगर आप ओवर करोगे तो देखिए
- 8:45:50शॉर्टकट एनोटेशन है। ठीक है? ये रेस्ट
- 8:45:53कंट्रोलर एडवाइस के लिए। ठीक है? तो मैंने
- 8:45:55वो लिख दिया यहां पर। और यहां पर मैं
- 8:45:57लिखूंगा कि ये है एक्सेप्शन हैंडलर। ठीक
- 8:46:00है? और यहां पर लिखूंगा पब्लिक रिस्पांस
- 8:46:03एंटिटी
- 8:46:06और फिर यहां पर लिखूंगा मैप। ठीक है? मैप
- 8:46:09इसलिए क्योंकि मैं कुछ भी डेटा भेज सकता
- 8:46:10हूं मैप के फॉर्म में। तो फ्लैक्सिबिलिटी
- 8:46:12के स्टैंड पॉइंट से मैंने मैप लिखा है।
- 8:46:14अच्छा मैप को इंपोर्ट भी करना होगा।
- 8:46:16इंपोर्ट करने की जरूरत है। ये मैंने कर
- 8:46:18दिया यहां पर। और यहां पर मैं लिख सकता
- 8:46:20हूं हैंडल वैलिडेशन एर्स। ठीक है? इस
- 8:46:24हिसाब से। और यहां पर मैं लिखूंगा कौन सा
- 8:46:27अ एक्सेप्शन मैं हैंडल करना चाह रहा हूं?
- 8:46:29मेथड आर्गुमेंट नॉट वैलिड एक्सेप्शन और
- 8:46:32यहां पर ईएक्स। ठीक है? और यहां पर ये
- 8:46:34मेथड को ओपन कर दूंगा। और मुझे एक्सेप्शन
- 8:46:36हैंडलर में भी ये जो एक्सेप्शन है इसका
- 8:46:38नाम लिखना पड़ेगा। तो ये मैं लिखूंगा मेथड
- 8:46:40आर्गुमेंट नॉट वैलिड एक्सेप्शन डॉट क्लास।
- 8:46:43ठीक है? यहां पर आ जाते हैं। यहां पर मैप
- 8:46:45लिखूंगा और फिर यहां पर लिखूंगा स्ट्रिंग
- 8:46:48कॉमा स्ट्रिंग और एक हिसाब से यहां पर
- 8:46:51लिखूंगा एरर्स इज़ इक्वल टू न्यू#श मैप। तो
- 8:46:55मैं एरर्स की एक हैश मैप बना रहा हूं। और
- 8:46:56जो भी मुझे एरर मैसेज आ रहा है, मैं उसको
- 8:46:58पास करना चाह रहा हूं इस एरर के मैप में।
- 8:47:01ठीक है? तो मैं यहां पर कहूंगा exइंडिंग
- 8:47:05रिजल्ट डॉट गेट फील्ड एरर। तो देखिए आपको
- 8:47:09यहां पर अ यहां पर आपको गेट फील्ड एरर तो
- 8:47:12गेट फील्ड एरर की मदद से आपको सारे
- 8:47:14फील्ड्स के एरर मिल जाएंगे। ठीक है? और
- 8:47:16फिर आपको लिखना है डॉट फॉर ईच। अच्छा ये
- 8:47:20क्या गड़बड़ हो गई? गेट फील्ड एरर्स आपको
- 8:47:23लेना है। एरर नहीं एरर्स लेना है। तो
- 8:47:24इसमें सारे एरर्स मिलेंगे। और फिर आपको ये
- 8:47:26फॉर ईच लेना है। ठीक है? और फिर यहां पर
- 8:47:29एरर्स और ऐसे और फिर एर्स डॉट पुट ओके
- 8:47:36क्या गड़बड़ हो गई एर्स
- 8:47:40ओके एरर लेना है एरर लेना है और फिर एरर
- 8:47:43डॉट
- 8:47:48अच्छा एरर्स डॉट पुट एक के हिसाब से और
- 8:47:51यहां पर लेना है अ एरर डॉट गेट फील्ड कॉमा
- 8:47:56एरर डॉट गेट डिफॉल्ट ऑल्ट मैसेज ऐसे लिख
- 8:47:59देना है। ठीक है? तो आप एक हिसाब से क्या
- 8:48:01कर रहे हो? उस मैप में सारे एरर्स को ऐड
- 8:48:04कर रहे हो और फिर रिटर्न कर रहे हो
- 8:48:06रिस्पांस एंटिटी डॉट बैड रिक्वेस्ट।
- 8:48:08क्योंकि ये बैड रिक्वेस्ट हो गई और बॉडी
- 8:48:11में आप डाल रहे हो। बॉडी में आप डाल रहे
- 8:48:14हो एरर्स।
- 8:48:16इस तरीके से।
- 8:48:20ठीक है?
- 8:48:22डन। एक हिसाब से। तो यहां पर आप देख रहे
- 8:48:24हो ग्लोबल एक्सेप्शन हैंडलर डिफाइन किया
- 8:48:26है क्योंकि एक्सेप्शन कहां से भी आ सकती
- 8:48:28है। ठीक है? मेथड आर्गुमेंट नॉट वैलिड
- 8:48:30एक्सेप्शन ये एक्सेप्शन को हम हैंडल कर
- 8:48:32रहे हैं। क्यों? क्योंकि आप देख रहे हो
- 8:48:34क्लियरली कि ये वैलिडेशन एरर मेथड
- 8:48:36आर्गुमेंट नॉट वैलिड एक्सेप्शन थ्रो कर
- 8:48:38रहा है। और ये एरर का जो डिटेल है उसको
- 8:48:40पास भी कर रहा है। तो यहां पर मैं क्या
- 8:48:42करूंगा? एक रिस्पांस एंटिटी रिटर्न कर रहा
- 8:48:44हूं। मैप के फॉर्म में स्ट्रिंग स्ट्रिंग
- 8:48:46क्योंकि मुझे फ्लेक्सिबिलिटी चाहिए। एक
- 8:48:48हैश मैप को बना लिया मैंने। और यह जो एरर
- 8:48:49का ऑब्जेक्ट है इसमें मैं देखिए पुट कर
- 8:48:51रहा हूं चीजों को। तो फील्ड फील्ड का नाम
- 8:48:54और फिर एरर का डिफॉल्ट मैसेज। उसको मैं ऐड
- 8:48:57करते जा रहा हूं। और फिर यह मैप को रिटर्न
- 8:48:59कर रहा हूं। तो, यह फील्ड का नाम देगा
- 8:49:00यहां पर एरर डॉट गेट फील्ड और गेट डिफ़ॉल्ट
- 8:49:03मैसेज डिफ़ॉल्ट मैसेज देगा जो आपको दी आपने
- 8:49:05सेट किया हुआ है यहां पर मॉडल में। आपने
- 8:49:09जो भी मैसेज सेट किया हुआ है वो यहां पर
- 8:49:11से ऐड होगा। ठीक है? और फिर आप बैड
- 8:49:15रिक्वेस्ट भेज रहे हो यहां पर रिस्पांस
- 8:49:18एंटिटी में और बॉडी में एरर्स भेज रहे हो।
- 8:49:20इसको रन करके एक बार देख लेते हैं। देखिए
- 8:49:22ये किस तरीके से काम करेगा। आप देख सकते
- 8:49:23हो। ठीक है? तो यहां पर देखिए मैं मैं फिर
- 8:49:26से ईमेल जो है उसको इनवैलिड कर देता हूं
- 8:49:29और यहां पर देखता हूं ये स्टार्ट हुआ है
- 8:49:30या नहीं एप्लीकेशन। स्टार्ट तो हो गई। अब
- 8:49:32इसको सेंड करके देखते हैं। तो देखिए 400
- 8:49:34बैड रिक्वेस्ट। पहले 403 आ रहा था। क्या आ
- 8:49:37रहा था पहले? पहले आ रहा था 403 एरर। 403
- 8:49:41इसलिए आ रहा था क्योंकि हैंडल नहीं था
- 8:49:43प्रॉब्ली। ठीक है? अब मैं हैंडल कर रहा
- 8:49:45हूं इसको और यहां पर मैनुअली मैं 400 बैड
- 8:49:47रिक्वेस्ट भेज रहा हूं। बैड रिक्वेस्ट का
- 8:49:49मतलब यह है कि आपने जो रिक्वेस्ट भेजी है
- 8:49:51वो सही नहीं है तो आप रिक्वेस्ट चेक
- 8:49:53कीजिए। तो अब होगा क्या जो भी मोबाइल
- 8:49:55एप्लीकेशन, वेब एप्लीकेशन या कोई भी इस
- 8:49:58एपीआई को यूज़ कर रहे हो उसको समझ जाएगा
- 8:50:00अच्छा रिक्वेस्ट में कुछ गड़बड़ है और यहां
- 8:50:02पर बॉडी में आप पूरी डिटेल डिटेल्स भेज भी
- 8:50:03रहे हो कि ईमेल में इनवैलिड ईमेल है। ठीक
- 8:50:06है? तो देखिए मैं @ लगाऊंगा। और अगर ईमेल
- 8:50:09को अगर मैं स्किप ही कर देता हूं पूरी
- 8:50:11तरीके से। यहां पर मैंने स्किप कर लिया
- 8:50:12ईमेल को सेंड करता हूं। तो देखिए ईमेल इज़
- 8:50:14रिक्वायर्ड। ठीक है? यह सब करने के लिए
- 8:50:17आपने कोड ही कितना लिखा है? यह सारा
- 8:50:19फ्रेमवर्क का कमाल है। सारी जो
- 8:50:21डिपेंडेंसीज हमने ऐड की है, उसका कमाल है।
- 8:50:23दोस्तों, काफी जबरदस्त चीज है ये। एक टाइम
- 8:50:27था जब जब ये फ्रेमवर्क्स नहीं होते थे, तब
- 8:50:28डेवलपर्स को ये सारे कोड है ना खुद से
- 8:50:30लिखने पड़ते थे कि अच्छा ईमेल को चेक करो।
- 8:50:32ईमेल नहीं है तो ये पास कर दो। ठीक है? तो
- 8:50:35आप एक ग्लोबल क्लास बनाते थे जहां पे ईमेल
- 8:50:37का वैलिडेशन का कोड लिखते थे। और फिर आप
- 8:50:40वहां पर कोई फील्ड आती है तो फील्ड को
- 8:50:43फील्ड में अगर वैल्यू नहीं है तो क्या
- 8:50:46रिटर्न करना है वो सारी एक ऐसी क्लास
- 8:50:47बनाते थे और फिर वो क्लास में से जो
- 8:50:49मेथड्स आपने डिफाइन किए पब्लिक स्टैटिक
- 8:50:51उनको सब जगह कॉल करते थे। तो ये काफी
- 8:50:53रिपीिटेटिव टास्क होता था। ठीक है? और
- 8:50:55मतलब करने के अलावा और कोई सशन नहीं होता
- 8:50:58था। लेकिन आजकल के जो फ्रेमवर्क्स हैं
- 8:51:00यानी कि जो फ्रेमवर्क्स जिस तरीके से
- 8:51:01बिल्ड हुए, डेवलप हुए ये सारी चीजें देखिए
- 8:51:04कितनी ऑटोमेट हो जाती है। एक हिसाब से
- 8:51:05ऑटोमेशन ही कहूंगा मैं। आप सिर्फ बता रहे
- 8:51:08हो। देखिए यहां पर कंसोल पे अभी कुछ
- 8:51:10प्रिंट नहीं हुआ है। क्यों प्रिंट नहीं
- 8:51:11हुआ है? क्योंकि आपने इसको हैंडल कर लिया
- 8:51:12है। आपने इसको हैंडल कर लिया है ग्लोबल
- 8:51:14एक्सेप्शन हैंडलर में। ठीक है? तो कंसोल
- 8:51:16इज़ क्लीन। कंसोल क्लीन है लेकिन एरर यहां
- 8:51:19पर आ रही है। अब यूजर को दिखाई दे रही है
- 8:51:21कि भाई तूने गलत डेटा भेजा है। अब तू
- 8:51:23फिक्स कर इसे। ठीक है? और यहां पर देखिए
- 8:51:26हमने किया ही क्या है? तो मैं मैं बता रहा
- 8:51:28था आपको कि हमने क्या किया है? तो यहां पर
- 8:51:29देखिए सबसे पहले तो एक डिपेंडेंसी ऐड की
- 8:51:31है। ठीक है? डीटीओ में हमने लिख दिया है
- 8:51:34क्या-क्या वैलिड होना चाहिए, क्या नहीं
- 8:51:36होना चाहिए। ठीक है? फिर ग्लोबल एक्सेप्शन
- 8:51:38हैंडलर सॉरी नहीं ये लिखने के बाद फिर
- 8:51:40हमने वैलिडेशन को इनेबल किया हुआ है यहां
- 8:51:43कि भाई यहां पर वैलिडेशंस लिखे हुए हैं और
- 8:51:45वैलिडेशन करने के बाद ही ये जो ऑब्जेक्ट
- 8:51:48है उसे एक्सेप्ट करना है। ये इसीलिए लिखते
- 8:51:49हैं हम लोग वैलिडेशंस को पहले अप्लाई करना
- 8:51:52जो रिक्वेस्ट बॉडी में लिखे गए हैं अ सॉरी
- 8:51:54रजिस्टर रिक्वेस्ट में लिखे गए हैं और फिर
- 8:51:56ही ऑब्जेक्ट क्रिएट करना नहीं तो नहीं
- 8:51:58करना। यहीं पर रिजेक्ट कर देना। यहीं पर
- 8:52:01रिजेक्ट हो जाता है। अगर तो ग्लोबल
- 8:52:03एक्सेप्शन हैंडलर क्लास है जहां पर यह
- 8:52:05एक्सेप्शन को हमने हैंडल कर रखा है। और जो
- 8:52:07भी फील्ड के नाम आते हैं देखिए यह फील्ड
- 8:52:09का नाम यहां पर ईमेल था। तो हमें आउटपुट
- 8:52:11में भी ईमेल दिख रहा है। अगर मैं यूजर
- 8:52:13ईमेल कर दूं उसे तो आउटपुट में भी यूजर
- 8:52:15ईमेल दिखेगा। तो जो भी फील्ड का नाम है वो
- 8:52:17यहां पर दिखाई देगा। तो कैसे सारी चीजें
- 8:52:19कनेक्ट हो जाती है। अब ये सेम वैलिडेशन हम
- 8:52:22डाल सकते हैं पासवर्ड के लिए भी। तो मैं
- 8:52:24डालूंगा नॉट ब्लैंक
- 8:52:27इस तरीके से और फिर लिख दूंगा मैसेज ऐसा
- 8:52:31और फिर लिख दूंगा अ पासवर्ड
- 8:52:35इज़ रिक्वायर्ड
- 8:52:37ऐसे। ठीक है? और अब आप इसको रन करोगे तो
- 8:52:40ये जो वैलिडेशंस थी ये सारी वैलिडेशंस
- 8:52:42अप्लाई हो जाएगी अ यहां पर पासवर्ड के लिए
- 8:52:46भी। ठीक है? तो ईमेल को ऐसा अनकमेंट
- 8:52:49करेंगे और फिर आप अगर इसको भेजते हो तो
- 8:52:51देखिए पासवर्ड इज़ रिक्वायर्ड। ईमेल भी
- 8:52:53नहीं भेजोगे आप। तो देखते हैं क्या आउटपुट
- 8:52:54आता है। देखिए ईमेल इज रिक्वायर्ड,
- 8:52:57पासवर्ड इज रिक्वायर्ड। दोनों के लिए
- 8:52:58वैलिडेशंस चल रही है। अगर आप अब ईमेल
- 8:53:01भेजते हो लेकिन ईमेल गलत भेजते हो तो वो
- 8:53:04फील्ड के लिए जो भी वैलिडेशंस है लाइक
- 8:53:05ईमेल नॉट वैलिड वो भी दिखाई देगी। देखिए
- 8:53:07इनवैलिड ईमेल पासवर्ड इज़ रिक्वायर्ड। ठीक
- 8:53:09है? देख पा रहे हो? ठीक है? और अब इसको
- 8:53:13मैं अगर सेंड करता हूं। ठीक है? इसको सेंड
- 8:53:16करता हूं तो देखिए यूजर क्रिएट भी हो गया।
- 8:53:18ठीक है? उम्मीद करता हूं यह काफी क्लियर
- 8:53:21रहा आपको। और वैलिडेशंस कितने तगड़े हैं।
- 8:53:24यानी कितने कितनी बढ़िया चीज है। स्प्रिंग
- 8:53:28बूट में अगर आप काम कर रहे हो तो यह इसका
- 8:53:30आपको अंदाजा भी लग गया। इसकी
- 8:53:34ये उम्मीद करता हूं मैं। ठीक है? तो जी
- 8:53:37हां, मुझे बताइए कि कैसा लगा आपको ये पूरा
- 8:53:39का पूरा जो वैलिडेशन का मैजिक है वो और
- 8:53:43उम्मीद करता हूं यह हेल्पफुल रहा।
- 8:53:51तो देखिए दोस्तों, हमने एप्लीकेशन तो
- 8:53:53बढ़िया बना लिए है। ठीक है? हम एप्लीकेशन
- 8:53:55अक्सर बढ़िया बनाते हैं। लेकिन होता क्या
- 8:53:57है? देखिए, ये बैक एंड एप्लीकेशन है। ठीक
- 8:54:00है? रेस्ट एपीआई आपने बनाई है। अब रेस्ट
- 8:54:02एपीआई बनाने के बाद ठीक है? नेक्स्ट काम
- 8:54:05ये होता है। देखिए आपने ये बैक एंड
- 8:54:07एप्लीकेशन बना दी। इसमें है एपीआई। ठीक
- 8:54:10है? अब एपीआई कौन इस्तेमाल करने वाला है?
- 8:54:12ये इस्तेमाल करने वाला है या तो मोबाइल
- 8:54:15एप्लीकेशन होगा आपके पास। ठीक है? या तो
- 8:54:18आपके पास होगा वेब ऐप होगा वेब ऐप
- 8:54:23ठीक है या तो आपके पास होगा कोई क्लाइंट
- 8:54:25जैसे कि पोस्टमैन ठीक है अच्छा पोस्टमैन
- 8:54:30ठीक है तो इनमें से कोई भी हो सकता है जो
- 8:54:33एपीआई को इस्तेमाल कर रहा है और यहां से
- 8:54:35आपको सारी की सारी जो रिक्वेस्ट है वो
- 8:54:37आएगी अब यहां पर दिक्कत क्या है देखिए
- 8:54:40एपीआई तो आपने बना दी अब आप इनको बोल दोगे
- 8:54:42अच्छा अच्छा एपीआई बन चुकी है अब ऐप की
- 8:54:46टीम वेब वेब की टीम पोस्टमैन या ये सारी
- 8:54:49टीम्स जो भी इस्तेमाल करना चाह रही है।
- 8:54:51ठीक है? जिनके पास पोस्टमैन है, कोई
- 8:54:53क्लाइंट है, कोई प्रोडक्ट मैनेजर है जो
- 8:54:54पोस्टमैन की मदद से आपकी एपीआई चेक कर रहा
- 8:54:56है। तो इन सारी टीम्स को आपको बताना होगा
- 8:54:59कि कौन सी कौन सी एंड पॉइंट्स रेडीमेड है
- 8:55:02अवेलेबल। और इनको कैसे एक्सेस करना है,
- 8:55:05क्या-क्या पैरामीटर्स किन फॉर्मेट में
- 8:55:07प्रोवाइड करना है और रिस्पांस कोड्स
- 8:55:09क्या-क्या हैं या एरर्स क्या-क्या आएंगी
- 8:55:11या आपको रिस्पांस किस फॉर्मेट में आएगा।
- 8:55:14ये सारी चीजें आपको इनको बताना होगा। तो
- 8:55:16एक हिसाब से एंड पॉइंट की डिटेल्स
- 8:55:18रिक्वेस्ट किस रिक्वेस्ट में क्या-क्या
- 8:55:20पैरामीटर्स और क्या-क्या डिटेल्स एडिशनल
- 8:55:22डिटेल्स जैसे कि रिक्वेस्ट बॉडी क्या होनी
- 8:55:24चाहिए ये सारी डिटेल्स आपको भेजनी है और
- 8:55:27आपको जो रिस्पांस एक्सपेक्टेड है वो क्या
- 8:55:29एक्सपेक्टेड है वो भी दिखाना है इनको तो
- 8:55:31देखिए मैं बता देता हूं एंड पॉइंट डिटेल्स
- 8:55:33एंड पॉइंट डिटेल्स ठीक है फिर आप अ जो
- 8:55:38एडिशनल
- 8:55:40डेटा जैसे कि एडिशनल डेटा का मतलब है
- 8:55:43रिक्वेस्ट बॉडी और पैराम्स वग़ैरह जो भी
- 8:55:46पास करना है, वह सब आपको बताना होगा। और
- 8:55:48फिर यहां पर आपको बताना होगा रिस्पांस
- 8:55:51फ़ॉर्मेट। ठीक है? रिस्पांस फ़ॉर्मेट क्यों
- 8:55:54ज़रूरी है? देखिए, एंड पॉइंट डिटेल्स तो
- 8:55:56चलो वो कॉल करने के लिए जरूरी है। एडिशनल
- 8:55:58डेटा भी कॉल करने के लिए जरूरी है कि मुझे
- 8:55:59क्या-क्या डेटा भेजना चाहिए। वो सारी कॉल
- 8:56:01करने के लिए जरूरी है। लेकिन रिस्पांस
- 8:56:03आपको किस फॉर्मेट में आएगा ये भी जानना इन
- 8:56:05टीम्स को जरूरी है। क्योंकि देखिए
- 8:56:07रिस्पांस अक्सर JSN में आता है। तो ऐप टीम
- 8:56:10उसके लिए एक पार्सलर लिखेगी। लाइक जसन को
- 8:56:12पास करेगी और कौन सी कौन सी-कौ डेटा आ रहा
- 8:56:14है जैसे कि यूजर आईडी कहां पर आ रही है
- 8:56:16क्या की है यूजर आईडी की ये सारा पास करके
- 8:56:19फ्रंट एंड पर अगर उनको जैसे भी डेटा
- 8:56:21इस्तेमाल करना है उसके लिए रिस्पांस
- 8:56:23फॉर्मेट जरूरी हो जाता है इनके लिए ठीक है
- 8:56:25तो ऐप वेब ऐप और पोस्टमैन टीम के लिए सारी
- 8:56:28चीजें जरूरी है पोस्टमैन जो भी यूज़ कर
- 8:56:29रहा है ठीक है पोस्टमैन की टीम नहीं होगी
- 8:56:30पोस्टमैन जो भी इस्तेमाल कर रहा है आपकी
- 8:56:32कंपनी में ठीक है तो आपको ये सारी चीजें
- 8:56:34इनको भेजनी पड़ेगी अब ये बताने की दो
- 8:56:37चीजें हैं एक तो दो चीजें नहीं एक एक चीज
- 8:56:41है आप इनको डॉक्यूमेंटेशन एक बना के दे दो
- 8:56:43या तो फिर इनफॉर्मली आप बता दो क्या ये
- 8:56:46एंड पॉइंट है और ऐसे आपको डेटा भेजना है
- 8:56:49लेकिन प्रॉब्लम क्या है ये वर्बल
- 8:56:50कम्युनिकेशन है ना आप कितनी एंड पॉइंट्स
- 8:56:51की करोगे करेक्ट ये सही अप्रोच नहीं है और
- 8:56:54अगर बड़ी टीम है तो आपको डॉक्यूमेंट बनाना
- 8:56:56होगा डॉक्यूमेंट भेजना होगा कि अच्छा ये
- 8:56:58ऐसा-ऐसा है अब आप कोई भी अपडेट कर देते हो
- 8:57:00एंड पॉइंट में कोड में कोई भी चेंज कर
- 8:57:02देते हो तो डॉक्यूमेंट भी जाके अपडेट करो
- 8:57:04काफी काम पड़ जाता है डेवलपर के लिए ठीक
- 8:57:06है और हम डेवलपर्स हैं कोड लिखना पसंद
- 8:57:10हमें डॉक्यूमेंटेशन वॉक्यूमेंटेशन वैसे भी
- 8:57:13बोरिंग लगता है काफी। ठीक है? तो मैं एक
- 8:57:16ऐसा टूल आपको बताऊंगा जिसे कहते हैं
- 8:57:18स्वैगर। और इस टूल की मदद से आप अगर इस
- 8:57:21टूल को इंटीग्रेट करते हो आपकी एप्लीकेशन
- 8:57:24में तो आपके एप्लीकेशन की जितने भी एंड
- 8:57:26पॉइंट्स हैं स्वैगर टूल उसको बेहतर तरीके
- 8:57:29से समझ जाएगा। रिक्वेस्ट रिस्पांस जो भी
- 8:57:31है उसको समझ जाएगा और आपको एक
- 8:57:33डॉक्यूमेंटेशन ऑटोमेटिकली बना के दे देगा।
- 8:57:36जी हां, ऑटोमेटिकली आप जब भी कोड में कोई
- 8:57:38एपीआई चेंज करते हो, तो वह डॉक्यूमेंटेशन
- 8:57:40में रिफ्लेक्ट करेगा। तो, यह एक लाइव एंड
- 8:57:43पॉइंट है जिसको आप अपनी टीम के साथ शेयर
- 8:57:46कर सकते हो और आपकी टीम इसको इस्तेमाल भी
- 8:57:49कर सकती है। ठीक है? तो देखिए, पहले आप
- 8:57:52डॉक्यूमेंटेशन बना के देते थे। Google
- 8:57:53डॉक्स या वर्ड फाइल बना के दोगे। आप
- 8:57:56रिक्वेस्ट रिस्पांस मैनुअली डिफाइन करोगे
- 8:57:58और शेयर करोगे। ईमेल पर सेंड करोगे। अब
- 8:58:00अगर एपीआई में चेंज होता है तो आप
- 8:58:02डॉक्यूमेंटेशन अपडेट करोगे और फिर वर्जन
- 8:58:03टू भेजोगे डॉक्यूमेंटेशन का। और चेंज होता
- 8:58:06है तो वर्जन 3 भेजोगे तो यह वर्जनंस बनते
- 8:58:08ही रहेंगे। फाइनल V3 फाइनल V2 ये फाइनल V3
- 8:58:12और वर्जन नेम आप डालते ही रहोगे। ठीक है?
- 8:58:14और आपके लिए भी काफी मैनुअल एफर्ट है। अगर
- 8:58:16कुछ गलती हो जाती है तो इसकी
- 8:58:17रिस्पांसिबिलिटी कौन लेगा? अगर आपने कुछ
- 8:58:19एक पैरामीटर मिस कर दिया। करेक्ट? टूल का
- 8:58:23बेनिफिट क्या है? स्वैगर का बेनिफिट क्या
- 8:58:24है? वो आपकी एपीआई को देखकर खुद से ही एक
- 8:58:28स्टैंडर्ड फॉर्मेट में डॉक्यूमेंटेशन बना
- 8:58:30देता है। और इस डॉक्यूमेंटेशन को हर कोई
- 8:58:32इस्तेमाल कर सकता है। ठीक है? तो ये काफी
- 8:58:35आसान हो जाता है और आप इसको शेयर कर सकते
- 8:58:37हो आपकी टीम्स के साथ और अगर आप कोई
- 8:58:39चेंजेस करते हो जैसे कि मैंने बताया ये
- 8:58:41लाइव होता है तो चेंजेस आप अगर कोई करोगे
- 8:58:43तो टीम को भी दिखाई देगा। ठीक है? और आपको
- 8:58:45बार-बार डॉक्यूमेंटेशन पे जाने की जरूरत
- 8:58:46नहीं है। आप बेझिझक चेंजेस कर सकते हो।
- 8:58:49ठीक है? तो देखिए अब मैं यहां पर आ जाता
- 8:58:51हूं और आपको बताता हूं कि स्वैगर को कैसे
- 8:58:54एक्सेस करना है। तो स्वैगर सर्च कर लीजिए
- 8:58:56आप। यहां पर आपको स्वैगर आईo करके ये
- 8:58:58वेबसाइट मिल जाएगी। ठीक है? तो यह देखिए
- 8:59:01यह बोलेगा स्वैगर इनेबल्स डिजाइन गवर्नेंस
- 8:59:04एंड टेस्टिंग अक्रॉस फुल्ली एआई जनरेटेड
- 8:59:06ईपीआई लाइफ साइकिल इंश्योरिंग क्वालिटी एट
- 8:59:08एव्री स्टेप। ठीक है? तो हम इसका इस्तेमाल
- 8:59:10करने वाले हैं डॉक्यूमेंटेशन के लिए। तो
- 8:59:12देखिए डिज़ाइन, डॉक्यूमेंट, फंक्शनल टेस्ट
- 8:59:13और कॉन्ट्रैक्ट टेस्ट। लेकिन, हम
- 8:59:15डॉक्यूमेंट के लिए इस्तेमाल करने वाले
- 8:59:16हैं। ठीक है? और यहां पर मैं क्लिक करता
- 8:59:19हूं। अच्छा, क्रिएट योर ओन ईपीआई
- 8:59:21डॉक्यूमेंट। अच्छा, यह तो डॉक्यूमेंट बना
- 8:59:24रहा है। उसके लिए ईपीआई का डॉक्यूमेंट ऐसे
- 8:59:25दिखेगा कुछ। देखिए इस तरीके से दिखेगा।
- 8:59:28पोस्ट रिक्वेस्ट पेट स पेट इज द एंड पॉइंट
- 8:59:32स्लैश पेट एंड पॉइंट है। पेट आईडी पास
- 8:59:34करनी है और अपलोड इमेज। और यह करता क्या
- 8:59:36है? एक इमेज अपलोड करता है। आप इस पे
- 8:59:38क्लिक करोगे एरो पे तो इसकी डिटेल्स ओपन
- 8:59:40हो जाएगी। ठीक है? इस तरीके से काम करता
- 8:59:42है ये। तो मैं क्या करूंगा? यहां पर आपको
- 8:59:45थोड़ी चीजें बता दूंगा। तो देखिए यहां पर
- 8:59:47अगर आप आते हो प्रोडक्ट्स प्रोडक्ट्स तो
- 8:59:50चलिए ठीक है। अ आप
- 8:59:53लर्न पर रिसोर्सेज में आ जाते हो। डॉक्स
- 8:59:56में जाते हो स्वैगर का डॉक्यूमेंटेशन और
- 8:59:58देखिए ओपन एपीआई स्पेसिफिकेशन तो ओपन
- 9:00:01एपीआई एक ऐसा स्पेसिफिकेशन है जो कि एक
- 9:00:02स्टैंडर्ड फॉर्मेट है। ये एक स्टैंडर्ड है
- 9:00:05एपीआई डिज़ाइन करने के लिए। ठीक है? तो जो
- 9:00:08डॉक्यूमेंटेशन जनरेट होता है वो इस
- 9:00:10स्पेसिफिकेशन को ध्यान में रखकर होता है।
- 9:00:13ठीक है? और इसके लिए आपको क्या करना है?
- 9:00:15आपकी एक आपको एक डिपेंडेंसी बस ऐड कर देनी
- 9:00:18है। और थोड़ा बहुत कॉन्फ़िगरेशन कर देना है
- 9:00:20अपने एप्लीकेशन में। तो मैं क्या करूंगा?
- 9:00:21मैं यहां पर आ जाता हूं। और यहां पर मेन
- 9:00:24रिपॉज़िटरी पर चले जाता हूं। मेवन
- 9:00:26रिपॉज़िटरी तो देखिए mvn रिपॉज़िटरी.com
- 9:00:29यहां पर आप मेवन की रिपॉज़िटरीज़ को सर्च कर
- 9:00:31सकते हो। ठीक है? स्प्रिंग इनिशलाइज़र में
- 9:00:33अगर आप आते हो तो यहां पर स्वैगर अगर आप
- 9:00:35सर्च करोगे तो आपको दिखाई नहीं देगा यहां
- 9:00:37पर स्वैगर। ठीक है? तो इसीलिए हम मेन
- 9:00:38रिपोज़िटरी पर आ रहे हैं। इसकी मेवन
- 9:00:40डिपेंडेंसी जो है उसको हम ले लेंगे। और
- 9:00:42यहां पर मैं सर्च करूंगा स्वैगर WVC।
- 9:00:47ठीक है? स्वैगर वेब एमbसी को अगर मैं सर्च
- 9:00:49करता हूं तो यहां पर देखिए यह है स्वैगर
- 9:00:52ओपन एपीआई अच्छा वेब एमवीसी कहां है? वेब
- 9:00:56एमवीसी तो यही होना चाहिए एक स्वैगर
- 9:00:58एनोटेशंस बोल रहा है यह स्वैगर वेब एमवीसी
- 9:01:01यूआई ऐसे सर्च करता हूं
- 9:01:05स्वैगर यूआई ये तो स्प्रिंग फॉक्स है एक
- 9:01:08हिसाब से
- 9:01:10एक मिनट जी हां स्प्रिंग ओपन एपीआई
- 9:01:14स्टार्टर वेब एमबीसी यूआई तो यह वाली जो
- 9:01:17एपीआई है। इसको आपको क्लिक करना है। ठीक
- 9:01:20है? यह वाली एंड पॉइंट है स्प्रिंग डॉक
- 9:01:23की। ठीक है? आप देख पा रहे हो यह। और यहां
- 9:01:25पर जो लेटेस्ट वर्जन है उस पे क्लिक कर
- 9:01:27देना है। ठीक है? ऐसे। तो ये देखिए आपको
- 9:01:30मिल जाएगा। ठीक है? इसको कॉपी कर लेना है।
- 9:01:34ठीक है? तो देखिए दोस्तों, आप कहोगे कि ये
- 9:01:36स्प्रिंग डॉक क्या है? पहले तो मैं ये
- 9:01:37इसको कॉपी कर लेता हूं। इंक्लूड बैकलिंक्स
- 9:01:39को अनचेक कर देता हूं। तो मुझे बैकलिंक्स
- 9:01:41नहीं चाहिए और इसको कॉपी कर लिया मैंने।
- 9:01:43यहां पर आके फॉर्मxml में इसको ऐड कर देता
- 9:01:45हूं। ठीक है? यहां पर मैंने ऐड कर दिया और
- 9:01:47इसको मेवन रीलोड भी कर लेता हूं। ठीक है?
- 9:01:50अब आप कहोगे स्प्रिंग क्या है? तो यहां पर
- 9:01:52इसकी वेबसाइट भी आपको दिखाई देगी। अच्छा
- 9:01:55यहां पर तो नहीं है वेबसाइट। तो यहां पर
- 9:01:56एक स्टेप बैक जाओगे तो spring.org
- 9:02:00इस पे अगर आप चले जाते हो तो देखिए यह एक
- 9:02:02स्प्रिंग का प्रोजेक्ट है जिसके जरिए आप
- 9:02:05ऑटोमेट कर सकते हो जनरेशन ऑफ एपीआई
- 9:02:08डॉक्यूमेंटेशन यूजिंग स्प्रिंग
- 9:02:10प्रोजेक्ट्स। ठीक है? तो यह स्वैगर का
- 9:02:12इस्तेमाल करता है और देखिए ये स्वैगर uआई
- 9:02:15हम कॉन्फिगर कर सकते हैं इसमें और स्वैगर
- 9:02:17uआई है क्या आप यहां पर देख सकते हो यहां
- 9:02:19पर अगर आप आते हो प्रोडक्ट्स पर अ तो यहां
- 9:02:23पर व्यू डॉक्स नहीं करना चाहूंगा मैं यहां
- 9:02:25पर आ जाता हूं ठीक है और यहां पर
- 9:02:27प्रोडक्ट्स पर स्वैकर यूआई तो नहीं दिखाई
- 9:02:31दे रहा है। अच्छा स्वैकर को क्लिक करता
- 9:02:33हूं।
- 9:02:34स्टूडियो पोर्टल कॉन्ट्रैक्ट टेस्टिंग
- 9:02:38अच्छा यूआई का ऐसा कुछ दिखाई नहीं दे रहा
- 9:02:40है यहां पर तो
- 9:02:44swकरio
- 9:02:45कम्युनिटी
- 9:02:48ठीक है यहां पर यूआई का ऐसा कुछ दिखाई
- 9:02:49नहीं दे रहा बस ये स्क्रीनशॉट दिखाई दे
- 9:02:51रहा है तो मैं क्या करूंगा मैंने
- 9:02:52डिपेंडेंसी तो ऐड कर दी है मैं इसको
- 9:02:54सीधे-सीधे आपको इनेबल करके ही दिखाता हूं
- 9:02:56ठीक है अब डिपेंडेंसी देखिए ऐड हो चुकी है
- 9:02:59और डिपेंडेंसी इज डन अब इसको रन करेंगे ना
- 9:03:02हम रन करेंगे ना तो मैं यहां पर आ जाता
- 9:03:05हूं और यहां पर लोकल होस्ट कोन एटीईटी
- 9:03:09सैगर
- 9:03:12यूआई डॉटhml ये एंड पॉइंट पर आपको आ जाना
- 9:03:16है। ठीक है? ये एंड पॉइंट ऑटोमेटिकली
- 9:03:18इनेबल हो जाएगा जब भी आप स्वैगर की
- 9:03:21डिपेंडेंसी ऐड करते हो। ठीक है? लेकिन
- 9:03:23मेरे हिसाब से ये एक्सेसबल नहीं रहेगा
- 9:03:24क्योंकि स्प्रिंग सिक्योरिटी हमने
- 9:03:26कॉन्फ़िगर कर रखा है। अच्छा तो देखिए
- 9:03:27एक्सेस टू लोकल होज़ वर्ज़ डिनाइड 403 एरर आ
- 9:03:30गई। इसका मतलब ये जो है स्प्रिंग
- 9:03:32सिक्योरिटी इसको इनेबल नहीं कर रहा है।
- 9:03:34ठीक है? तो हमें क्या करना होगा? हमें
- 9:03:36एक्चुअली अ स्प्रिंग सिक्योरिटी को बायपास
- 9:03:38करना होगा यहां पर। तो मैं क्या करूंगा?
- 9:03:40यहां पर आ जाता हूं। अच्छा यहां पर और
- 9:03:43यहां पर हमारी जो सिक्योरिटी कॉन्फ़िगरेशन
- 9:03:45है, वहां पर आ जाते हैं सिक्योरिटी और
- 9:03:49यहां पर चले जाएंगे। और यहां पर मैं लिख
- 9:03:52दूंगा इसको
- 9:03:56डुप्लीकेट और यहां पर लिख दूंगा
- 9:03:59स्वैगर।
- 9:04:00यूआई इस तरीके से ठीक है। स्वगर यूआई लिख
- 9:04:04दिया मैंने और इसको मैं एक हिसाब से रीरन
- 9:04:07कर देता हूं। ठीक है? देखते हैं यहां पर
- 9:04:09क्या होता है। स्वैगर यूआई। ठीक है? ये रन
- 9:04:14हो रहा है। मैंने एंड में HTML हटा दिया
- 9:04:16है। वहां से यूआरएल में से। एंड में HTML
- 9:04:18हटा दिया। स्वैगर Hन UI को रन करता हूं।
- 9:04:21अच्छा यह अभी भी नॉट डिनाइड आ रहा है। ओके
- 9:04:25एक हिसाब से
- 9:04:28स्वगर हफन जुई।
- 9:04:36ठीक है? तो ये कॉन्फ़िगरेशन को थोड़ा
- 9:04:38इंप्रूव करना चाहिए। ये इशू को सॉल्व करने
- 9:04:40के लिए। तो स्वैगर UI को तो आपने ऐड कर
- 9:04:43दिया है। लेकिन मैं और एक दो चीज़ ऐड
- 9:04:45करूंगा यहां पर। तो इसको कॉपी कर लेता हूं
- 9:04:46मैं सबसे पहले तो। ठीक है? यहां पर इसको
- 9:04:50रिपीट कर देता हूं। ठीक है? तीन बार मैंने
- 9:04:52ऐड कर दिया इसको। ठीक है? तो यहां पर ऐसे
- 9:04:55लिखूंगा। सो दैट आप लोगों को दिखाई भी दे
- 9:04:57कि मैं लिख क्या रहा हूं। ठीक है? तो
- 9:04:59स्वैगर यूआई है और फॉरवर्ड स्लैश डाला है।
- 9:05:02यहां पर मैं HTML लिख देता हूं। ठीक है?
- 9:05:04तो HTML को अगर आप एक्सेस करते हो तो वो
- 9:05:06इनेबल्ड रहेगा। वहां पे कोई सिक्योरिटी
- 9:05:09नहीं है। ठीक है? और स्लैश स्वैगर UI और
- 9:05:12उसके आगे आप कोई पाथ डालते हो तो वो भी
- 9:05:14इनेबल्ड है। ठीक है? एक और चीज को हमें
- 9:05:16इनेबल करना चाहिए जो कि अ एक प्रैक्टिस
- 9:05:20है। तो मैं ऐड करूंगा ईपीआई वी3 टॉक्स।
- 9:05:24ठीक है? तो V3
- 9:05:26ईपीआई टॉक्स ऐसे ठीक है? इसको भी इनेबल कर
- 9:05:30दिया है। आई थिंक इससे चल जाना चाहिए। ठीक
- 9:05:32है? तो तीन पैटर्न्स तो ये जो पहले का
- 9:05:34पैटर्न था मैंने उसको इंप्रूव किया है।
- 9:05:36तीन पैटर्न्स ऐड किए। स्वैगर UI HTML
- 9:05:38स्वैगर UI स्टारstar और P3 API DX ठीक है?
- 9:05:42अब यहां पर अगर मैं आ जाता हूं, यहां पर
- 9:05:44इसको रीलोड करता हूं। तो देखिए ये यूआई
- 9:05:46जनरेट हो गया। ठीक है? अब इसके थ्रू हम
- 9:05:49लोग जाएंगे। लेकिन मैं सबसे पहले तो यहां
- 9:05:50पर आ जाता हूं। यहां पर आपको एक चीज बता
- 9:05:53दूं। देखिए यहां पर आपको यहां पर लॉग्स
- 9:05:55में आपको काफी सारी चीजें दिख जाएगी। यहां
- 9:05:57पर आप देख सकते हो। देखिए पहले तो
- 9:05:59एप्लीकेशन स्टार्ट हो गई थी यहां तक। ठीक
- 9:06:02है? फिर यहां पर आप देखोगे स्प्रिंग डॉक्स
- 9:06:04से एक अ ये लॉक जनरेट हुआ है। क्योंकि v3
- 9:06:08एपीआई डॉक्स एंड पॉइंट इज़ इनेबल्ड बाय
- 9:06:11डिफ़ॉल्ट। यह इनेबल्ड है और डिसेबल करने के
- 9:06:14लिए आपको यह प्रॉपर्टी का इस्तेमाल करना
- 9:06:16है। यह आप अगर आप एप्लीकेशन प्रॉपर्टीज़
- 9:06:18में ऐड कर देते हो प्रोडक्शन के लिए। ठीक
- 9:06:21है? तो देखिए प्रोडक्शन के लिए क्यों बोल
- 9:06:23रहा है? क्योंकि जनरली प्रोडक्शन ग्रेड
- 9:06:24एप्लीकेशनेशंस में ना जनरली एपीआई डॉक्स
- 9:06:26डिसेबल रखते हैं। ठीक है? डेवलपमेंट मोड
- 9:06:29ये सब जगह पर इनेबल रखते हैं। लेकिन
- 9:06:31प्रोडक्शन में आप अगर इनेबल कर रहे हो तो
- 9:06:33इसको प्रॉपर सिक्योरिटी के साथ इनेबल करना
- 9:06:35है। तो हर कोई देख पाएगा। करेक्ट? तो इसको
- 9:06:38डिसेबल करने के लिए आपको ये प्रॉपर्टी का
- 9:06:39इस्तेमाल करना है और स्वैगर uआई भी जनरेट
- 9:06:42हो चुका है। देखिए ये यहां पर बोल रहा है
- 9:06:44स्लैश swagगर ui.html और अगर इसको ये
- 9:06:47डिसेबल करना है तो आपको ये प्रॉपर्टी ऐड
- 9:06:49करनी है एप्लीकेशन प्रॉपर्टीज में। तो ये
- 9:06:50आपको ये दो डॉक्स दे रहा है और इसको
- 9:06:52डिसेबल कैसे करना है वो भी आपको बोल रहा
- 9:06:54है। V3 डॉट एपीआई डॉक्स पर अगर आप जाते हो
- 9:06:58यहां पर ठीक है? ऐसे
- 9:07:01तो यह देखिए आपको इस तरीके से चेसन
- 9:07:03फॉर्मेट में सारी एंड पॉइंट्स का यह मिल
- 9:07:06जाएगा। सारी एंड पॉइंट्स और यहां पर देखिए
- 9:07:09अभी फॉर एग्जांपल यहां पर अगर आप आते हो
- 9:07:11तो रजिस्टर रिक्वेस्ट में क्या-क्या है?
- 9:07:13ये पूरी पूरा जो डीटीओ है उसमें क्या-क्या
- 9:07:15है? ये सारी चीजें आपको यहां पर दिख
- 9:07:16जाएगी। एक हिसाब से यू नो jसन फॉर्मेट में
- 9:07:19उसने दे दिया है सब कुछ आपको। ठीक है? तो
- 9:07:22ये है। अब मैं बैक आ जाता हूं स्वैगर यूआई
- 9:07:25पे। तो देखिए स्वैगर uआई है। यहां पर आप
- 9:07:27देख सकते हो। तो देखिए यहां पर स्कीमाज़
- 9:07:29हैं। यह सारे स्कीमाज़ हैं। यहां पर आपको
- 9:07:32देखने मिल जाएगा। रिकमेंडेशन रिक्वेस्ट
- 9:07:33में क्या-क्या चाहिए? रिकमेंडेशन के लिए
- 9:07:35आप अगर कोई रिक्वेस्ट भेजते हो तो इस
- 9:07:37तरीके से आपको डाटा भेजना है। ठीक है? मैं
- 9:07:39आपको एक डेमो दे देता हूं यहां पर रजिस्टर
- 9:07:41का। रजिस्टर में आप देख सकते हो। देखिए
- 9:07:42मैंने इसको ओपन किया। तो यहां पर काफी
- 9:07:44सारी डिटेल्स आपको दिखाई देगी। जैसे कि
- 9:07:46पैरामीटर्स। ठीक है? तो यहां पर
- 9:07:48पैरामीटर्स क्या-क्या है आपको? ठीक है? तो
- 9:07:50पैरामीटर्स तो कोई भी नहीं है। फिलहाल
- 9:07:52पैरामीटर्स मतलब यूआरएल पैरामीटर्स। तो
- 9:07:54देखिए जैसे यहां पर यूजर आईडी पास कर रहे
- 9:07:55हो आप ये एंड पॉइंट में। तो देखिए यहां पर
- 9:07:58पैराटर्स यूजर आईडी ठीक है लेकिन रजिस्टर
- 9:08:01में कोई पैरामीटर है नहीं यूआरएल
- 9:08:02पैरामीटर्स तो यहां पर नो पैरामीटर्स
- 9:08:04रिक्वेस्ट बॉडी में इतनी चीजें बताई गई है
- 9:08:06आपको ठीक है और यहां पर देखिए एग्जांपल भी
- 9:08:08आपको दिया गया है यूजर @ examplecom
- 9:08:11पासवर्ड में स्ट्रिंग फर्स्ट नेम में
- 9:08:12स्ट्रिंग लास्ट नेम में स्ट्रिंग और रोल
- 9:08:14में यूजर यूजर डिफॉल्ट ठीक है और ये आपको
- 9:08:19बताया गया है यहां पर और आपको
- 9:08:21रिस्पॉन्ससेस 200 ओके आएगा और जो आउटपुट
- 9:08:24है वह इस फॉर्मेट में आएगा आप देख सकते
- 9:08:27ठीक है? लॉग इन भी आपको यहां पर दिखाई
- 9:08:29देगा। देखिए सारे एंड पॉइंट्स के जो डाटा
- 9:08:31है वह आप देख सकते हो। देखिए लॉग इन में
- 9:08:33आप अगर सक्सेसफुली लॉग इन करते हो टोकन
- 9:08:35मिलेगा और फिर यूजर की इनेशन इस तरीके से
- 9:08:38सारी जो एंड पॉइंट्स है उसका डेटा आपको इस
- 9:08:40तरीके से मिलेगा और आप इसको टीम्स के साथ
- 9:08:43शेयर कर सकते हो। किसी के साथ भी शेयर कर
- 9:08:45सकते हो। ठीक है? तो यह देखिए यहां पर V3
- 9:08:47एपीआई डॉक्स का भी लिंक है यहां पर। ठीक
- 9:08:50है? तो ये सारी इनेशन आपको प्रोवाइड कर दी
- 9:08:54गई है यहां पर। ठीक है? तो उम्मीद करता
- 9:08:57हूं यह हेल्पफुल रहा। आप है ना इसको थोड़ा
- 9:09:00कस्टमाइज भी कर सकते हो अगर आपको चाहिए
- 9:09:02तो। तो यहां पर ओपन एपीआई डॉक डेफिनेशन आ
- 9:09:05रहा है। ठीक है? मुझे यहां पर कुछ कस्टम
- 9:09:07नेम डालना है। मैं वो भी कर सकता हूं। तो
- 9:09:09उसके लिए क्या करना है? आप यहां पर आ सकते
- 9:09:12हो और एक सेंट्रलाइज़्ड कॉन्फ़िगरेशन डिफाइन
- 9:09:14कर सकते हो। तो, यहां पर देखिए, मैं एक
- 9:09:15जावा क्लास बना लेता हूं। और यहां पर
- 9:09:17लिखता हूं कॉन्फ़िग डॉट ओपन एपीआई कॉन्फ़िग
- 9:09:22ऐसे। ठीक है? ठीक है? अब ये ओपन एपीआई
- 9:09:24कॉन्फ़िग है और यहां पर इसको सबसे पहले
- 9:09:26कॉन्फ़िगरेशन मार्क कर देता हूं। इस तरीके
- 9:09:28से और यहां पर मैं लिखूंगा एक बीन। ठीक
- 9:09:32है? और यहां पर बोलूंगा पब्लिक ओपन एपीआई
- 9:09:36देखिए ओपन एपीआई और ये स्वैगर से आ रही
- 9:09:38है। देखिए iO स्वैगर V3 OS डॉट मॉडल्स ये
- 9:09:41लेना है आपको फिर कस्टम एपीआई इस तरीके
- 9:09:44से।
- 9:09:46ठीक है? और यहां पर अ आपको रिटर्न करना है
- 9:09:50न्यू ओपन एपीआई। अच्छा सॉरी ओपन ईपीआई ऐसे
- 9:09:55और यहां पर आपको लिखना है डॉट इनफो ऐसे और
- 9:10:00यहां पर न्यू इनफो का ऑब्जेक्ट पास करना
- 9:10:01है आपको इनफो ठीक है ऐसे और यहां पर लिखना
- 9:10:06है डॉट टाइटल टाइटल में आपको लिखना है
- 9:10:09फिटनेस ट्रैकिंग एपीआई जो भी आपको देना है
- 9:10:14लाइक टाइटल वो आप दे ही सकते हो यहां पर
- 9:10:15और सेमी कॉललन ऐड कर दीजिए ठीक है इतना हो
- 9:10:18गया तो
- 9:10:21अब मैं अच्छा इसको एंटर कर देता हूं। अब
- 9:10:23इसको रन करके देखते हैं कि ये एक्चुअली
- 9:10:25में पिक होता है या नहीं। ठीक है? इसको रन
- 9:10:28करके देखेंगे। तो आउटपुट में आइडियली आना
- 9:10:31तो चाहिए। ठीक है? तो यहां पर देखिए ये रन
- 9:10:35हो गई है। अब यहां पर ओपन एपीआई डेफिनेशन
- 9:10:37लिखी हुई है। देखते हैं टाइटल क्या होता
- 9:10:38है। देखिए फिटनेस ट्रैकिंग एपीआई। देखिए
- 9:10:41टाइटल हमने चेंज कर दिया। करेक्ट? अब यहां
- 9:10:43पर वर्जनंस वगैरह सब कुछ डिफाइन कर सकते
- 9:10:45हो। तो यहां पर देखिए इनफो में आइएगा। यह
- 9:10:47जो इनफो वाली जो हमने ऑब्जेक्ट बनाई है
- 9:10:50यहां पर इस इनफो के ऑब्जेक्ट में आप कुछ
- 9:10:53भी ऐड कर सकते हो। तो देखिए यहां पर मैं
- 9:10:54कहता हूं डॉट तो देखिए यहां पर कितनी सारी
- 9:10:57चीजें हैं। आप देख पा रहे हो डॉट अगर करते
- 9:10:59हो तो यहां पर वर्जन है सबसे पहले तो मैं
- 9:11:01वर्जन लिख सकता हूं वर्जन 1.0। ठीक है?
- 9:11:05यहां पर मैं डॉट डाल के टाइटल मैंने ऐड कर
- 9:11:07दिया। डिस्क्रिप्शन दे सकता हूं यहां पर
- 9:11:09ऐसे। ठीक है? तो यहां पर लिख दूंगा
- 9:11:11प्रोडक्शन क्रिएट
- 9:11:13ईपीआई ऐसे करके। कोई भी डिस्क्रिप्शन आप
- 9:11:16दे सकते हो। आपको कांटेक्ट इनेशन कुछ देनी
- 9:11:19है तो वह भी आप दे सकते हो। ठीक है? डॉट
- 9:11:20कांटेक्ट देखिए कांटेक्ट आप बना सकते हो।
- 9:11:23यहां पर कांटेक्ट आप बनाइए न्यू कांटेक्ट
- 9:11:26और जो भी सपोर्ट प्रोवाइड कर रहा है उसका
- 9:11:29आप नाम दे सकते हो इस एपीआई के लिए जो भी
- 9:11:31सपोर्ट प्रोवाइड कर रहा है। तो डॉट नेम तो
- 9:11:34नेम क्या होगा? आप लिख दीजिए। अह नेम आप
- 9:11:38लिख सकते हैं कुछ भी। तो मैं लिखता हूं
- 9:11:39एमbarkx। ठीक है? ये मेरी कंपनी का नाम
- 9:11:42है। और यहां पर यूआरएल लिख दीजिए। तो
- 9:11:44यूआरएल में मैं लिख सकता हूं markx.com
- 9:11:48ऐसे पूरा का पूरा यूआरएल https
- 9:11:52ठीक है ये हो गया मेरा कांटेक्ट ईमेल भी
- 9:11:54आप लिख सकते हो ईमेल तो [email protected]
- 9:11:59ऐसे ठीक है इतनी चीजें आ गई। लाइसेंस
- 9:12:02वगैरह भी आप लिख सकते हो। यहां पर लाइसेंस
- 9:12:04की भी इनेशन आप दे सकते हो। देखिए लाइसेंस
- 9:12:06और अगर आप चाहते हो तो यहां पर न्यू
- 9:12:08लाइसेंस ऐसे लिख दीजिए। ठीक है? और यहां
- 9:12:10पर नेम आ जाएगा लाइसेंस का। लाइसेंस का
- 9:12:13नेम क्या है? अपाचे। फॉर एग्जांपल मैं
- 9:12:15Apache का लाइसेंस लिख रहा हूं 2.0 का।
- 9:12:17ठीक है? और जो भी यूआरएल है वह आप ऐड कर
- 9:12:20सकते हो। डॉट urlल लाइसेंस का। तो यहां पर
- 9:12:22urlल लिख दीजिए https google.com
- 9:12:26या mbkgx.com खुद की वेबसाइट लगा देंगे
- 9:12:29हम। ठीक है? इसको रन कर देते हैं। ठीक है?
- 9:12:33और यह रन हो रही है। रन हो चुकी है। और
- 9:12:38यहां पर अगर आप आते हो तो देखिए यह सारी
- 9:12:40चीजें जो हमने ऐड की है वो यहां पर दिखाई
- 9:12:42देगी आपको। देखिए प्रोडक्शन ग्रेड एपीआई
- 9:12:44ये डिस्क्रिप्शन है। डिस्क्रिप्शन मैंने
- 9:12:46काफी छोटा लिखा है एक लाइन का लाइक तीन ही
- 9:12:47वर्ड्स लिखे हैं। आपको चाहिए पैरा लिख
- 9:12:49दीजिए। कुछ बड़ा बड़ी चीज लिख दीजिए।
- 9:12:51mbarkx वेबसाइट देखिए mbx.com सेंड ईमेल
- 9:12:55टू mbarkx ठीक है? जो भी आपको लिखना है
- 9:12:58लाइसेंस की इनेशन यहां पर मिल जाएगी। और
- 9:13:00ये क्लिक करोगे तो एक्चुअली ये वेबसाइट पर
- 9:13:01जाएगा। ठीक है? देखिए। ठीक है? तो ये सारी
- 9:13:05की सारी चीजें यहां पर आपको दिख सकती है।
- 9:13:06अब आप फ्यूचर में कोई एंड पॉइंट ऐड करोगे
- 9:13:08तो यह डॉक्यूमेंट जो है ये जो यूआई है ये
- 9:13:11ऑटो जनरेट हो रखा है। ठीक है? हमने जनरेट
- 9:13:14नहीं कर रखा है। ये ये ऑटो जनरेट हो चुका
- 9:13:16है। तो ये बेसिकली ऑटो जनरेट होगा और सारी
- 9:13:20की सारी चीजें खुद से मैनेज होगी। आपको
- 9:13:22मैनेज करने की जरूरत ही नहीं है। उम्मीद
- 9:13:24करता हूं यह हेल्पफुल रहा और मुझे बताइए
- 9:13:27यह आपको कैसा लगा यह वाला फीचर अ स्प्रिंग
- 9:13:30की मदद से। स्प्रिंग स्प्रिंग बूट की मदद
- 9:13:32से और स्वैगर की मदद से कैसा लगा यह आपको?
- 9:13:40तो दोस्तों, अब बात करना चाहूंगा
- 9:13:42कंटेनराइजेशन
- 9:13:44यानी कि डॉकर के बारे में। ठीक है? तो
- 9:13:46यहां पर लिख देता हूं डॉकर। तो डॉकर
- 9:13:49समझेंगे कि क्या है और क्या प्रॉब्लम
- 9:13:51सॉल्व करता है। ठीक है? तो देखिए अगर आपने
- 9:13:56डेवलपमेंट की किया है अपने करियर में तो
- 9:14:00आपने यह प्रॉब्लम के बारे में जरूर सुनना
- 9:14:02होगा। देखिए प्रॉब्लम क्या होती है? एक
- 9:14:03डेवलपर अपने मशीन पर तो यह मशीन वन है या
- 9:14:06डेव वन है। ठीक है? डेवलपर इसने अपने मशीन
- 9:14:09पर एक एप्लीकेशन बनाई और उसने यही
- 9:14:11एप्लीकेशन दूसरे डेवलपर को भेजी। ठीक है?
- 9:14:14अब दूसरा डेवलपर बोल रहा है अच्छा मेरे
- 9:14:17मशीन पे तो नहीं चल रही है भाई। ठीक है?
- 9:14:19तो फिर क्या होता है? दोनों डेवलपर्स क्या
- 9:14:22करते हैं? देखते हैं अच्छा क्या ब्रेक हो
- 9:14:24रहा है। तो डेवलपर वन बोलेगा अच्छा मेरे
- 9:14:26मशीन पे तो jवा 17 इंस्टॉल्ड है और डेव टू
- 9:14:30बोलेगा अच्छा मेरे पास तो जावा 25
- 9:14:31इंस्टॉल्ड है जो लेटेस्ट वर्जन है। मेरे
- 9:14:34पास ये वाली डिपेंडेंसी ये वर्जन की है और
- 9:14:36ये बोलेगा मेरे पास ये वर्जन की है। ये
- 9:14:38वाला बोलेगा मेरे पास ये डिपेंडेंसी
- 9:14:39इंस्टॉल्ड है। ये बोलेगा मेरे पास ये
- 9:14:41इंस्टॉल्ड नहीं है। तो यहां पर समझ रहे हो
- 9:14:43प्रॉब्लम क्या हो रहा है? सबसे पहले तो
- 9:14:46देखिए सेम एप्लीकेशन है लेकिन वो रन नहीं
- 9:14:48कर पा रहा दूसरे के सिस्टम पर।
- 9:14:50एक ही सिस्टम पर रन कर पा रहा है। क्यों?
- 9:14:52क्योंकि जो पैकेजेस है यानी कि जो
- 9:14:55डिपेंडेंसी है उसका वर्जन मिसमैच हो रहा
- 9:14:57है। पहले तो मिसमैच या तो फिर दूसरा एक
- 9:15:01इशू हो सकता है जो कि है जो डिपेंडेंसी है
- 9:15:04यानी कि जो डिपेंडेंसी
- 9:15:08नॉट प्रेजेंट।
- 9:15:10ठीक है? तो एक है वर्जन मिसमैच और दूसरा
- 9:15:13है डिपेंडेंसी प्रेजेंट है नहीं। ठीक है?
- 9:15:16तो डेफ टू के पास या तो वर्जन मिसमैच है
- 9:15:19या तो डिपेंडेंसी प्रेजेंट नहीं है। ठीक
- 9:15:21है? तो इन दोनों में से कोई एक रीज़न हो
- 9:15:23होता है जनरली और फिर क्या होता है? ये
- 9:15:25लोग एक दूसरे की कंपैरिजन करते हैं और फिर
- 9:15:27डेव टू को वर्जन चेंज करना होगा अपने
- 9:15:29सिस्टम पर ताकि वो एप्लीकेशन रन कर पाए।
- 9:15:32ठीक है? तो ऐसा काम चलता चलता है जनरली अ
- 9:15:36यू नो सॉफ्टवेयर वर्ल्ड में। लेकिन अभी
- 9:15:38रिसेंटली ऐसा काम नहीं चलता है। ठीक है?
- 9:15:40डॉकर की मदद से। ठीक है? तो डॉकर क्या है?
- 9:15:43डॉकर एक ऐसा सॉफ्टवेयर है जो हमें
- 9:15:46कंटेनर्स बनाने में मदद करता है। कंटेनर्स
- 9:15:49अब कंटेनर्स का मतलब क्या होता है? ठीक
- 9:15:51है? तो देखिए ये जो एप्लीकेशन डेव वन ने
- 9:15:53डेव टू को भेजी डेव वन क्या करेगा? डेव वन
- 9:15:57अपनी एप तो अपनी एक एप्लीकेशन को लेगा
- 9:16:00ऐसे। ये हो गई उसकी ऐप यहां पर। ठीक है?
- 9:16:04ऐप। तो ऐप का कोड वो लेगा और उसको पैकेज
- 9:16:09करेगा एक डॉकर अ एक कंटेनर में बेसिकली।
- 9:16:13ठीक है? अब कंटेनर क्या है? कंटेनर में
- 9:16:15एप्लीकेशन का सोर्स कोड होगा। एप्लीकेशन
- 9:16:17के डिपेंडेंसीज़ होगी विद राइट वर्शन। ठीक
- 9:16:20है? ठीक है? राइट वर्जन नहीं लिखता हूं
- 9:16:22ज्यादा बड़ा हो रहा है। लेकिन डिपेंडेंसीज़
- 9:16:23होगी और सारे रिक्वायर्ड चीज़ होंगे।
- 9:16:26रिक्वायर्ड थिंग्स। ठीक है? और वो भी सही
- 9:16:28वर्जन के साथ। तो ये क्या करेगा? एक ऐसा
- 9:16:31पैकेज बना के फिर वो भेजेगा डेव टू को और
- 9:16:35डेव टू को कुछ नहीं करना है। डेव टू को बस
- 9:16:36रन करना है क्योंकि ये जो कंटेनर है इसमें
- 9:16:39एप्लीकेशन भी है। एप्लीकेशन को जो भी
- 9:16:41डिपेंडेंसीज चाहिए ठीक है? तो डिपेंडेंसी
- 9:16:45ठीक है?
- 9:16:51ठीक है? जो डिपेंडेंसीज चाहिए वो सारी
- 9:16:53चीजें इस कंटेनर में ही है। तो उसको बस रन
- 9:16:56करना है बस और कुछ नहीं। ठीक है? तो अब
- 9:16:58देखिए अगर एप्लीकेशन है java 17 डिपेंडेंट
- 9:17:01और डेव 2 के पास है java 25 इंस्टॉल्ड
- 9:17:04उसके सिस्टम पर तो कुछ लेना देना ही नहीं
- 9:17:06है क्योंकि ये कंटेनर में रन हो रहा है और
- 9:17:08कंटेनर में ऑलरेडी जावा 17 प्रोवाइड किया
- 9:17:10होगा भले ही इसके सिस्टम पर java 25 है
- 9:17:13लेकिन एप्लीकेशन कंटेनर से ही लेगा
- 9:17:16क्योंकि वो एक कंटेनर में रन हो रहा है और
- 9:17:17यह एक सेपरेट सिस्टम की तरह है ठीक है
- 9:17:20लाइट वेट सिस्टम मैं पूरा के पूरा सिस्टम
- 9:17:22नहीं कहूंगा लाइट वेट सिस्टम की तरह
- 9:17:24आइसोलेटेड वे में वह रन हो रहा है ऑन
- 9:17:26डेवटस मशीन
- 9:17:28ठीक है? तो ये हो गया कंटेनराइजेशन। अब
- 9:17:30कंटेनराइजेशन क्या प्रॉब्लम सॉल्व करता
- 9:17:32है? कंटेनराइजेशन सॉल्व करता है। इट
- 9:17:34वर्क्स ऑन माय मशीन का प्रॉब्लम। तो मेरे
- 9:17:36मशीन पे चल रहा है। क्यों? तो फिर देख
- 9:17:39लीजिए वर्जन मिसमैच है। वर्जन अपडेट्स करो
- 9:17:41अ जिसके मशीन पर नहीं चल रहा है और ये
- 9:17:43वर्जन पे आओ क्योंकि सॉफ्टवेयर को वो
- 9:17:44वर्जन चाहिए और फिर एप्लीकेशन को रन करो।
- 9:17:47तो कंटेनराइज़ेशन ये प्रॉब्लम एक्चुअली में
- 9:17:49सॉल्व करता है। ठीक है? तो अब यहां पर कुछ
- 9:17:52टर्मिनोलॉजीस समझ लेते हैं हम। तो ये जो
- 9:17:54कंटेनराइजेशन की जो टेक्नोलॉजी है ये हमें
- 9:17:57मदद करती है डॉकर। डॉकर मदद करती है हमें
- 9:18:00ये कंटेनराइजेशन की जो टेक्नोलॉजी है उसको
- 9:18:02इस्तेमाल करने में। ठीक है? और यहां पर
- 9:18:04कुछ टर्मिनोलॉजीस हैं। तो सबसे पहली
- 9:18:06टर्मिनोलॉजी तो है अ सबसे पहली जो
- 9:18:09टर्मिनोलॉजी है जो वो है इमेजेस।
- 9:18:12तो देखिए आप जभी भी एप्लीकेशन को अलोंग
- 9:18:15विद डिपेंडेंसीज़ इस तरीके से पैकेज करना
- 9:18:17चाहते हो। कंटेनर की तरह फॉर्म में रन
- 9:18:19करना चाहते हो तो आप डायरेक्टली कंटेनर के
- 9:18:21फॉर्म में रन नहीं कर सकते हो। आपको पहले
- 9:18:23उसकी इमेजज़ बनानी है। इमेज क्या है? इमेज
- 9:18:26एक हिसाब से मैं कहूंगा रेसिपी है फॉर
- 9:18:30कंटेनर्स। ठीक है? तो रेसिपी है फॉर
- 9:18:33कंटेनर्स। इसका मतलब क्या हुआ? कि इमेज
- 9:18:35में इमेज एक हिसाब से एक टेंपलेट है और उस
- 9:18:39टेंपलेट का इस्तेमाल करके जो कंटेनर्स हैं
- 9:18:42वो क्रिएट होंगे। ठीक है? और कंटेनर्स
- 9:18:45क्या है? कंटेनर्स
- 9:18:48रनिंग इंस्टेंस है।
- 9:18:51ठीक है? अगर आप किसी इमेज अगर आप कोई ऐप
- 9:18:55को रन करते हो विद इन द कंटेनर्स तो उसे
- 9:18:57कहते हैं कंटेनर्स। ठीक है? वो आप किसी तो
- 9:19:00इस तरीके से सेल्फ डिपेंडेंट तरीके से रन
- 9:19:02करते हो। ठीक है? एक आइसोलेटेड एनवायरमेंट
- 9:19:04में उसे कहते हैं कंटेनर्स और वो रनिंग
- 9:19:06इंस्टेंस है एप्लीकेशन का। कंटेनर को कैसे
- 9:19:08बनाया जाता है? कंटेनर को बनाया जाता है
- 9:19:09इमेजज़ से। ठीक है? तो ये दो टर्मिनोलॉजीस
- 9:19:12हैं जो आपको समझने की जरूरत है यहां पर
- 9:19:15क्योंकि हम डॉकर की बात कर रहे हैं और
- 9:19:16डॉकर एक ऐसी टेक्नोलॉजी है जो हमें हेल्प
- 9:19:19करता है इमेजेस कंटेनर्स ये सब बनाने और
- 9:19:22रन करने में ठीक है तो यहां पर आ जाएंगे
- 9:19:24हम और यहां पर हम सर्च करेंगे डॉकर को और
- 9:19:28यहां पर आपको देखिए ये एक ऐसा वेबसाइट
- 9:19:32दिखाई देगा dkercom आप डायरेक्टली भी इस
- 9:19:33पर आ सकते हो ठीक है तो देखिए ये थोड़ा एi
- 9:19:36रिलेटेड थोड़ा यहां पर आ चुका है ठीक है
- 9:19:38लेकिन यहां पर अगर आप देखते हो तो आप इसके
- 9:19:40बारे में पढ़ोगे अगर तो ये देखिए इमेजेस
- 9:19:43एप्लीकेशनेशंस ये ये सारी चीजें आपको
- 9:19:45देखने मिल जाएगी यहां पर। ठीक है? तो
- 9:19:47अक्सर ये है ना वेबसाइट्स चेंज करते रहते
- 9:19:49हैं। तो हो सकता है आपने जब विजिट किया है
- 9:19:51ठीक है? आप आप जब विजिट करोगे ये वीडियो
- 9:19:53देखकर हो सकता है यहां पर काफी सारे बदलाव
- 9:19:56आ चुके हो। ठीक है? लेकिन ये होता है
- 9:19:59कंटेनराइजेशन की टेक्नोलॉजी और डॉकर की
- 9:20:01टेक्नोलॉजी मदद करती है हमें
- 9:20:03एप्लीकेशनेशंस को शेयर करने में, रन करने
- 9:20:05में, सब कुछ करने में। ठीक है? यहां पर
- 9:20:07डार्क मोड है नहीं लेकिन लाइट मोड में ही
- 9:20:10रखता हूं फिलहाल इसे। ठीक है? तो यहां पर
- 9:20:11देखिए ये अगर इसको आपको इंस्टॉल करना है
- 9:20:14यानी कि अगर आपको कंटेनर्स अपने लोकल मशीन
- 9:20:16पर बनाना है तो आपको लगेगा डॉकर डेस्कटॉप।
- 9:20:19डॉकर डेस्कटॉप अवेलेबल है Mac, Windows,
- 9:20:22Linux सभी जगह पर। तो, आप इसे डाउनलोड कर
- 9:20:25सकते हो। यह फ्री होता है। प्लान वगैरह
- 9:20:26चूज़ नहीं करना। ठीक है? यह फ्री में
- 9:20:28इस्तेमाल होता है। ठीक है? तो, यहां से
- 9:20:30डाउनलोड कर लेना और बस यू आर ऑल गुड टू
- 9:20:33गो। ठीक है? तो, यह हो गया डॉकर के बारे
- 9:20:35में। अब डॉकर एक ऐसा सॉफ्टवेयर है जो आपको
- 9:20:38कंटेनर्स इमेजज़ क्रिएट करने में मदद करता
- 9:20:40है, रन करने में मदद करता है। ठीक है? अब
- 9:20:43आप अगर यहां पर आते हो तो आपको यहां पर
- 9:20:44दिखाई देगा Docker hub। तो Docker hub पे
- 9:20:47अगर आप जाते हो तो देखिए अगर आप इमेजज़
- 9:20:49बनाते हो तो आप उसे शेयर भी करना चाहोगे।
- 9:20:52तो Dockerk hub एक ऐसा प्लेटफार्म है जहां
- 9:20:55पर आप आपकी बनाई इमेजज़ को शेयर कर सकते हो
- 9:20:58पब्लिकली। और दुनिया में कोई भी उसे
- 9:20:59डाउनलोड कर सकता है और रन कर सकता है अपने
- 9:21:01सिस्टम पर अगर उसके पास डॉकर इंस्टॉल्ड है
- 9:21:05तो और अगर आपकी इमेज पब्लिक है तो ठीक है
- 9:21:07तो ये जरूरी क्यों है देखिए मैंने मान
- 9:21:09लीजिए एक एप्लीकेशन बनाया कुछ बढ़िया सी
- 9:21:11ऐप बना दी और मैं चाहता हूं कि कोई भी उसे
- 9:21:14डाउनलोड करके रन कर पाए तो मैं उसका एक
- 9:21:17इमेज बनाकर डॉकर अप पे रख सकता हूं और
- 9:21:19उसके इंस्ट्रक्शंस डाल सकता हूं कि अगर आप
- 9:21:22इंटरेस्टेड हो तो आप उसे डाउनलोड करके रन
- 9:21:24कर सकते हो। तो वर्ल्ड में कोई भी होगा वो
- 9:21:26उसे डाउनलोड करेगा इमेज को और डॉकर उसके
- 9:21:28सिस्टम पर भी होना चाहिए रन करने के लिए
- 9:21:30और फिर उसे रन कर पाएगा। ठीक है? और डॉकर
- 9:21:33hub एक ऐसा प्लेटफार्म है और यहां पर अगर
- 9:21:35आप जाते हो तो यहां पर आपको सर्च करना है
- 9:21:37डॉकर hub। ठीक है? और यहां पर आपको उसकी अ
- 9:21:40जो ऑफिशियल रिपोज़िटरी है वो मिल जाएगी।
- 9:21:43ऑफिशियल लिंक और यहां पर आप सर्च कर सकते
- 9:21:45हो कोई भी इमेजज़ को। यहां पर टेंसर फ्लो
- 9:21:47देख सकते हो। P टॉर्च है, लंग चेन है,
- 9:21:49Python है। तो अगर आपके सिस्टम पर Python
- 9:21:51इंस्टॉल्ड नहीं है तो आप यहां से Python
- 9:21:53की इमेज लेकर Python को रन कर सकते हो इन
- 9:21:55द कंटेनर्स ऑन योर लोकल मशीन और आप उसको
- 9:21:58नॉर्मल सॉफ्टवेयर की तरह भी इस्तेमाल कर
- 9:21:59सकते हो। तो जैसे Python आप अगर अपने
- 9:22:01सिस्टम पर इस्तेमाल कर सकते हो, आप
- 9:22:03इस्तेमाल करते हो, इंस्टॉल करते हो Python
- 9:22:06को अपने सिस्टम पर तो आप Python रिलेटेड
- 9:22:08कमांड्स रन कर सकते हो। करेक्ट? लेकिन
- 9:22:10डॉकर भी अगर आप अपने सिस्टम पर Python की
- 9:22:13इमेज रन करते हो। ठीक है? तो आप इस उसका
- 9:22:18कमांड लाइन पर भी इस्तेमाल कर सकते हो।
- 9:22:20लाइक Python रिलेटेड कमांड रन कर सकते हो।
- 9:22:23तो यह कहना चाहता हूं यहां पर देखिए काफी
- 9:22:25सारे इमेजज़ हैं। जैसे कि इंजेक्स, Mysquel
- 9:22:28आप सब कुछ रन कर सकते हो अपने मशीन पर।
- 9:22:30ठीक है? तो ये हिसाब से डॉकर hub है। आप
- 9:22:32अपने इमेजज़ भी पब्लिश कर सकते हो। तो मैं
- 9:22:34रिकमेंड करूंगा कि आप यहां पर साइन अप कर
- 9:22:36लीजिए। ठीक है? फ्री अकाउंट है। ऐसा कुछ
- 9:22:39पेड है नहीं। मैं पेड टूल नहीं सिखा रहा
- 9:22:41आपको। साइन अप कर लीजिए। आपको एक डॉकर
- 9:22:44यूजरनेम मिलेगा और फिर आप डॉकर डेस्कटॉप
- 9:22:47को इंस्टॉल कर लीजिए अपने सिस्टम पर। डॉकर
- 9:22:49डेस्कटॉप को आप जैसे ही इंस्टॉल कर सक
- 9:22:51करते हो और स्टार्ट करते हो तो देखिए इस
- 9:22:53तरीके से कुछ दिखाई देगा आपको डॉकर
- 9:22:54डेस्कटॉप मैं डॉकर का काफी इस्तेमाल करता
- 9:22:56हूं तो आपको दिखाई देगा कुछ इमेजेस मेरे
- 9:22:59मशीन पर और कुछ कंटेनर्स यहां पर दिखाई
- 9:23:02देगा अगर आप रन करते हो कंटेनर्स तो ये
- 9:23:04डॉकर डेस्कटॉप का यूआई है। ठीक है? और
- 9:23:06यहां पर देखिए ये अकाउंट है जिसमें आप
- 9:23:08साइन इन कर सकते हो एक हिसाब से। ठीक है?
- 9:23:11तो उम्मीद करता हूं आप इतना कर पाओगे और
- 9:23:14इसको रन करने के लिए जैसे कि मैंने बताया
- 9:23:16आप डॉकर डेस्कटॉप को यहां से डाउनलोड कर
- 9:23:18लीजिए। ये रहा डॉकर डेस्कटॉप। ठीक है?
- 9:23:20डिपेंडिंग ऑन जो भी प्लेटफार्म पे हो आप
- 9:23:22आप डाउनलोड कर लीजिए। एक नॉर्मल सॉफ्टवेयर
- 9:23:24की तरह इसका इंस्टॉलेशन है और फिर इसको रन
- 9:23:26कर दीजिए। ठीक है? तो इतना करने के बाद और
- 9:23:28अब आप डॉकर कमांड्स अगर रन करना चाहते हो
- 9:23:31तो आपको ये मेक श्योर करना है कि डॉकर
- 9:23:33डेस्कटॉप अप एंड रनिंग है हमेशा। ठीक है?
- 9:23:35तो इतना हो गया। डॉकर डेस्कटॉप भी अप एंड
- 9:23:37रनिंग है। अब मैं क्या करूंगा? देखिए ये
- 9:23:39मैं एक एप्लीकेशन है मेरी वहां पर आ जाता
- 9:23:41हूं। तो, यह मेरी एप्लीकेशन है जिसको मैं
- 9:23:42कंटेनराइज़ करना चाहता हूं। यह एक फिटनेस
- 9:23:45प्रोजेक्ट है। थोड़ी सी कॉन्फ़िगरेशन है
- 9:23:47इसमें और यहां पर कंट्रोलर में आपको यहां
- 9:23:49पे अ आपको यहां पर थोड़ी एंड पॉइंट्स दिखाई
- 9:23:52देगी। अब देखिए, ये जो वीडियो है ना,
- 9:23:54इसमें जो स्टेप्स बताने वाला हूं, ये
- 9:23:56स्टेप्स आप कोई भी एप्लीकेशन के लिए कर
- 9:23:58सकते हो। फॉलो अगर आपके पास कोई और
- 9:24:00स्प्रिंग बूट प्रोजेक्ट है, तो आप उसके
- 9:24:02लिए भी कर सकते हो। ठीक है? ऐसी कोई
- 9:24:04दिक्कत होने वाली नहीं है आपको। ठीक है?
- 9:24:06तो, इस तरीके से, ये जो स्टेप्स है, आप
- 9:24:08फॉलो कर सकते हो। यहां पर सबसे पहले तो
- 9:24:10कॉन्फ़िगरेशन फाइल देख लेनी है आपको। ठीक
- 9:24:12है? ये सारी कॉन्फ़िगरेशन फाइल है। ठीक है?
- 9:24:14तो देखिए, मैं क्या करूंगा? मैं क्या करना
- 9:24:16चाहता हूं? सबसे पहले तो मैं मेरी जो
- 9:24:19कॉन्फ़िगरेशन है, उसको एक्सटर्नलाइज़ करना
- 9:24:21चाहता हूं। ठीक है? एक्सटर्नलाइज़। इसका
- 9:24:23मतलब क्या है? यहां पर ये मैंने
- 9:24:25हार्डकोडेड डेटाबेस यूआरएल लिखी है। ठीक
- 9:24:27है? तो, मैं क्या करूंगा? इसको ऐसा कट कर
- 9:24:29दूंगा और यहां पर लिख दूंगा डॉलर
- 9:24:32डीबी अंडरस्कोर यूआरएल। ऐसे। ठीक है? फिर
- 9:24:36यहां पर रूट है। तो देखिए ये अभी डीबी
- 9:24:38यूआरएल मैंने यहां पर लिख दिया है। तो मैं
- 9:24:40क्या करूंगा? अभी ये एक हिसाब से मैं
- 9:24:42एनवायरमेंट वेरिएबल्स का इस्तेमाल कर रहा
- 9:24:44हूं। क्या यूज़ कर रहा हूं? एनवायरमेंट
- 9:24:45वेरिएबल्स। एनवायरमेंट वेरिएबल्स का मतलब
- 9:24:48ये जो वैल्यू है ये रन टाइम पर इंजेक्ट
- 9:24:50होगी यहां पर। ठीक है? ये क्यों कर रहे
- 9:24:52हैं हम? इसका बेनिफिट क्या है? बेनिफिट ये
- 9:24:54है कि अगर आप एप्लीकेशन को एक एनवायरमेंट
- 9:24:57से दूसरे एनवायरमेंट में रन करते हो तो ये
- 9:24:59वैल्यूज़ जो है आप डायनेमिकली चेंज कर सकते
- 9:25:02हो। ठीक है? तो देखिए इसका बेटर एग्जांपल
- 9:25:05मैं दूंगा। अगर आप यही सेम स्प्रिंग बूट
- 9:25:07एप्लीकेशन को अगर QA सर्वर में रन करते हो
- 9:25:10QA सर्वर में डेटाबेस का यूआरएल अलग होगा।
- 9:25:12तो आप चाहोगे इसको यहां पर इंजेक्ट कर दो।
- 9:25:15ठीक है? डायनेमिकली रन टाइम पर जब रन होता
- 9:25:17है एप्लीकेशन। इंजेक्ट करोगे तो ये क्यूए
- 9:25:19डेटाबेस को पॉइंट करेगा। फिर ये जब डेव
- 9:25:21एनवायरमेंट में जाएगा या
- 9:25:24अह डेव एनवायरमेंट में जाएगा। मान लीजिए
- 9:25:25डेव एनवायरमेंट है तो वहां पर आप फिर से
- 9:25:27यूआरएल डेव एनवायरमेंट का यहां पर इंजेक्ट
- 9:25:29कर सकते हो रनिंग इंस्टेंस में। और फिर आप
- 9:25:32क्या कर सकते हो? अगर प्रॉड एनवायरमेंट
- 9:25:33में जाएगा तो प्रॉड एनवायरमेंट में इसको
- 9:25:35लेके जाइए। एप्लीकेशन को प्रॉड सर्वर पर
- 9:25:36रन कीजिए। और ये जो वैल्यू है ये आप
- 9:25:39डायनेमिकली अ एप्लीकेशन के बाहर से
- 9:25:41इंजेक्ट कीजिए। अगर आप ऐसे नहीं करते हो
- 9:25:43फॉर एग्जांपल अगर आप हार्डकोडेड यूआरएल का
- 9:25:45इस्तेमाल करते हो जैसे पहले था ये तो आपको
- 9:25:47क्या है? हर यूआरएल चेंज के लिए प्रोजेक्ट
- 9:25:50को कंपाइल करना पड़ेगा और जार फाइल बनानी
- 9:25:52पड़ेगी। जो कि सही अप्रोच नहीं है। ठीक
- 9:25:54है? अगर आप मल्टीपल एनवायरमेंट्स में काम
- 9:25:57करते हो तो एनवायरमेंट वेरिएबल्स का
- 9:25:59इस्तेमाल करना काफी कॉमन है। लेकिन अब
- 9:26:01क्वेश्चन ये आता है देखिए मैं डेवलपमेंट
- 9:26:02एनवायरमेंट में मेरे मशीन पर डेवलपमेंट कर
- 9:26:04रहा हूं। ये वैल्यू अब मैं पास कैसे करूं
- 9:26:06यहां पर? तो इंटेलिजेंट में एक काफी आसान
- 9:26:09सा तरीका है। ठीक है? आप यहां पर आ जाइए।
- 9:26:11ये आपकी रन कॉन्फ़िगरेशन है। ठीक है? यहां
- 9:26:13पर जाइए। एडिट कॉन्फ़िगरेशन पे क्लिक कीजिए
- 9:26:15इस तरीके से। ठीक है? और यहां पर
- 9:26:18एनवायरमेंट वेरिएबल्स में जाइए और यहां पर
- 9:26:20लिखिए DB अंडरs url इज़ इक्वल टू और यहां
- 9:26:23पर ये यूआरएल को पेस्ट कर दीजिए। तो देखिए
- 9:26:25यहां पर दिखाई देगा सेपरेट वेरिएबल्स विद
- 9:26:27सेमी कॉललन वेरिएबल इज़ इक्वल टू वैल्यू।
- 9:26:30और वेरिएबल 1 = वैल्यू इस तरीके से और
- 9:26:33सेमी कॉललन से सेपरेटेड रखें इसे। तो यहां
- 9:26:37पर आपने यह डाल दिया है। ठीक है? अब सेमी
- 9:26:39कॉललन से सेपरेट कर सकते हो अगर आप
- 9:26:40मल्टीपल ई एनवी वेरिएबल्स डालते हो। लेकिन
- 9:26:43मैं अभी ऐसा नहीं करूंगा। हम लोग और ऐड
- 9:26:44करेंगे यहां पर। लेकिन अभी फिलहाल के लिए
- 9:26:46मैं क्या करूंगा? यहां पर अप्लाई बटन
- 9:26:47क्लिक कर दूंगा। तो देखिए सेव करने के लिए
- 9:26:49अप्लाई क्लिक करना जरूरी है और फिर ओके
- 9:26:51करना है। ठीक है? अप्लाई अगर नहीं करोगे
- 9:26:53तो हो सकता है ये जो आपने सेव किया है वो
- 9:26:56अप्लाई ना हो। ठीक है? तो इतना कर लिया
- 9:26:58आपने। अब मैं क्या करूंगा? मैं चाहता हूं
- 9:27:00सब जगह पर जैसे कि डीबी यूआरएल
- 9:27:04अ ये और फिर पासवर्ड तो ये डीबी यूआरएल के
- 9:27:07बजाय डीबी यूजर लिख दूंगा और यहां पर अ
- 9:27:10पीडब्ल्यू डी इस तरीके से। ठीक है? और फिर
- 9:27:14यहां पर आ जाता हूं एडिट कॉन्फ़िगरेशंस
- 9:27:17में। ठीक है? और यहां पर अएबी वेरिएबल्स।
- 9:27:22तो यहां पर है यहां पर मेरे पास है डीबी
- 9:27:25यूआरएल। नहीं मैं क्या करूंगा?
- 9:27:27डीबी यूजर और यहां पर लिखूंगा रूट और फिर
- 9:27:32यहां पर लिखूंगा अच्छा सेमी कॉललन चाहिए
- 9:27:34सॉरी मैं देखिए कॉमा डाल रहा हूं गलती मैं
- 9:27:36ही कर रहा हूं ठीक है और यहां पर लिखना है
- 9:27:40डीबी अंडरs अ पासवर्ड ठीक है और यहां पर
- 9:27:44लिखूंगा माय न्यू
- 9:27:47पास @ 1 2 3 ठीक है इसको अप्लाई कर लेते
- 9:27:50हैं ओके करते हैं और फिर रन करके देखते
- 9:27:52हैं कि यह रन होता है या नहीं ठीक है
- 9:27:54आइडियली रन होना चाहिए बिना किसी दिक्कत
- 9:27:56के ठीक है? डेटाबेस को कनेक्ट होना चाहिए
- 9:27:58और आइडली रन होना चाहिए। लेकिन अगर रन
- 9:28:01नहीं हो रहा है और हार्ड कोडेड वैल्यूज़ रन
- 9:28:02हो रही है तो जरूर आपने कोई कॉन्फ़िगरेशन
- 9:28:04में गलती की होगी। ठीक है? तो देखिए ये
- 9:28:06एप्लीकेशन बिल्कुल सही तरीके से रन हो रहा
- 9:28:10है। ठीक है? बिना किसी दिक्कत के। ठीक है?
- 9:28:13रन हो रहा है। ये अब अब इतनी चीज़ हो चुकी
- 9:28:16है हमारे एंड पर। डेटाबेस कॉन्फ़िगरेशन
- 9:28:19यहां पर आ चुका है। आपको चाहिए ना, तो आप
- 9:28:21डायलेक्ट को भी ले सकते हो इस वेरिएबल के
- 9:28:24तौर पे। देखिए आप चाहे तो कुछ भी ले सकते
- 9:28:26हो। यहां पर हो सकता है आपके पास और
- 9:28:28कॉम्प्लेक्स कॉन्फ़िगरेशन फाइल्स हो। ठीक
- 9:28:30है? तो उस हिसाब से आप यहां पर चीजें
- 9:28:32चीजों को ले सकते हो। ठीक है? अब मैं यहां
- 9:28:34पर क्या करने वाला हूं ना? देखिए मैं लोकल
- 9:28:36डेटाबेस को कनेक्ट कर रहा हूं लोकली। अब
- 9:28:39मैं लोकल नहीं करना चाहता। मैं एक हिसाब
- 9:28:41से रिमोट डेटाबेस को कनेक्ट करूंगा आगे
- 9:28:44चलके। ठीक है? क्योंकि मेरी एप्लीकेशन अगर
- 9:28:47क्लाउड पे डिप्लॉय होती है तो मैं आगे
- 9:28:48चलकर रिमोट डेटाबेस को कनेक्ट कर सकता
- 9:28:50हूं। लेकिन अभी के लिए फिलहाल मैं क्या कर
- 9:28:52रहा हूं? देखिए ये जो वेरिएबल्स मैंने सेट
- 9:28:54कर दिए। अब मैं इसकी इमेज बनाता हूं अगर
- 9:28:56तो इमेज से कंटेनर बनेगा और कंटेनर आप
- 9:28:58कहीं पर भी रन कर सकते हो। प्रोडक्शन
- 9:29:00एनवायरमेंट पे कर सकते हो। लोकल
- 9:29:01एनवायरमेंट पे कर सकते हो और यहां पर
- 9:29:03चीजों को पास कर सकते हो। ठीक है? इतनी
- 9:29:06चीज हो गई। अब हमें क्या करना है? अब हम आ
- 9:29:10जाएंगे।
- 9:29:12तो अब मैं यहां पर आ जाता हूं। ठीक है? तो
- 9:29:15देखिए यहां पर मुझे कुछ चीजें आपको बतानी
- 9:29:19है। ठीक है? तो देखिए यहां पर सबसे पहले
- 9:29:21तो अ ये वाला कमांड है। मैंने कुछ कमांड्स
- 9:29:23लिखे हैं। पहले तो Linux के लिए, Windows
- 9:29:26के लिए और अ Windows में दो चीज़ हैं। एक
- 9:29:29कमांड प्र्ट। ठीक है? जो नॉर्मल कमांड
- 9:29:31प्र्ट है और दूसरा है पावर शेल। तो
- 9:29:32डिपेंडिंग ऑन आप क्या इस्तेमाल करते हो
- 9:29:34उसके बेसिस पर अ मैंने ये कमांड्स लिखे
- 9:29:37हैं। ठीक है? तो अब देखिए ये कमांड्स का
- 9:29:40मैं थोड़ा ओवरव्यू दे देता हूं आपको। ठीक
- 9:29:41है? सबसे पहले तो देखिए Linux पर। Linux
- 9:29:44पर नहीं सारे ऑपरेटिंग सिस्टम पर जितना
- 9:29:45मैंने लिखा है Mac, Windows और Windows
- 9:29:48में दो लिखे हैं मैंने। ठीक है? Linux और
- 9:29:50Mac OS। तो यहां पर देखिए सबसे पहले तो
- 9:29:52आपको करनी होती है एनवायरमेंट वेरिएबल
- 9:29:54सेट। अगर आप कमांड लाइन से जार फाइल बना
- 9:29:56रहे हो या एप्लीकेशन को पैकेज कर रहे हो।
- 9:29:58ठीक है? देखिए मैं अगर कमांड लाइन से यहां
- 9:30:01पर आ जाता हूं और यहां पर एप्लीकेशन को
- 9:30:03अगर पैकेज करने की कमांड रन करता हूं।
- 9:30:05पैकेज मैं क्यों करूंगा? सबसे पहले तो
- 9:30:07पैकेज मैं क्यों करूंगा? ठीक है? ये भी
- 9:30:09मैं आपको बता देता हूं। तो यहां पर देखिए
- 9:30:11यहां पर पैकेजिंग का मतलब है जार फाइल
- 9:30:12जनरेट करना। तो ये टारगेट फोल्डर जो है ये
- 9:30:15ऑटो जनरेटेड होता है। ठीक है? तो अगर मैं
- 9:30:19यहां पर आ जाऊं। ठीक है? तो देखिए एक होता
- 9:30:22है आपके पास होती है जनरल प्रोसेस मैं
- 9:30:25आपको बताता हूं। स्लैश टारगेट फोल्डर
- 9:30:27इसमें होगी आपके पास जार फाइल। ठीक है?
- 9:30:30जार फाइल ऐसे ठीक है? आपके पास होगी डॉट
- 9:30:33जार फाइल। डॉट जार लिख देता हूं। ठीक है?
- 9:30:37तो टारगेट फोल्डर में डॉट जार फाइल होगी।
- 9:30:40और ये होगी पैकेज्ड वर्जन ऑफ योर
- 9:30:42एप्लीकेशन। तो आपकी एप्लीकेशन जो है उसको
- 9:30:44जार फाइल में एक हिसाब से कंपाइल कर कर।
- 9:30:48तो जार फाइल बनाई जाती है jवा
- 9:30:49एप्लीकेशनेशंस की और फिर उसे सर्वर पर
- 9:30:51डिप्लॉय किया जाता है रन करने के लिए चार
- 9:30:53फाइल्स को। ठीक है? जार फाइल्स का मतलब
- 9:30:56क्या है? jवा आकाइव फाइल। ये एक हिसाब से
- 9:30:58देखिए Windows पर exc होती है। ठीक है? वो
- 9:31:01क्या होती है? वो एप्लीकेशन रन करने के
- 9:31:03लिए होती है। exc फाइल। और तो जार फाइल
- 9:31:05बेसिकली जावा में एक हिसाब से
- 9:31:07एग्जीक्यूटेबल की तरह आप समझ लीजिए इसको।
- 9:31:10ठीक है? तो जार फाइल हमें बनानी होगी। तो
- 9:31:12हम क्या करेंगे? देखिए ये हमारी जार फाइल
- 9:31:14है। ठीक है? ये जार फाइल। यह जार फाइल को
- 9:31:18हम पैकेज करेंगे एक डॉकर इमेज में और यहां
- 9:31:22पर जार फाइल के साथ होगी इसकी सारी की
- 9:31:26सारी जो इसे चाहिए डिपेंडेंसी तो मैं
- 9:31:28सिर्फ डी लिख देता हूं डिपेंडेंसीज और जो
- 9:31:31भी एनवायरमेंट चाहिए डिपेंडेंसी के साथ जो
- 9:31:34भी एनवायरमेंट चाहिए वो सब होगा यहां पे
- 9:31:36ठीक है तो जैसे कि java चाहिए इसको रन
- 9:31:39करने के लिए मेवन चाहिए जो भी चाहिए वो सब
- 9:31:40कुछ इसके अंदर होगा ठीक है और इसी कंटेनर
- 9:31:44के अंदर जार फाइल और यह होगी तो इसे पैकेज
- 9:31:46करेंगे हम डॉकर इमेज के अंदर और फिर इसे
- 9:31:49रन कर सकते हैं हम कंटेनर में। ठीक है? रन
- 9:31:52इस तरीके से। तो यह हो गया कंटेनर। यह हो
- 9:31:54गई इमेज। ठीक है? लेकिन पैकेज करने के लिए
- 9:31:57आपको जार फाइल तो पहले चाहिए। करेक्ट? तभी
- 9:31:59ही आप उसकी इमेज बना पाओगे और फिर उस इमेज
- 9:32:01को रन कर पाओगे। तो कंटेनर के अंदर जो
- 9:32:04रनिंग इंस्टेंस है कंटेनर उसके अंदर ये
- 9:32:07जार फाइल ही रन होगी। करेक्ट? ये होगा
- 9:32:09पूरा प्रोसेस। और फिर यह डॉकर का जो इमेज
- 9:32:11है उसको आप कहीं पर उसकी उसकी रनिंग
- 9:32:13इंस्टेंस क्रिएट करके आप कहीं पर भी
- 9:32:15डिप्लॉय कर सकते हो। तो यही सेम इमेज को
- 9:32:17आप डिप्लॉय कर सकते हो। प्रोडक्शन पर आप
- 9:32:19डिप्लॉय कर सकते हो। टेस्ट एनवायरमेंट पर
- 9:32:21सभी जगह पर। ठीक है? तो ये हम करने वाले
- 9:32:24हैं। और इसे ही करने के लिए हमें जार फाइल
- 9:32:27की जरूरत पड़ेगी। ठीक है? तो ये जो कमांड
- 9:32:30है मैं सीधा-सीधा आपको बता दूं। ये जो
- 9:32:32कमांड हम कर रहे हैं पैकेज। ये जार फाइल
- 9:32:35में पैकेज करेगा हमारी एप्लीकेशन। पैकेज।
- 9:32:37अब पैकेज करने के लिए ना एप्लीकेशन को वह
- 9:32:40एक बार बिल्ड करता है और बिल्ड करते वक्त
- 9:32:43उसको जो एनवायरमेंट वेरिएबल्स है वह चाहिए
- 9:32:45होते हैं। तो जो भी एनवायरमेंट वेरिएबल्स
- 9:32:47की जरूरत होती है यानी कि एप्लीकेशन
- 9:32:48प्रॉपर्टीज में ये एक हिसाब से एप्लीकेशन
- 9:32:50को स्टार्ट करता है पैकेज करते वक्त
- 9:32:52एप्लीकेशन स्टार्ट होगी आपकी बैकग्राउंड
- 9:32:54में आपको दिखाई देंगे सारे लॉग्स और तभी
- 9:32:57उसको जरूरत पड़ेगी यह जो आपने वेरिएबल्स
- 9:33:01डिफाइन किए उसकी पैकेज करने के लिए। ठीक
- 9:33:04है? तो पैकेज हम करेंगे और फिर उसकी इमेज
- 9:33:07बनाकर हम उसे कर देंगे डिप्लॉय प्रोडक्शन
- 9:33:10पर। ठीक है? उम्मीद करता हूं आपको समझ में
- 9:33:13आ रही है चीजें। तो मैं क्या करूंगा?
- 9:33:15देखिए पैकेज करने के लिए मुझे इस्तेमाल
- 9:33:17करना होगा माय सीक्वल का इस्तेमाल कर रहा
- 9:33:19हूं मैं। ठीक है? लेकिन मैं जो हूं मैं
- 9:33:22इस्तेमाल करूंगा पॉस्कस सीक्वल का। अ एक
- 9:33:25मिनट मुझे देख लेने दीजिए किसका इस्तेमाल
- 9:33:27करना चाहिए मुझे। ठीक है? अभी के लिए
- 9:33:29सिंपल रखते हैं और इसे माय सीक्वल ही रखते
- 9:33:31हैं। ठीक है? तो मैं क्या करूंगा? अभी
- 9:33:34यहां पर आ जाऊंगा और ये क्योंकि मैं
- 9:33:36Windows पर हूं और मैं पावर शेल का
- 9:33:38इस्तेमाल करने वाला हूं तो मैं ये कमांड
- 9:33:39कॉपी कर लेता हूं। ठीक है? ये वाली कमांड
- 9:33:41देखिए मैं आपको बिना एनवायरमेंट वेरिएबल
- 9:33:43सेट किए भी एक कमांड रन करके दिखाता हूं।
- 9:33:44तो इस तरीके से होगी और ये यहां पर होगी
- 9:33:47पीडब्ल्यू डी। ठीक है? क्लियर? और यहां पर
- 9:33:50मैं रन करूंगा एमवीएन पैकेज। ठीक है? तो
- 9:33:53जैसे ही मैं रन करता हूं तो देखिए एक
- 9:33:54हिसाब से ऐप को स्टार्ट कर रहा है। और
- 9:33:56यहां पर देखिए एरर दे दी इसने। ठीक है?
- 9:33:58कैन नॉट फाइंड सिंबल। कैन नॉट फाइंड
- 9:34:00सिंबल। तो यह एरर दे दी एक हिसाब से इसने।
- 9:34:02ठीक है? यह एरर इसने काफी पहले दी है। तो
- 9:34:06यहां पर अगर आप ऊपर आते हो, बहुत सारी
- 9:34:08एरर्स आई है आपके एप्लीकेशन में। देखिए,
- 9:34:11ठीक है? ये एप्लीकेशन स्टार्ट हुई और ये
- 9:34:14कंपाइल नहीं हो पाया है। ठीक है? इज़ नॉट
- 9:34:16इनिशियलाइज्ड। नॉट इनिशियलाइज़ ये सारी
- 9:34:18एरर्स आई है। अच्छा, नॉट इनिशियलाइज़ कैन
- 9:34:21नॉट फाइंड सिंबल। ठीक है दोस्तों? तो पहले
- 9:34:23जो इशू आ रही थी, यह वाली जो इशू हम देख
- 9:34:25रहे थे, यह लॉबक रिलेटेड इशज़ थी, इसका
- 9:34:27मतलब यह है कि गेटर्स और सेटर्स कुछ वजह
- 9:34:29से जनरेट नहीं हो रहे तो मैंने प्रोजेक्ट
- 9:34:31को थोड़ा क्लीन करके रिबिल्ट किया और
- 9:34:33मैंने फिर से यह कमांड चलाई। ठीक है? फिर
- 9:34:36से यह कमांड चलाई। तो फिर से अगर कमांड
- 9:34:38चलाते हो तो वो वाली इशू नहीं आ रही है।
- 9:34:40अभी ये कुछ आईडी स्पेसिफिक इशू था जो आ
- 9:34:42रही थी। लेकिन अभी ये इशू आ रही है। देखिए
- 9:34:44कुछ डेटा सोर्स रिलेटेड कुछ फील्ड टू लोड
- 9:34:48प्रॉपर्टीज चाहे काफी। देखिए जीडीबीसी
- 9:34:50रिलेटेड कुछ एरर है। यूआरएल डेटा सोर्स।
- 9:34:52तो इसका मतलब यह है उसे अह जो वैल्यू है
- 9:34:56यह यूआरएल की वह मिल नहीं रही है। तो अब
- 9:34:58हमारा हमारी जॉब है कि हम उसे सेट करें।
- 9:35:01तो मैं क्या करूंगा यहां पर आ जाऊंगा। ये
- 9:35:03टाइम पर ना देखिए आप जभी भी ये कर रहे हो
- 9:35:05ना आप एक नोटपैड हैंडी रखिए और इसको मैं
- 9:35:08कॉपी कर लूंगा। यहां पर आ जाऊंगा और
- 9:35:10क्योंकि मैं Windows का इस्तेमाल कर रहा
- 9:35:11हूं। देखिए अगर आप Linux का इस्तेमाल कर
- 9:35:13रहे हो तो आपको ये इस तरीके से कमांड लाइन
- 9:35:15पर सेट करने हैं। एनवायरमेंट वेरिएबल्स।
- 9:35:18Windows में कमांड प्र्ट का तो इस्तेमाल
- 9:35:20कर रहे हो तो इस तरीके से सेट करना है।
- 9:35:21सेट कीवर्ड यूज़ करोगे और पावर शेल पर इस
- 9:35:24तरीके से इस्तेमाल करोगे आप। ठीक है? तो
- 9:35:27यहां पर पेस्ट कर दीजिए ऐसे और यहां पर
- 9:35:30ऐसे कर दीजिए और यहां पर इसको ऐसे करूंगा
- 9:35:34मैं। और फिर यह डॉलर ई एनवी को ऐड कर
- 9:35:38दूंगा इस तरीके से। ठीक है? इतना मैंने कर
- 9:35:40दिया। और यहां पर यह कॉपी कर लिया। और फिर
- 9:35:45यहां पर आ जाइए। क्लियर कर दूंगा यह सब और
- 9:35:48फिर इसको ऐसे पेस्ट कर। अच्छा यह फेल हो
- 9:35:51रहा है। यह चल नहीं रहा है। ऐसा क्यों?
- 9:35:54अच्छा यह पावर शेलफ पर तो चलना चाहिए था।
- 9:35:57अच्छा पावर शेल पर चलना चाहिए लेकिन ये
- 9:35:59देखिए डबल कोड्स में है। तो मैंने कोड्स
- 9:36:01मिस कर दिया है मैंने। ठीक है? तो कोड्स
- 9:36:03मिस नहीं कीजिएगा। कोड्स ज्यादा
- 9:36:06इंपॉर्टेंट है। ठीक है? इस तरीके से सेट
- 9:36:08कीजिए। नहीं तो फेल हो जाएगी। एग्जैक्ट
- 9:36:10सिंटेक्स फॉलो कीजिएगा। ठीक है? ये यहां
- 9:36:12पर एग्जैक्ट सिंटेक्स। यहां पर कोड्स नहीं
- 9:36:13है। यहां पर कोड्स नहीं है। ठीक है? तो
- 9:36:15मैंने कोड्स को सेट कर दिया यहां पर। ऐसे
- 9:36:17आ जाइए और फिर से क्लियर कर देता हूं और
- 9:36:20फिर रन कीजिए। यह सेट हो गया है। ठीक है?
- 9:36:23तो देखिए मेरी जो इंस्टेंस है ना
- 9:36:24इंटेलिजेंट टर्मिनल की वो पावर शेल की है।
- 9:36:27यहां पर आप देख सकते हो पावर शेल कमांड
- 9:36:28प्र्ट गेट बैश पावर शेल पे हूं मैं। पावर
- 9:36:31शेल इस्तेमाल कर रहा हूं। इसके लिए चल
- 9:36:32गया। ठीक है? इतना हो गया। अब मैं क्या
- 9:36:34करूंगा? मैं यहां पर आ जाऊंगा और यहां पर
- 9:36:36ये एमवीएनw पैकेज को रन करूंगा। अब देखते
- 9:36:39हैं ये इसकी जार फाइल बनती है या नहीं।
- 9:36:42ठीक है? तो टारगेट फोल्डर में हमने चेक
- 9:36:44किया था जार फाइल थी नहीं। तो देखिए यह
- 9:36:46एप्लीकेशन को स्टार्ट वगैरह कर रहा है और
- 9:36:48एप्लीकेशन को इसने रन कर दिया। बिल्ड
- 9:36:49सक्सेस आ गई। 8 सेकंड का टोटल टाइम लगा
- 9:36:52यहां पर। ठीक है? तो आप देख देख सकते हो
- 9:36:54पूरा सारी की सारी चीजें। और यहां पर आप
- 9:36:56देखोगे देखिए इसने अ यहां पर टारगेट
- 9:37:00फोल्डर में एक जार फाइल बनाई है इस नाम
- 9:37:03से। ठीक है? देख पा रहे हो आप जार फाइल।
- 9:37:06तो यहां पर आ जाना है आपको। और देखिए ये
- 9:37:07जार फाइल यहां पर आपको दिखाई देंगी जार
- 9:37:09फाइल। ठीक है? जार फाइल बन चुकी है।
- 9:37:12करेक्ट। ठीक है? अब जार फाइल बनने के बाद
- 9:37:15मैं क्या करूंगा? देखिए जार फाइल में तो
- 9:37:17पैकेज कर दिया हमने। हम यहां पर आ जाएंगे
- 9:37:18टर्मिनल पे। ठीक है? यहां पर आ जाऊंगा और
- 9:37:21मैं फिर से एमवीएनw का इस्तेमाल करूंगा।
- 9:37:23एमवीएनw। देखिए दोस्तों मैं एक चीज़
- 9:37:26एक्सप्लेन करना भूल गया। ये MVNW है क्या?
- 9:37:28तो ये MVNW आप इस्तेमाल कर रहे हो। यहां
- 9:37:29पर MVNW इस्तेमाल कर रहे हो। आप MVNW
- 9:37:32इस्तेमाल कर रहे हो। एमवीएन कमांड मेविन
- 9:37:35का इस्तेमाल करने के लिए यूज़ होता है। अगर
- 9:37:37आप मेवन का इस्तेमाल कर रहे हो तो एमवीएन
- 9:37:38कमांड इस्तेमाल करते हो। लेकिन यहां पर हम
- 9:37:41एमवीएंट डब्ल्यू इस्तेमाल कर रहे हैं जो
- 9:37:42कि है मेवन रैपर जो कि आता है स्प्रिंग
- 9:37:45बूट के साथ। ठीक है? तो अगर आप स्प्रिंग
- 9:37:47बूट का प्रोजेक्ट डालते हो यहां पर तो
- 9:37:49देखिए आपको यह मेवन रैपर दिखाई देगा यहां
- 9:37:51पर mvven यह अगर आप स्प्रिंग बूट
- 9:37:53प्रोजेक्ट बनाते हो तो इसके साथ आपको मेवन
- 9:37:55रैपर मिलता है और mvnw की मदद से आप मेवन
- 9:37:58रैपर को कॉल कर रहे हो। एक हिसाब से अगर
- 9:38:00आपको चाहिए मेवन रैपर को कॉल नहीं करूं
- 9:38:02मैं तो आप एमवीएन इस्तेमाल कर सकते हो
- 9:38:04डायरेक्ट कमांड लेकिन उसके लिए आपके मशीन
- 9:38:07पर मेन इंस्टॉल होनी जरूरी है। ठीक है? तो
- 9:38:10मैं इस्तेमाल करूंगा एमवी एन डब्लू और फिर
- 9:38:13मैं कहूंगा स्प्रिंग हफन बूट कोलन बिल्ड
- 9:38:17हफन इमेज। ठीक है? अब इसको रन करने के लिए
- 9:38:21ना हमें एक डिपेंडेंसी चाहिए। इसको रन
- 9:38:23मैंने नहीं किया। एक डिपेंडेंसी यहां पर
- 9:38:25ऐड होनी चाहिए। एक चीज़ कॉन्फ़िगर होनी
- 9:38:26चाहिए जो कि है बिल्ड में मेवन प्लगइन। ये
- 9:38:29ऐडेड होना चाहिए। तो मेवन प्लगइन की मदद
- 9:38:32से हम एक डॉकर इमेज बना रहे हैं। यहां पर
- 9:38:35देखिए। अब यहां पर वेट करते हैं और हां
- 9:38:37आपको मेक श्योर करना है कि डॉकर डेस्कटॉप
- 9:38:39भी अप एंड रनिंग हो। ठीक है? तो थोड़ा
- 9:38:42इंतजार करेंगे। देखिए इमेज बनते जा रही
- 9:38:45है। आप देख पा रहे हो बिल्डिंग इमेज। ठीक
- 9:38:47है? और यह रहेगा इमेज का नाम देखिए आप
- 9:38:50डॉकर. लाइब्रेरी फिटनेस मोनोलथ 01 hfन
- 9:38:54snapshot। ठीक है? यह इमेज बनते जा रही
- 9:38:57है। थोड़ी देर के बाद आपको इमेज दिखाई
- 9:39:01देंगी और वो कहां दिखाई देगी? डॉकर
- 9:39:03डेस्कटॉप में दिखाई देगी। तो यहां पर हमने
- 9:39:04डॉकर डेस्कटॉप को इंस्टॉल करके ओपन कर रखा
- 9:39:07है यहां पर। ठीक है? यहां पर अभी आई नहीं
- 9:39:09है लेकिन यहां पर दूसरी इमेजज़ हैं जो आप
- 9:39:10देख पा रहे हो। लेकिन यहां पर और इमेजज़
- 9:39:12आएंगी। ठीक है? तो कुछ इंतज़ार करते हैं।
- 9:39:15देखिए दोस्तों मैं तब तक ना कॉन्सेप्ट
- 9:39:16एक्सप्लेन कर देता हूं जब तक ये प्रोसेस
- 9:39:18कंप्लीट होता है। अच्छा यहां पर आ गई
- 9:39:20बिल्ड फेलियर। अच्छा क्या हो गया बिल्ड
- 9:39:22फेलियर? एग्जीक्यूशन डिफ़ॉल्ट एग्जीक्यूशन
- 9:39:26सीएलआई ऑफ़ गोल इमेज फेल्ड नो आईओ।
- 9:39:31अच्छा यह कुछ एरर आ गई है हमें इतनी ओके
- 9:39:36ठीक है दोस्तों यह रन नहीं हो रहा है और
- 9:39:38मैंने थोड़ी चीजें चेक की यहां पर यह
- 9:39:40देखिए यह जो मेवन प्लगइन है ये लेटेस्ट
- 9:39:42वर्जन का मेन प्लगइन है और मेरे हिसाब से
- 9:39:45जो लेटेस्ट रिलीज़ आई है स्प्रिंग बूट की
- 9:39:48उस पर यह मेरे यह सपोर्टेड अभी है नहीं
- 9:39:51ऐसा मुझे लग रहा है मैंने रिसर्च भी की
- 9:39:53थोड़ी सी वीडियो को पॉज करके और मुझे पता
- 9:39:55चला कि यह सपोर्टेड पूरी तरीके से है नहीं
- 9:39:57तो इसको अगर आपको यह कमांड वर्किंग चाहिए
- 9:40:00तो आपको क्या करना होगा? आपको स्प्रिंग
- 9:40:03बूट को थोड़ा सा डाउनग्रेड करना होगा।
- 9:40:05यानी वर्जन थोड़ा डाउनग्रेड करना होगा जो
- 9:40:07कि मैं नहीं करना चाहता। ठीक है? तो एक
- 9:40:08दूसरा सशन है मेरे पास। ठीक है? तो देखिए
- 9:40:11ये वाला जो हमने अप्रोच देखा ना इसके जरिए
- 9:40:14आप इमेज बना सकते हो मेवन की मदद से। तो
- 9:40:18देखिए आपके पास मेवन कॉन्फ़िगरर्ड है।
- 9:40:20करेक्ट? मेवन कॉन्फ़िगरर्ड है। तो मैं मैं
- 9:40:22आपको एक डायग्राम के तौर पे बता देता हूं।
- 9:40:24अच्छा सॉरी ये क्या कर दिया मैंने। ठीक
- 9:40:26है? तो देखिए दोस्तों, यहां पर मैं आ चुका
- 9:40:28हूं ड्राइंग टूल पर और यहां पर मैं कुछ
- 9:40:31चीजें कुछ कांसेप्ट्स आपको एक्सप्लेन कर
- 9:40:33देता हूं। देखिए सबसे पहले तो मैं आपको ये
- 9:40:35बताना चाहता हूं कि इमेज बनाने के दो
- 9:40:37तरीके हैं। एक तो यूजिंग मेवन प्लगइन और
- 9:40:39यूजिंग डॉकर फाइल। ये दोनों तरीकों के
- 9:40:40बारे में मैं आपको बताता हूं। ठीक है?
- 9:40:42लेकिन देखिए इमेज क्या होती है? इमेज के
- 9:40:45अंदर आप डिफाइन करते हो जार फाइल और
- 9:40:47डिपेंडेंसीज़। करेक्ट? और इमेज को ये ऐप जो
- 9:40:50है इमेज के अंदर उसको कैसे रन करना है?
- 9:40:52इसके इंस्ट्रक्शंस होते हैं और फिर वो
- 9:40:54स्टैंड अलोन होती है। फिर उसका आप
- 9:40:55इंस्टेंस बना लो तो एप्लीकेशन रन हो
- 9:40:57जाएंगी और वो आइसोलेटेड वे में रन होगी।
- 9:40:59तो डिपेंडेंसीज़ के साथ ही रन हो रही है।
- 9:41:01आपको कुछ टेंशन नहीं है। ठीक है? अब मेवन
- 9:41:04प्लगइन का इस्तेमाल और डॉकर फाइल का
- 9:41:07इस्तेमाल क्यों होता है? तो ये दोनों
- 9:41:09अप्रोचेस है जिसके जरिए आप एक डॉकर इमेज
- 9:41:12बना सकते हो। पहले अप्रोच के बारे में बात
- 9:41:15करते हैं। मेवन प्लगइन। तो देखिए स्प्रिंग
- 9:41:16बूट के एप्लीकेशन में अगर आप pmsl फ़ाइल
- 9:41:19में जाओगे आप देखोगे लास्ट में नीचे मेवन
- 9:41:21प्लगइन करके कुछ ऐडेड है। तो मेवन प्लगइन
- 9:41:24क्या करता है? मेन प्लगइन मेवन की मदद से
- 9:41:27और आपकी एप्लीकेशन की जो इनेशन है,
- 9:41:29प्रोजेक्ट की जो इनफेशन है, प्रोजेक्ट की
- 9:41:30इनफार्मेशन कहां होगी? एक मेवन बेस्ड
- 9:41:32प्रोजेक्ट की pmsl में होगी। एप्लीकेशन
- 9:41:34डॉट प्रॉपर्टीज़ फाइल में उसकी कॉन्फ़िगरेशन
- 9:41:37होगी और बाकी सारी चीजें तो आपको pm.XML
- 9:41:41से ही मिल जाएगी। तो, एक हिसाब से pm.XML
- 9:41:44अगर कोई एप्लीकेशन या कोई एक प्लगइन देख
- 9:41:48लेता है उसको पूरी प्रोजेक्ट की
- 9:41:49इंफॉर्मेशन मिल जाती है। अगर आपको pmsl पे
- 9:41:52डाउट है कि कितनी पावरफुल फाइल है वह तो
- 9:41:55मैं आपको एक चीज़ बता दूं अगर आप प्रोजेक्ट
- 9:41:57को इंपोर्ट करते हो इंटेलिजेंट आईडिया में
- 9:41:59आप प्रोजेक्ट का फोल्डर सेलेक्ट नहीं करते
- 9:42:01हो आप pmsl सेलेक्ट करते हो क्योंकि pmxl
- 9:42:05से उसको पूरा प्रोजेक्ट का स्ट्रक्चर मिल
- 9:42:07जाता है और फिर वो प्रोजेक्ट एज अ
- 9:42:08प्रोजेक्ट इंपोर्ट होता है इंटेलिजेंट तो
- 9:42:10ये बेटर प्रैक्टिस है तो pmsl एक
- 9:42:12इंपॉर्टेंट फाइल है उसमें आप देखिए pmsl
- 9:42:15को खोल के देखिए अपने प्रोजेक्ट पर अपने
- 9:42:16लोकल मशीन पर उसमें आपको java की वर्जनंस
- 9:42:18मिलेगी पैकेज की इनेशन प्रोजेक्ट का नाम,
- 9:42:21आर्टिफेक्ट
- 9:42:22और स्प्रिंग के कौन से-कौ से डिपेंडेंसीज़
- 9:42:25ऐड हो रखे हैं और क्या-क्या प्लगइिंस ऐड
- 9:42:28हो रखे हैं। सारी इनेशन वो एक फाइल में
- 9:42:30आपको मिलेगी। ठीक है? तो मेवन प्लगइन क्या
- 9:42:32करता है? स्प्रिंग बूट में हम मेवन
- 9:42:34इस्तेमाल कर रहे हैं। मेवन प्लगइन क्या
- 9:42:36करता है? उस सारी इनेशन से खुद ब खुद ही
- 9:42:38डॉकर इमेज बना लेता है। देखो उसे पता है
- 9:42:40जार फाइल कहां पे है? जार फाइल होगी
- 9:42:42टारगेट फोल्डर में। करेक्ट? क्योंकि
- 9:42:44स्प्रिंग बूट प्रोजेक्ट है। डिपेंडेंसी
- 9:42:46सारी पता है उसे। सारी pmxl में लिखी हुई
- 9:42:49है। java का वर्जन भी लिखा हुआ है pm.xml
- 9:42:51में तो फिर उसे इंस्ट्रक्शंस की जरूरत है
- 9:42:53नहीं। तो वो क्या करता है? खुद से ही इमेज
- 9:42:55बना लेता है। करेक्ट? और स्प्रिंग बूट
- 9:42:57प्रोजेक्ट है तो उसे रन कैसे करना है वो
- 9:42:58भी पता है। तो इमेज खुद से बना लेता है।
- 9:43:00तो आप इमेज बना सकते हो यूजिंग मेवन
- 9:43:02प्लगइन। ठीक है? और आपको कुछ एडिशनल करने
- 9:43:05की जरूरत नहीं है। मैंने जो अभी कमांड रन
- 9:43:07किया एमवीएन अ बिल्ड कोलन इमेज वो आपको रन
- 9:43:10करना है। ठीक है? ठीक है? बिल्ड इमेज का
- 9:43:12जो कमांड मैंने अभी रन किया वो आपको रन
- 9:43:13करना है। लेकिन अभी दिक्कत ये हो रही है
- 9:43:15कि वर्जन मिसमैच है। तो बेसिकली लेटेस्ट
- 9:43:17वर्जन पर ये कमांड सपोर्ट नहीं कर रहा।
- 9:43:19फिलहाल हो सकता है आप जब वीडियो देख रहे
- 9:43:21हो वो सब सपोर्ट करने लग जाए। लेकिन दूसरा
- 9:43:24तरीका मैं अपनाना चाहूंगा जो कि है डॉकर
- 9:43:26फाइल का। तो डॉकर फाइल में क्या है? एक
- 9:43:28डॉकर फाइल करके एक फाइल होती है जो आप ऐड
- 9:43:30करते हो प्रोजेक्ट में और उसमें आप
- 9:43:32इंस्ट्रक्शंस लिखते हो कि इस तरीके से
- 9:43:34इमेज क्रिएट होनी चाहिए और रन होनी चाहिए।
- 9:43:36ठीक है? इतना आप लिख देते हो। उसे डॉकर
- 9:43:38फाइल कहते हैं। डॉकर की इंस्ट्रक्शंस फाइल
- 9:43:40होती है ये टू क्रिएट द इमेज। ठीक है? तो
- 9:43:43हम दूसरा अप्रोच देखेंगे। तो मैं यहां पर
- 9:43:45आ जाता हूं। ठीक है? और यहां पर मैं एक
- 9:43:47चीज आपको बता दूं यहां पर कि आप अगर चाहे
- 9:43:52थोड़ा बेटर एक्सपीरियंस डॉकर के साथ तो
- 9:43:54यहां पर सेटिंग्स में आकर प्लगइंस में आकर
- 9:43:56ये डॉकर का प्लगइन इंस्टॉल कर लीजिएगा।
- 9:43:58ठीक है? मैंने इंस्टॉल कर लिया क्योंकि
- 9:44:00मैं डॉकर पर ऑलरेडी बहुत काम करता हूं।
- 9:44:02ठीक है? तो मेरे पास यह जो प्लगइन है, यह
- 9:44:04ऑलरेडी इंस्टॉल्ड है। लेकिन आप अगर चाहते
- 9:44:06हो तो आप इंस्टॉल कर लीजिएगा। तो देखिए अब
- 9:44:08प्रोजेक्ट में आ जाइए यहां पर और राइट
- 9:44:10क्लिक कीजिए और यहां पर एक नई फाइल बना
- 9:44:12लीजिए। अब यहां पर देखिए मुझे डॉकर फाइल
- 9:44:14दिखाई दे रही है यहां पर क्योंकि मैंने वो
- 9:44:16प्लगइन इंस्टॉल कर रखा है। लेकिन अगर आपको
- 9:44:18नहीं दिखाई दे रही तो कोई दिक्कत नहीं है।
- 9:44:19ऐसे फाइल बना लीजिए और यहां पर नाम दे
- 9:44:21दीजिए डॉकर फाइल इस तरीके से तो ये फाइल
- 9:44:24बन जाएगी। ठीक है? ऐसे फाइल लिख दिया। और
- 9:44:26अभी ये आइकॉन वगैरह हो सकता है नहीं दिखे।
- 9:44:28अगर आपने प्लगइन नहीं डाला है तो मेरे लिए
- 9:44:30पूरा आइकॉन वगैरह सब हाईलाइटेड है। और
- 9:44:33यहां पर ये जो कोड है ये आपको गेटअप से
- 9:44:34मिल जाएगा। इसे आप देख लीजिए ये कोड। ठीक
- 9:44:36है? यह सिंपल सी फाइल है। इंस्ट्रक्शंस
- 9:44:39फाइल है। मैं आपको एक्सप्लेन कर देता हूं
- 9:44:40यह फाइल कर क्या रही है। देखिए सबसे पहले
- 9:44:43तो हमारी एप्लीकेशन को चाहिए जावा रन होने
- 9:44:45के लिए। तो मैंने यहां पर जावा की एक इमेज
- 9:44:48को इस्तेमाल किया है। एक्लिप्स ट्यूरिन 21
- 9:44:51java 21 ये jडी के 21 है। JRE 21 ठीक है?
- 9:44:54Java 21 वर्जन का हम इस्तेमाल कर रहे हैं
- 9:44:57हमारी ऐप को रन करने के लिए। आप चाहे तो
- 9:44:59दूसरा वर्जन भी ले सकते हो। अगर आप इसे
- 9:45:02सर्च करोगे। ठीक है? Docker hub पे अगर
- 9:45:05यहां पर आके अगर आप डॉकर पे इसे सर्च भी
- 9:45:08करोगे तो आपको यह इमेज यह मैं क्या यूज कर
- 9:45:10रहा हूं यह आपको दिख जाएगा। देखिए ओपन jdk
- 9:45:12की ऑफिशियल लाइब्रेरीज है टेम्यूरिन आप
- 9:45:14चाहे तो यहां पे कोई भी वर्जनंस ले सकते
- 9:45:17हो कोई भी वर्जन 25 भी लेटेस्ट है अगर आप
- 9:45:20चाहो तो ये टोटली आपके ऊपर है। मैंने 21
- 9:45:23लिया हुआ है। ठीक है? क्योंकि ये मुझे
- 9:45:24स्टेबल लगता है। अभी लेटेस्ट वर्ज़न्स
- 9:45:26जनरली मैं प्रेफर नहीं करता अनलेस एंड
- 9:45:28अंटिल मैंने उसको ट्राई किया हुआ। तो 25
- 9:45:30वाला मैंने अभी ये जो इमेज है इमेज का 25
- 9:45:33वर्ज़न मैंने ट्राई नहीं किया है। jवा
- 9:45:35लोकली 25 ट्राई किया है लेकिन ये वाला
- 9:45:36नहीं तो मैं अभी फिलहाल वो नहीं ले रहा।
- 9:45:39आप ले सकते हो। वर्क डायरेक्टरी मैंने सेट
- 9:45:41की है। तो विद इन द कंटेनर विद इन द इमेज
- 9:45:43मैं चाहता हूं कि वर्क डायरेक्टरी स्लैश
- 9:45:45ऐप हो। इसका मतलब है जो भी अब मैं कमांड्स
- 9:45:47रन करूंगा वो स्लैश ऐप के अंदर रन होगी।
- 9:45:50कंटेनर के अंदर हां कंटेनर एक अलग सा मशीन
- 9:45:53यानी कि एक छोटा सा आइसोलेटेड एनवायरमेंट
- 9:45:55या मशीन क्रिएट होता है। ठीक है? अब मैं
- 9:45:57क्या लिख रहा हूं? मैं यहां पर लिख रहा
- 9:45:58हूं टारगेट फोल्डर में जो भी जार फाइल है
- 9:46:00उसको कॉपी करके कंटेनर के अंदर या इमेज के
- 9:46:04अंदर ले लीजिए app डॉट जार नाम कर दीजिए
- 9:46:06उसका। तो इसका मतलब क्या है? टारगेट
- 9:46:08फोल्डर के अंदर जो भी जार फाइल है यहां पर
- 9:46:10एक जार फाइल ये वाली इसको ले लीजिए स्टार
- 9:46:13डॉट जार जो भी नाम है और उसको रीनेम कर
- 9:46:15दीजिए ऐप डॉट जार इंसाइड द इमेज या इनसाइड
- 9:46:17द कंटेनर जो भी होगा पोर्ट 880 को एक्सपोज़
- 9:46:21कर दीजिए। यानी कि हमारी एप्लीकेशन रन
- 9:46:22होगी पोर्ट 880 पे तो इसको एक्सपोज कर
- 9:46:24दीजिए और यह वाली कमांड को रन कर दीजिए जब
- 9:46:28कंटेनर स्टार्ट हो। तो java hन jar app ऐप
- 9:46:30डॉट जार तो इससे एप्लीकेशन स्टार्ट हो
- 9:46:32जाएगी। ठीक है? ये है हमारी डॉकर इमेज को
- 9:46:35क्रिएट करने की रेसिपी। समझ रहे हैं आप?
- 9:46:38ये क्या है? हमारी जो डॉकर इमेज है उसको
- 9:46:42क्रिएट करने की एक हिसाब से हमने रेसिपी
- 9:46:44डिफाइन कर रखी है और इस रेसिपी के बिहाफ
- 9:46:47पर इस रेसिपी के बिहाफ पर हमारी जो
- 9:46:50कंटेनर्स है वो रन होगी। अभी तो हम इमेज
- 9:46:52बना रहे हैं जो कि है टेंपलेट। उसके बाद
- 9:46:54वो कंटेनर्स में कन्वर्ट होगी। ठीक है? तो
- 9:46:57मैं इसको स्टॉप कर देता हूं एप्लीकेशन जो
- 9:46:59लोकल रनिंग है। ठीक है? यहां पर हम आ जाते
- 9:47:01हैं। अब यहां पर अ मुझको क्या करना है?
- 9:47:05मुझको जो है अ एक कमांड रन करना होगा। ठीक
- 9:47:09है? तो मैं ऊपर आ जाता हूं। ठीक है?
- 9:47:12क्लियर कर लेता हूं। ठीक है? अब देखिए
- 9:47:14यहां पर मैं कहूंगा डॉकर बिल्ट हफन टी
- 9:47:19फिटनेस
- 9:47:22मोनोलिथ।
- 9:47:24ठीक है? या जो भी नाम आप देना चाहो इमेज
- 9:47:26का वो लिख दो और डॉट लिख दो। ठीक है? तो
- 9:47:28मैं क्या कर रहा हूं? मैं कह रहा हूं
- 9:47:29बिल्ड डॉकर इमेज और उसका नाम दीजिए फिटनेस
- 9:47:32मोनोलिथ और जो करंट फोल्डर है उस उसको
- 9:47:36रेफर कीजिए एज अ कंटक्स्ट डायरेक्टरी
- 9:47:38क्योंकि डॉकर फाइल और सब करंट डायरेक्टरी
- 9:47:40में है और इसको एंटर करूंगा मैं तो जैसे
- 9:47:42ही आप ये करते हो तो देखिए ये इमेज
- 9:47:45बिल्डिंग का जो प्रोसेस है वो स्टार्ट हो
- 9:47:46जाता है। आप देख पा रहे हो यहां पर ये
- 9:47:49एक्लिप्स स्टेमरन 21 की जो इमेज है उसको
- 9:47:51फच कर रहा है। उसको सेव कर रहा है। उसको
- 9:47:53डाउनलोड कर रहा है। फिर देखिए सारे जो
- 9:47:55आपने लिखे थे यहां पर इंस्ट्रक्शंस वो
- 9:47:57सारे रन हो रहे हैं। तो मैं इसको एक हिसाब
- 9:47:59से स्पेसिंग हटा देता हूं। तो देखिए सबसे
- 9:48:02पहले तो यह डॉकर की इम यह इमेज फ़च हुई।
- 9:48:05फिर यह वर्क डायरेक्टरी फेच हुई और फिर ये
- 9:48:07जार फाइल अंदर कॉपी हुई है। ठीक है? और
- 9:48:10फिर यहां पर देखिए लेयर्स एक्सपोर्ट हुए
- 9:48:12और डॉकर फाइल रेडी है। ठीक है? ये दोनों
- 9:48:15चीजें जब इमेज रन होगी तब एग्जीक्यूट
- 9:48:18होगी। इनका नोट नोट डाउन कर लिया गया है।
- 9:48:20ठीक है? तो इतना हो चुका है। अब मैं क्या
- 9:48:22कर सकता हूं? मैं डॉकर इमेज को रन कर सकता
- 9:48:24हूं। तो देखिए इमेज आप देख सकते हो यहां
- 9:48:25पर आके।
- 9:48:27डॉकर डेस्कटॉप आपके पास होगा। यह देखिए
- 9:48:29फिटनेस मोनोलिथ नाम की इमेज है। बन चुके
- 9:48:32हैं। 38 सेकंड्स। अब मेरे पास कोई कंटेनर
- 9:48:35नहीं है। तो मैं क्या कर सकता हूं? इस
- 9:48:36इमेज से एक कंटेनर भी रन कर सकता हूं। तो
- 9:48:39मैं कहूंगा डॉकर रन हफन पी और फिर कहूंगा
- 9:48:43एटी80 कोलन 8080 और फिर फिटनेस मोनोलिथ।
- 9:48:51फिटनेस मोनोलिथ इमेज का नाम है। ठीक है?
- 9:48:54डॉकर रन हफन पी के मदद से आप क्या कर रहे
- 9:48:56हो? पोर्ट मैपिंग कर रहे हो। पोर्ट मैपिंग
- 9:48:58का मतलब मैं आपको बता देता हूं। ठीक है?
- 9:49:00तो पोर्ट मैपिंग के लिए यहां पर आ जाता
- 9:49:02हूं। सबसे पहले तो देखिए आपकी एप्लीकेशन
- 9:49:05रन हो रही है एक कंटेनर में। ठीक है?
- 9:49:07कंटेनर में कौन से पोर्ट पे रन हो रही
- 9:49:09होगी? ये कंटेनर में रन हो रही होगी यह
- 9:49:12880 पोर्ट पे। ठीक है? तो पोर्ट है एटी80।
- 9:49:15तो एटी80 पोर्ट पर आपकी एप्लीकेशन विद इन
- 9:49:18दी कंटेनर रन हो रही है। अब आप लोकल मशीन
- 9:49:21से इसको एक्सेस करना चाहते हो ईटी80 क्या
- 9:49:24कर पाओगे? जी नहीं क्योंकि ये कंटेनर में
- 9:49:26रन हो रही है। आप एक्सेस नहीं कर पाओगे।
- 9:49:28ये एक हिसाब से अलग मशीन ही है उस वहां पर
- 9:49:31रन हो रही है। तो आपको कहना होगा आपको
- 9:49:33करना होगा पोर्ट मैपिंग। पोर्ट मैपिंग का
- 9:49:35मतलब यह है कि आप डॉकर को यह बोल रहे हो
- 9:49:38कि मेरी लोकल मशीन पर जो 8080 पोर्ट है
- 9:49:41उसको मैप कर दो कंटेनर की 8080 पोर्ट से।
- 9:49:44तो 880 पोर्ट ऑन माय मशीन शुड बी मैप टू
- 9:49:47880 पोर्ट इनसाइड द कंटेनर। इतना आप बोल
- 9:49:50देते हो तो क्या होगा? सारी रिक्वेस्ट जो
- 9:49:51यहां से आएगी वह जाएगी कंटेनर के अंदर
- 9:49:54पोर्ट 880 पर। ठीक है? और वही हमने यहां
- 9:49:58पर मेंशन किया है। यह एटी80 जो है यह
- 9:50:00होस्ट का पोर्ट है। और यह वाला एटी80 विद
- 9:50:03इन द कंटेनर है। आप चाहो तो दूसरे पोर्ट
- 9:50:05पे भी इसको मैप कर सकते हो। और इसको एंटर
- 9:50:07दबा दीजिए। एंटर दबा देंगे। तो अच्छा यह आ
- 9:50:10गई कुछ एरर। अननोन सोर्स अननोन सोर्स।
- 9:50:14अच्छा, यह क्या हो गया? अनसपोर्टेड क्लास
- 9:50:17वर्शन एरर। अच्छा, एरर अब यह आई है कि
- 9:50:20क्लास फाइल वर्जन है 69 और जो वर्जनंस
- 9:50:24हमने लिए हैं वो है 65। अच्छा, मुझे एरर
- 9:50:27समझ में आ गई है। तो देखिए यहां पर
- 9:50:28एप्लीकेशन को हम कंपाइल कर रहे हैं। ऊपर
- 9:50:31अगर आप आते हो एप्लीकेशन को कंपाइल कर रहे
- 9:50:33हो आप java 25 वर्जन के अगेंस्ट। ठीक है?
- 9:50:36और कंटेनर में रन कर रहे हो आप जावा वर्जन
- 9:50:4021 के अगेंस्ट। यह तो गलत बात हो गई ना।
- 9:50:43गलत बात तो है ही ऑफ कोर्स। तो यहां पर आ
- 9:50:45जाएंगे। हम क्या करेंगे? अ 25 की कोई इमेज
- 9:50:49है तो वो ले लेंगे यहां पर। एक हिसाब से
- 9:50:53GDK नैनो सर्वर ही ले लेते हैं। GDK hfन
- 9:50:56नैनो सर्वर। ठीक है? 25 से कोई इमेज यहां
- 9:50:58पर दिख नहीं रही है। तो इस पर क्लिक करता
- 9:51:00हूं नैनो सर्वर।
- 9:51:03यह वाली जो इमेज है शायद इसको यूज कर सकते
- 9:51:05हैं या पता नहीं। एक काम करता हूं मैं
- 9:51:07यहां पर एक ट्राई कर लेता हूं। इसको है ना
- 9:51:0921 जेआर के बजाय 25 जेआर ही करके देखता
- 9:51:11हूं। ठीक है? और यहां पर आता हूं और फिर
- 9:51:14से हम इमेज को बिल्ड करेंगे इस तरीके से।
- 9:51:17ठीक है? देखता हूं यह इसको पुल कर पाता है
- 9:51:19या नहीं या एरर देता है।
- 9:51:22ठीक है? पुल तो इसने कर लिया है। कुछ एरर
- 9:51:24तो अभी तक आया ही नहीं है। तो आई थिंक कोई
- 9:51:27दिक्कत वैसे होनी नहीं चाहिए। ठीक है?
- 9:51:30पूरा का पूरा पुल हो गया। ठीक है? इमेज भी
- 9:51:33बन चुकी है। अब मैं इसको रन करता हूं। रन
- 9:51:35करके देखते हैं रन होता है या नहीं। अच्छा
- 9:51:37देखिए एप्लीकेशन रन होने तो लग गई लेकिन
- 9:51:40दिक्कत यह है कि आपकी जो ईएनवी वेरिएबल्स
- 9:51:45हैं वो यहां पर प्रोवाइडेड नहीं है। है
- 9:51:48प्रोवाइडेड? जी नहीं प्रोवाइडेड नहीं है।
- 9:51:50तो मैं क्या करूंगा? मैं ये ईएनवी फाइल्स
- 9:51:52को प्रोवाइड करूंगा। तो प्रोवाइड करने के
- 9:51:54लिए मैं यहां पर यह जो मेरी वैल्यूज़ है
- 9:51:56इसको कॉपी कर लूंगा। ठीक है? और यहां पर आ
- 9:52:00जाऊंगा। ठीक है? इस तरीके से और यहां पर
- 9:52:06मैं रन करूंगा। यहां पर आ जाऊंगा ऐसे। और
- 9:52:10डॉकर रन मैं कहूंगा हफन पी एटी80 कोलन
- 9:52:158080 इस तरीके से और फिर यहां पर लिखूंगा
- 9:52:19हफन ई। ठीक है? हफन ई से आप क्या कर सकते
- 9:52:22हो? एनवायरमेंट वेरिएबल्स पास कर सकते हो
- 9:52:24रन टाइम पर। ठीक है? तो यहां से मैं ये
- 9:52:27सारे जो वेरिएबल्स हैं इसको पास करूंगा इस
- 9:52:29तरीके से
- 9:52:32ऐसे। ठीक है?
- 9:52:38ऐसे अच्छा तो ये एक ही लाइन में पूरा का
- 9:52:42पूरा मैं लिखते जा रहा हूं। ठीक है? तो
- 9:52:44देखिए ये कमांड हमने रन किया था। ठीक है?
- 9:52:48अच्छा इमेज के नाम तो मैंने लिख लिखा ही
- 9:52:50नहीं है इमेज का नाम। तो फिटनेस
- 9:52:52मोनोलिथ
- 9:52:54ऐसे ठीक है देखिए यह कमांड हमने रन किया
- 9:52:58था फिट डॉकर रन हफन बी एटी 80 कोलन 8080
- 9:53:02और हमने इमेज का नाम दिया था पहले अब मैं
- 9:53:04क्या कर रहा हूं hन ई से ये एक दो और
- 9:53:09तीसरा तीन एनवायरमेंट वेरिएबल्स पास कर
- 9:53:11रहा हूं इस कंटेनर में रन रन टाइम पर ठीक
- 9:53:13है तो यहां पर आ जाएंगे इसको कर देंगे
- 9:53:16क्लियर और फिर यहां पर इसको पास कर देंगे
- 9:53:19अच्छा यह क्या हो यहां पर अब ये बोल रहा
- 9:53:21है इनवैलिड रेफरेंस डीबी यूजर अ इज़ इक्वल
- 9:53:26टू रूट अच्छा सॉरी गलती हो गई मेरे से एक
- 9:53:29और तो देखिए ये मैंने हफन ई से एक
- 9:53:32एनवायरमेंट वेरिएबल पास किया है यहां पर
- 9:53:34हफन ई से और एनवायरमेंट वेरिएबल पास
- 9:53:36करूंगा मैं हफन ई और फिर यहां पर हफन ई
- 9:53:40ठीक है मैं बता देता हूं यहां पर लिख के
- 9:53:42आपको तो देखिए हफन ई से एक एनवायरमेंट
- 9:53:44वेरिएबल पास किया फिर ये हफन ई से डीबी
- 9:53:48यूजर और फिर हफन ई से डीबी पास पासवर्ड तो
- 9:53:50देखिए डीबी यूआरएल के आगे हफाई नहीं लगा
- 9:53:52है। डीबी यूजर के आगे हफाई नहीं लगा है और
- 9:53:55पासवर्ड के पहले हफाई नहीं लगा है। ठीक
- 9:53:57है? हफाई नहीं सबके आगे लगा है। तो ऐसा
- 9:53:59करके मैं एंटर कर देता हूं। और एंटर करने
- 9:54:02पर आई थिंक एप्लीकेशन चल जानी चाहिए। कोई
- 9:54:05दिक्कत वैसे होनी नहीं चाहिए। देखिए
- 9:54:07एप्लीकेशन चल रही है। अच्छा एप्लीकेशन तो
- 9:54:10चल गई। लेकिन दिक्कत क्या हुई है? यह
- 9:54:14डेटाबेस को नहीं कनेक्ट कर पा रहा है। ठीक
- 9:54:17है? यह डेटाबेस को नहीं कनेक्ट कर पा रहा
- 9:54:20है इन माय ओपिनियन।
- 9:54:28ठीक है दोस्तों? ये अभी भी डेटाबेस को
- 9:54:30कनेक्ट नहीं कर पा रहा। और इसका रीज़न मैं
- 9:54:32समझ चुका हूं। रीज़न ये है कि यहां पर हमने
- 9:54:34लिखा है। देखिए डेटाबेस का एड्रेस हमने
- 9:54:36लिखा है लोकल होस्ट। करेक्ट? लोकल होस्ट
- 9:54:393306। लेकिन एक्चुअली लोकल होस्ट का मतलब
- 9:54:42होता है लोकल होस्ट का मतलब कंटेनर के
- 9:54:44अंदर क्या होगा विद इन द कंटेनर लोकल
- 9:54:46होस्ट राइट विद इन द कंटेनर लोकल होस्ट
- 9:54:48में वो रन हो रहा है क्या माय सीक्वल तो
- 9:54:51देखिए लोकल होस्ट का मतलब है इनसाइड द
- 9:54:54कंटेनर तो इसका मतलब माय सीक्वल यहां पे
- 9:54:56रन हो रहा है कंटेनर के अंदर करेक्ट है ये
- 9:54:59जी नहीं माय सीक्वल रन हो रहा है यहां पर
- 9:55:02बाहर मेरे लोकल मशीन पर रन हो रहा है
- 9:55:04आउटसाइड द कंटेनर तो लोकल होस्ट काम नहीं
- 9:55:06करेगा यहां पर तो आपको एक छोटा सा
- 9:55:07मॉडिफिकेशन करना होगा यहां पर रन करते
- 9:55:10वक्त आपको पास करना होगा h होस्ट डॉट डॉकर
- 9:55:12डॉट इंटरनल इसका मतलब हो गया जो मशीन लोकल
- 9:55:15होस्ट वाली मशीन जहां पर डॉकर रन हो रहा
- 9:55:18है तो मैंने ये लिख दिया है और फिर से मैं
- 9:55:20इसको रन करता हूं एक बार देखते हैं एक चेक
- 9:55:23करके कि रन होता है या नहीं ये एप्लीकेशन
- 9:55:26रन तो आइडियली होनी चाहिए अब कोई दिक्कत
- 9:55:28नहीं आनी चाहिए ठीक है देखिए एप्लीकेशन रन
- 9:55:30हो गई कैसा फील हो रहा है मुझे तो बहुत
- 9:55:32बढ़िया फील हो रहा है ठीक है काफी एरर्स
- 9:55:34आए बट हमने सब कुछ पार पार कर लिया ठीक है
- 9:55:38अब आप चाहो तो यहां पर आ सकते हो पोस्टमैन
- 9:55:41पर और इसी तरीके से आप क्वेरी कर सकते हो।
- 9:55:43देखिए अच्छा रुकिए यहां पर मैं एक यूनिक
- 9:55:47यूजर क्रिएट करूंगा। देखिए ये यूजर भी
- 9:55:49क्रिएट हो गया। यह यूजर क्रिएट हो गया। तो
- 9:55:50पहले एरर आई थी क्योंकि उस ईमेल से यूजर
- 9:55:54ऑलरेडी एकिस्टिंग था और एरर भी आपको सारी
- 9:55:56की सारी यहां पर दिखाई देगी। देखिए एरर
- 9:55:59लॉग सब कुछ यहां पर दिखाई देगी। यहां पर
- 9:56:02आपको कंसोल पर। ठीक है? अगर आप एरर नहीं
- 9:56:04देखना चाहते। देखिए अगर मैं कंसोल को बंद
- 9:56:06करता हूं। लाइक मैं कंट्रोल C प्रेस करता
- 9:56:08हूं। तो एप्लीकेशन शटडाउन हो गया। अगर मैं
- 9:56:10नहीं चाहता कि यहां पर अ शटडाउन हो तो
- 9:56:13मुझे इसे डिटचै मोड में रन करना होगा। तो
- 9:56:15डिटच मोड के लिए मैं यहां पर रन करूंगा
- 9:56:17हफन डी ऐसे हफन डी। हफन डी का मतलब है
- 9:56:21डिटैच मोड। ठीक है? तो डिटैच मोड में क्या
- 9:56:23है? ये कंटेनर पे मैं ये सॉरी कंटेनर नहीं
- 9:56:25ये टर्मिनल पे मैं और भी दूसरे कमांड चला
- 9:56:28सकता हूं। और ये टर्मिनल ब्लॉक नहीं
- 9:56:29रहेगा। मुझे सारे लॉग्स नहीं दिखाएगा।
- 9:56:31यहां पर कंटेनर की आईडी आ गई। और कंटेनर
- 9:56:34मुझे चेक करना है तो मैं यहां पर आ सकता
- 9:56:35हूं। और यहां पर डॉकर डेस्कटॉप इंस्टॉल्ड
- 9:56:37है। डॉकर डेस्कटॉप में आप यहां पर आते हो
- 9:56:39तो देखिए यह कंटेनर। अच्छा काफी सारे बार
- 9:56:43मैंने एप्लीकेशन चलाई वो चली नहीं क्योंकि
- 9:56:45एरर आ रही थी। तो ये सारा मैं डिलीट कर
- 9:56:47देता हूं। इसको सेलेक्ट करके डिलीट इससे
- 9:56:49स्पेस सेव होता है। और ये वाली कंटेनर चल
- 9:56:52रही है। आप देख पा रहे हो यहां पर। ठीक
- 9:56:53है? यहां पर अगर क्लिक करते हो तो आपको
- 9:56:55यहां पर लॉक्स भी दिखाई देंगे। ठीक है?
- 9:56:56अगर मैं एक यूजर क्रिएट करता हूं तो यहां
- 9:56:58पर एक रैंडम मैं आई नंबर डाल के एक ईमेल
- 9:57:01से क्रिएट करता हूं यूजर। तो देखिए यूजर
- 9:57:03भी क्रिएट हो गया। और यहां पर आपको लॉक्स
- 9:57:05भी दिखाई देंगे। देखिए तो आपकी एप्लीकेशन
- 9:57:08कहां रन हो रही है? डॉकर कंटेनर में। डॉकर
- 9:57:11के अंदर रन हो रही है। आपने क्या किया है?
- 9:57:13आपने कंटेनराइज़ किया है पूरी की पूरी
- 9:57:14एप्लीकेशन को। ठीक है? तो यहां पर विद इन
- 9:57:18कंटेनर आपकी ऐप रन हो रही है। ठीक है? अ
- 9:57:21ये माय ऐप है। माय ऐप। ठीक है? और ये माय
- 9:57:26सीक्वल यहां पर नहीं है। ये माय सीक्वल
- 9:57:28यहां पर कनेक्ट कर रहा है उसको अभी
- 9:57:30फिलहाल। ठीक है? और यहां पर पोर्ट 880 पे
- 9:57:34अगर लोकल हो उस पे कोई भी रिक्वेस्ट आती
- 9:57:35है तो वो मैप्ड है कंटेनर के पोर्ट 880
- 9:57:38पर। ठीक है? तो उम्मीद करता हूं यह
- 9:57:41हेल्पफुल रहा और यहां पर आप देख पा रहे हो
- 9:57:44सारे के सारे लॉक्स। ठीक है? बढ़िया सी
- 9:57:46फीलिंग है ये। अब देखिए मैं क्या चाहता
- 9:57:48हूं? मैं चाहता हूं कि मेरी जो एप्लीकेशन
- 9:57:50है ना मेरी जो एप्लीकेशन मैं उसे डॉकर hub
- 9:57:54पर भी पब्लिश करूं। ठीक है? तो सबसे पहले
- 9:57:56तो आपको क्या करना होगा? Docker hub पर
- 9:57:58आकर साइन अप करना होगा। तो देखिए मैंने
- 9:58:00डॉकर hub पर एक अकाउंट बना लिया है और
- 9:58:02यहां पर ना सबसेेंट चीज है आपका यूजरनेम
- 9:58:05तो डी कोड7
- 9:58:07अ ठीक है
- 9:58:10डी कोड7 ये मेरा यूजरनेम है एक हिसाब से
- 9:58:14ठीक है ये यूजरनेम को ध्यान में रखना है
- 9:58:16क्योंकि पुश करने के लिए आपको डॉकर इमेज
- 9:58:18को यूजरनेम से टैग करना होगा और फिर पुश
- 9:58:20करना होगा। ठीक है? तो वो भी मैं प्रोसेस
- 9:58:22आपको बता देता हूं। सो फिर से मैं आ
- 9:58:24जाऊंगा यहां पर। ये कमांड तो आपको उम्मीद
- 9:58:26करता हूं समझ गया। थोड़ा कॉम्प्लेक्स सा
- 9:58:27दिखता है कमांड लेकिन आपने रन किया है
- 9:58:29डॉकर रन और फिर पहले पोर्ट मैप किया है।
- 9:58:32फिर पहला एनवायरमेंट वेरिएबल पास किया
- 9:58:34आपने जो कि यहां तक है। ठीक है? ये पूरी
- 9:58:37चीज। फिर आपने दूसरा एनवायरमेंट वेरिएबल
- 9:58:39पास किया है जो कि यहां तक है। ठीक है? और
- 9:58:42इसको अगर मैं फॉर्मेट कर दूं सही से तो ये
- 9:58:44ऐसे आपने पास किया है। देखिए ऐसे ये अब
- 9:58:48आपको क्लियरली दिखेगा। ठीक है? ऐसे आपने
- 9:58:50पास किया हुआ है। ठीक है? इसको रन भी कर
- 9:58:52सकता हूं। ऐसे कॉपी करके यह रन हो जाएगा।
- 9:58:54अगर मैं एक और इंस्टेंस रन करना चाहता
- 9:58:56हूं। हूं 8081 पे सेम एप्लीकेशन का। तो
- 9:58:58देखिए मैंने लोकल होस्ट पर पोर्ट मैपिंग
- 9:59:01881 कर दी है और इसको कॉपी कर देता हूं।
- 9:59:04यहां पर आ जाता हूं। यहां पर पेस्ट अच्छा
- 9:59:05पेस्ट नहीं कर पाऊंगा क्योंकि मैंने एंटर
- 9:59:07दबा दिया यहां पर। ठीक है? एंटर दबाने के
- 9:59:10लिए आपको शायद बैकवर्ड स्लैश ऐड करना
- 9:59:12जरूरी है। यहां पर ऐसे कुछ है शायद
- 9:59:14बैकवर्ड स्लैश
- 9:59:16बैकवर्ड स्लैश एक बार मैं ट्राई करता हूं
- 9:59:18बैकवर्ड स्लैश से। लेकिन अगर नहीं होता है
- 9:59:20तो मैं इस पर ज्यादा टाइम स्पेंड नहीं
- 9:59:22करूंगा।
- 9:59:23अच्छा नहीं हो रहा है। तो A के हिसाब से
- 9:59:25मैं इसको कंट्रोल सेट कर देता हूं। ठीक
- 9:59:28है? और इसको मैं कॉपी कर लेता हूं और इसको
- 9:59:32कंट्रोल सेट कर देता हूं। ठीक है? तो ये
- 9:59:33एक लाइन में आ गया एक हिसाब से। और ये
- 9:59:36इसका फॉर्मेटेड वर्जन है। अगर आपको देखना
- 9:59:38हो तो हमने क्या किया। ठीक है? तो आप इसका
- 9:59:40एक और इंस्टेंस भी रन कर सकते हो। मैं एक
- 9:59:42और इंस्टेंस भी रन करके ये वर्जन मैं आपको
- 9:59:44दिखा देता हूं। 881 और यहां पर मैं हफन पी
- 9:59:47के साथ डालूंगा। अच्छा हफन पी के पहले
- 9:59:49डालूंगा हफन डी डिटैच मोड में रन करना
- 9:59:52चाहता हूं। ठीक है? तो इसको कॉपी कर लिया
- 9:59:54मैंने और यहां पर आऊंगा और अच्छा सॉरी
- 9:59:58क्लियर कर दूंगा और यहां पर ऐसे रन कर
- 10:00:00दूंगा। तो देखिए यह दूसरा कंटेनर रन हो
- 10:00:01गया जो कि रन हो रहा है पोर्ट 8081 और
- 10:00:04इसको आप देख सकते हो यहां पर देखिए बैक
- 10:00:07जाता हूं। यह देखिए यह रन हो रहा है 881।
- 10:00:09यहां पर आपको दिखेगा अभी देखिए 8080 पर
- 10:00:12मैप्ड है। ये 8081 पर मैप्ड है। तो दो
- 10:00:15इंस्टेंस रन हो रहे हैं स्प्रिंग बूट
- 10:00:17एप्लीकेशन के। आप 10 इंस्टेंस रन कर सकते
- 10:00:19हो। यहां से स्टार्ट स्टॉप सब कुछ कर सकते
- 10:00:22हो कंटेनर्स को। ठीक है? उम्मीद करता हूं
- 10:00:24यह क्लियर रहा। अब मैं आपको टैगिंग कैसे
- 10:00:26करना है वह मैं बता देता हूं। ठीक है? तो
- 10:00:28देखिए टैगिंग करने के लिए सबसे पहले तो
- 10:00:30देखिए पुश करना है इमेज हमें। हमें पुश
- 10:00:33करना है इमेज यहां पर डॉकर hub पर। ठीक
- 10:00:36है? तो ये डॉकर hub है और यहां पर यह मेरा
- 10:00:39यूजरनेम है। डीकॉड7 ये मेरा डमी यूजरनेम
- 10:00:42है कोर्सर्सेस के लिए। ठीक है? इस यूजरनेम
- 10:00:44पर आके देखना नहीं क्या-क्या है। ठीक है?
- 10:00:46तो क्लियर कर लेता हूं। सबसे पहले आपको
- 10:00:47टैग करना होगा उस यूजरनेम से। तो मैं क्या
- 10:00:49करूंगा? डॉकर टैग और फिर मैं लोकल इमेज का
- 10:00:53नाम लिखूंगा फिटनेस मोनोलिथ ऐसे लिखूंगा।
- 10:00:57ठीक है? और फिर मैं कहूंगा डी कोड 07
- 10:01:02और आप आपको रेपोज़िटरी का अगर नाम देना है
- 10:01:04तो वो दीजिए। तो मैं फिटनेस मोनो लिख
- 10:01:06दूंगा। ठीक है? और कोलन लेटेस्ट ऐसे लिख
- 10:01:10दीजिए। तो डॉकर टैग फिटनेस मोनोलिथ और
- 10:01:13आपका यूजरनेम और जो भी रेपोज़िटरी का नाम
- 10:01:15आप चाहते हो डॉकर अप पे वो और यह एक टैग
- 10:01:17जो कि लेटेस्ट वर्जन है। लेटेस्ट नहीं
- 10:01:19लिखोगे तो बाय डिफ़ॉल्ट लेटेस्ट ही होता है
- 10:01:21ये। ऐसा करके एंटर कर दीजिए। ठीक है? और
- 10:01:24फिर आपको कहना है डॉकर लॉग इन। डॉकर लॉग
- 10:01:27इन करना है। डॉकर लॉग इन आप करोगे तो आपको
- 10:01:30यह ब्राउज़र में लेके जाएगा ऑथेंटिकेशन के
- 10:01:31लिए। तो मैं ऑलरेडी ऑथेंटिकेटेड हूं। तो
- 10:01:34मैं लॉग इन करूंगा यहां पर। तो देखिए यह
- 10:01:36ब्राउज़र में आपको लेके जाएगा। मेरा लॉग इन
- 10:01:38सक्सीडेड है क्योंकि
- 10:01:41देखिए डिकोड 007 से मैं ऑलरेडी लॉक्ड इन
- 10:01:44हूं करेक्ट और ऑथेंटिकेटिंग विद
- 10:01:45एक्सिस्टिंग क्रेडेंशियल्स क्यों करना है
- 10:01:47ये क्योंकि आप पुश करना चाहते हो इमेज
- 10:01:49डॉकर hub पे ठीक है इतना करने के बाद आप
- 10:01:52क्या करोगे आप इसे कहोगे डॉकर पुश और फिर
- 10:01:55कहोगे डिकोड 07
- 10:02:02फिटनेस मोनो
- 10:02:05ऐसे ठीक है और आप इसको एंटर एंटर कर
- 10:02:07दूंगा। एंटर करोगे तो देखिए पुश हो रहा
- 10:02:09है। कहां पुश हो रहा है? डॉकरio डीcड007
- 10:02:12फिटनेस मोनो। सिंपल सा प्रोसेस है। ये एक
- 10:02:15हिसाब से आप गेट रिपॉज़िटरी पर कोड पुश
- 10:02:17करते हो ना ये वैसा ही प्रोसेस है। ठीक
- 10:02:19है? सिंपल है। देखिए ये थोड़ा टाइम लेगा
- 10:02:22डिपेंडिंग ऑन द इंटरनेट कनेक्शन स्पीड और
- 10:02:24कितनी बड़ी इमेज वगैरह आपने बनाई है। इमेज
- 10:02:26ज्यादा बड़ी है तो थोड़ा टाइम लेगा। लेकिन
- 10:02:28ये इतना टाइम नहीं लेता है। अगर इंटरनेट
- 10:02:30स्पीड अच्छी है तो। ये देखिए पुश हो गया।
- 10:02:32यहां पर आ जाइए। यहां पर एक हिसाब से
- 10:02:34रिफ्रेश कर लीजिए। रिफ्रेश आप करते हो
- 10:02:37यहां पर लास्ट पोस्ट देखिए इमेज तो यह
- 10:02:39देखिए फिटनेस मोनो आ गई यहां पर ठीक है
- 10:02:41फिटनेस मोनो मैंने अभी बनाई है लास्ट
- 10:02:43पोस्ट लेस दैन अ मिनट एगो यहां पर
- 10:02:45डिस्क्रिप्शन ऐड कर दीजिए कैटेगरी ऐड कर
- 10:02:47दीजिए पब्लिक इमेज है ये देखिए पब्लिक तो
- 10:02:49हर कोई इसको पुल कर कर अपने मशीन पर रन कर
- 10:02:52सकता है ठीक है आप अपने दोस्त के साथ ये
- 10:02:54एप्लीकेशन शेयर कर सकते हो और आपके दोस्त
- 10:02:57लोग को यहां पर थोड़ी डिस्क्रिप्शन में
- 10:02:58डाल दीजिए रिपॉजिटरी ओवरव्यू में डाल
- 10:03:00दीजिए ओवरव्यू के कैसे रन करना है
- 10:03:02क्या-क्या एनवायरमेंट वेरिएबल्स पास करने
- 10:03:03हैं जैसे कि एक कमांड
- 10:03:05यह वाला कमांड इसको दे दीजिए कि यह
- 10:03:07एनवायरमेंट वेरिएबल्स पास करने हैं। आपके
- 10:03:09पास डेटाबेस होना चाहिए और यूजर पास करना
- 10:03:12है और पासवर्ड पास करना है। बस इतना आप
- 10:03:14पास कर दीजिए। ठीक है? ये तो इमेज का नाम
- 10:03:16है। ठीक है? इतना आप पास कर दीजिए तो
- 10:03:18चीजें चल जाएगी। और कोई भी रन कर सकता है
- 10:03:20अपने। उसके सिस्टम पर जावा हो या ना हो।
- 10:03:23ठीक है? इससे कोई मतलब नहीं पड़ता। उसके
- 10:03:26सिस्टम पर जावा हो या ना हो इससे कोई मतलब
- 10:03:29नहीं पड़ता। क्यों नहीं पड़ता? क्योंकि हम
- 10:03:30इंटर यूज कर रहे हैं कंटेनर्स का और डॉकर
- 10:03:34का इस्तेमाल कर रहे हैं। तो देखिए अंदर
- 10:03:36उसको वैसे भी ये इमेज ये jवा का वर्जन
- 10:03:39कंटेनर के अंदर वैसे भी होने वाला है। अगर
- 10:03:42और कुछ चाहिए आपको लाइक माय सीक्वल भी
- 10:03:44इसके अंदर डालना है तो आप डाल सकते हो।
- 10:03:45Mys सीक्वल की पब्लिक इमेजज़ है बाय द वे।
- 10:03:47तो देखिए आप Mysquel की यहां पर पब्लिक
- 10:03:50इमेजज़ आपको मिलेगी। आप यहां पर आके Mys
- 10:03:53सीक्वल सर्च अगर करो तो आपको देखिए Mys
- 10:03:55सीक्वल की ऑफिशियल इमेज मिलेगी। आप इसको
- 10:03:57पुल करके रन कर सकते हो। लोकली इसको ले
- 10:03:59सकते हो और फिर इसको रन कर सकते हो। लोकली
- 10:04:02आपको अपने मशीन पर सॉफ्टवेयर डालने की भी
- 10:04:04जरूरत नहीं है। अगर डॉकर डेस्कटॉप है तो
- 10:04:05आप यह सारी चीजें कर सकते हो। है ना
- 10:04:07पावरफुल टेक्नोलॉजी मुझे बताइए कितनी
- 10:04:09पावरफुल लगी आपको और मजा आया या नहीं।
- 10:04:17तो दोस्तों देखिए बात करते हैं स्प्रिंग
- 10:04:19बूट एप्लीकेशन को डिप्लॉय करने के बारे
- 10:04:21में। और मैं आपको डिप्लॉयमेंट सिखाने वाला
- 10:04:23हूं। वो भी आपको बताऊंगा कि डिप्लॉयमेंट
- 10:04:26आपको कैसे फ्री में करनी है। ठीक है? तो
- 10:04:29ये जो पूरा प्रोसेस है ना ये आपको सिर्फ
- 10:04:32कोई एक प्रोजेक्ट के लिए हेल्पफुल नहीं
- 10:04:33रहेगा। यह आपको लाइफ लॉन्ग हेल्पफुल
- 10:04:35रहेगा। क्योंकि देखिए अगर आप कोई अपने
- 10:04:38रे्यूे के लिए प्रोजेक्ट बनाते हो तो
- 10:04:39जनरली रिक्रूटर्स को यूआरएल भेजना सही
- 10:04:41रहता है। आप ईमेल पर लिख सकते हो। दिस इज़
- 10:04:43माय प्रोजेक्ट जो मैंने बनाया है और सीधा
- 10:04:47वो यूआरएल पे क्लिक करते हैं और आपका
- 10:04:48प्रोजेक्ट डायरेक्टली एक्सपीरियंस करता
- 10:04:49है। करेक्ट? तो यूआरएल भेजना काफी बढ़िया
- 10:04:53चीज होती है और अक्सर लोग चाहते हैं कि
- 10:04:55मैं मेरा प्रोजेक्ट क्लाउड में डिप्लॉय
- 10:04:57कैसे रहूं। लेकिन क्या है क्लाउड में
- 10:04:59डिप्लॉय करने के चार्जेस होते हैं। तो मैं
- 10:05:00आपको फ्री चीजें बताऊंगा। ठीक है? तो
- 10:05:02देखिए आपके एप्लीकेशन को चाहिए होता है
- 10:05:05सबसे पहले तो एक बैक एंड सर्वर। ठीक है?
- 10:05:07और चाहिए होता है एक अ डेटाबेस। ठीक है?
- 10:05:11मैं एक बैक एंड एप्लीकेशन की बात कर रहा
- 10:05:13हूं। ठीक है? डेटाबेस और यहां पर रहेगा
- 10:05:16बैक एंड।
- 10:05:18ठीक है? तो देखिए हम डेटाबेस के लिए और
- 10:05:21बैक एंड के लिए दो अलग-अलग सर्विज यूज
- 10:05:24करने वाले हैं। तो हमारा एक डेटाबेस सर्वर
- 10:05:26होगा। देखिए करेंटली अभी क्या है? हमारे
- 10:05:28लोकल मशीन पर बैक एंड रन हो रहा है Tomcat
- 10:05:31पर। लोकल सर्वर है Tomcat. Tomcat आपने
- 10:05:34इंस्टॉल किया है? जी नहीं। स्प्रिंग बूट
- 10:05:36के साथ बाय डिफ़ॉल्ट मिलता है Tomcat।
- 10:05:38करेक्ट? और अगर आपको यकीन नहीं आ रहा है
- 10:05:40तो आप स्प्रिंगboot एप्लीकेशन रन करोगे तो
- 10:05:42कंट्रोल F करके logs में Tomcat सर्च कर
- 10:05:45लेना। ठीक है? यहां पर आ जाते हैं। यहां
- 10:05:47पर अ हमारी जो एप्लीकेशन है लोकली रन हो
- 10:05:50रही है माय सीक्वल पर या पॉज करें सीक्वल
- 10:05:52जो भी डेटाबेस है लोकली इंस्टॉल्ड है। तो
- 10:05:54ये हो गया बैक एंड सर्वर tomcat पर और यह
- 10:05:56हो गया डेटाबेस सर्वर जो कि है माय
- 10:05:59सीक्वल। ठीक है? और ये दोनों पोर्ट
- 10:06:01एक्सपोज करते हैं। तो बैक एंड एप्लीकेशन
- 10:06:02एक्सपोज़ करता है हमारे मशीन पर अ पोर्ट
- 10:06:05880। तो अगर मैं एंटर करूं पोर्ट 880
- 10:06:09ठीक है? सॉरी। तो यह बैक एंड एप्लीकेशन
- 10:06:12एक्सपोज करता है और माय सीक्वल एक्सपोज
- 10:06:14करता है कुछ 3306 करके ऐसा कुछ डिफॉल्ट
- 10:06:16पोर्ट है। अगर गलत लिख दिया वो 3306 नहीं
- 10:06:19है तो सॉरी उसके लिए लेकिन कुछ एक डिफॉल्ट
- 10:06:21पोर्ट है 3306 ही है शायद मुझे ध्यान नहीं
- 10:06:23है लेकिन कहीं तो एक्सपोज करते हो तो ये
- 10:06:25दो सर्वर एक्चुअली आइसोलेशन में रन करते
- 10:06:27हैं अपने मशीन पर और कम्युनिकेट करते हैं।
- 10:06:30अगर माय सीक्वल नहीं है आपके सिस्टम पर
- 10:06:32पॉजग्रेस सीक्वल होगा। उसका भी एक पोर्ट
- 10:06:34होता है। ठीक है? लेकिन जब आप क्लाउड की
- 10:06:36तरफ जाते हो। ठीक है? तो आपको चाहिए होता
- 10:06:38है एक बैक एंड सर्विस और एक डेटाबेस
- 10:06:39सर्विस। तो बैक एंड के लिए एक बढ़िया सी
- 10:06:42सर्विस जो मैंने ढूंढी है जो एक बढ़िया सा
- 10:06:43फ्री टियर भी देती है वो है रेंडर। ठीक
- 10:06:46है? रेंडर करके रेंडर क्लाउड कहा जाता है
- 10:06:48इसे। और डेटाबेस के लिए हम इस्तेमाल
- 10:06:51करेंगे अ नियon डीबी का। नियन डीबी। तो
- 10:06:56नियन डीबी क्या करता है? पॉज ग्रेस सीक्वल
- 10:06:58का एक इंस्टेंस क्लाउड में प्रोवाइड करता
- 10:06:59है। पॉजग्र सीक्वल का एक इंस्टेंस क्लाउड
- 10:07:02में और रेंडर एक क्लाउड होस्टिंग
- 10:07:05प्लेटफार्म है जहां पर आप एप्लीकेशनेशंस
- 10:07:06को डिप्लॉय कर सकते हो और आप डॉकर इमेजज़
- 10:07:10को भी डिप्लॉय कर सकते हो। ठीक है? और
- 10:07:12इनका एक जनरस फ्री टियर है। तो उनके बारे
- 10:07:15में भी हम बात करेंगे। लेकिन इस तरीके से
- 10:07:16एप्लीकेशन जो है हमारी वर्क करेगी क्लाउड
- 10:07:19में। ठीक है? उम्मीद करता हूं इतना क्लियर
- 10:07:22है आपको। ठीक है? यह हो चुका है। अब Non
- 10:07:24DB के बारे में बात करते हैं सबसे पहले।
- 10:07:26ठीक है? Non DB तो यहां पर अगर आप Non DB
- 10:07:29सर्च करते हो तो Non.com पर आपको दिखाई
- 10:07:31देगा Non DB यह है PSG सीक्वल का इंस्टेंस
- 10:07:33इन द क्लाउड। ठीक है? आप जा सकते हो
- 10:07:36प्राइिंग पर। प्राइसिंग पर आप देखोगे ये
- 10:07:39फ्री जनरलिस्ट फ्री डियर है। मैंने काफी
- 10:07:41प्रोजेक्ट्स में इनको इसको यूज़ किया हुआ
- 10:07:42है। काफी बढ़िया तरीके से मेरे प्रोजेक्ट्स
- 10:07:45चल रहे हैं प्रोडक्शन में। लेकिन इनकी
- 10:07:46प्रोडक्शन की लिमिटेशंस है थोड़ी जो कि अ
- 10:07:50लाजमी है। ठीक है? लेकिन अगर आपको यह
- 10:07:52सर्विस बढ़िया लगती है तो आप इसको अपग्रेड
- 10:07:54भी कर सकते हो। ठीक है? काफी फ्लेक्सिबल
- 10:07:56सर्विस है। मैं अभी तक तो फ्री डियर ही
- 10:07:57इस्तेमाल कर रहा हूं और मैं आपको फ्री
- 10:07:58डियर इस्तेमाल करना सिखाऊंगा। इसमें फटाक
- 10:08:01से आप लोग क्या कीजिए? यहां पर एक फ्री
- 10:08:03अकाउंट क्रिएट कर लीजिए। इस तरीके से
- 10:08:05डैशबोर्ड पे आओगे तो कुछ ऐसा दिखेगा आपको।
- 10:08:07ठीक है? और यहां पर आपको आना है अ
- 10:08:11डैशबोर्ड पर। कनेक्ट टू द डेटाबेस है। ठीक
- 10:08:14है? यहां पर एक न्यू डेटाबेस का ऑप्शन
- 10:08:18दिखाई देना चाहिए। ठीक है? यहां पर टेबल्स
- 10:08:20है, सब कुछ है। ये ब्रांचेस है।
- 10:08:24डेट फेस का ऑप्शन यहां पर दिखाई नहीं दे
- 10:08:27रहा है मुझको। ठीक है? इन्होंने थोड़ा
- 10:08:29यूआई शायद चेंज किया हुआ है। तो यहां पर आ
- 10:08:31जाता हूं। नियन ऑथ मॉनिटरिंग ब्रांच। ठीक
- 10:08:35है? तो यहां पर ओवरव्यू में आना है। मैं
- 10:08:37थोड़ा सा लॉस्ट हो गया था। ओवरव्यू में
- 10:08:38आना है और यहां पर रोल्स एंड डेटाबेस का
- 10:08:40ऑप्शन है। यहां पर देख पा रहे हो आप।
- 10:08:41रोल्स एंड डेटाबेस। तो यहां पर आप एक नया
- 10:08:44डेटाबेस बना सकते हो। ठीक है? ठीक है? तो
- 10:08:45यहां पर देखिए एक प्रोडक्ट करके डेटाबेस
- 10:08:46मैंने ऑलरेडी बना रखा है। मैं क्रिएट करता
- 10:08:48हूं एक फिटनेस
- 10:08:51करके और ओनर इसका कौन होगा? आप लिख सकते
- 10:08:54हो। ठीक है? तो आप एक यूजर बना सकते हो
- 10:08:56यहां पर। ठीक है? और इसका ओनर वो यूजर
- 10:08:59होगा। ठीक है? तो इसको क्रिएट कर लीजिए।
- 10:09:02ठीक है? तो ये देखिए दो डेटाबेस हो चुके
- 10:09:03हैं अब। करेक्ट? और यहां पर आप तो ये सारी
- 10:09:08चीजें हो गई यहां पर। ठीक है? अब मैं क्या
- 10:09:10कर सकता हूं? यहां पर फिटनेस का मैंने जो
- 10:09:12डेटाबेस बनाया यहां पर आके अच्छा फिटनेस
- 10:09:15पे नहीं मुझे आना होगा डैशबोर्ड पर और
- 10:09:18यहां पर लिखना होगा कनेक्ट। ठीक है? तो अब
- 10:09:21मैं कौन से डेटाबेस को कनेक्ट करना चाहता
- 10:09:22हूं? तो मैं कनेक्ट करना चाहता हूं फिटनेस
- 10:09:25डेटाबेस को। तो ये जो पूरी कनेक्शन
- 10:09:26स्ट्रिंग है, ठीक है? ये डेटाबेस को
- 10:09:30कनेक्शन कनेक्ट करने की कनेक्शन स्ट्रिंग
- 10:09:32है। और इसको आप कॉपी कर सकते हो। ठीक है?
- 10:09:34कॉपी कर लोगे तो यह कॉपी हो गई। और इसमें
- 10:09:36देखिए प्रोडक्ट ओनर जो है यह मेरा यूजरनेम
- 10:09:38है और यहां पर जो स्टार में लिखा हुआ है
- 10:09:40यह है पासवर्ड। ठीक है? तो आपकी जो यहां
- 10:09:43पर ये है डीबी यूआरएल इसमें पूरी की पूरी
- 10:09:46कनेक्शन स्ट्रिंग आएंगी इस तरीके से और
- 10:09:48यूजर की जगह आएगा प्रोडक्ट ओनर मेरे लिए
- 10:09:51प्रोडक्ट ओनर है। प्रोडक्ट अंडरस्कोर ओनर
- 10:09:53और डीबी पासवर्ड में जो स्टार में लिखा
- 10:09:54हुआ है वो पासवर्ड आ जाएगा यहां पर उतना
- 10:09:57लिखना है आपको। ठीक है? तो ये हो गया।
- 10:09:58लेकिन ये यहां पर नहीं लिखना है आपको। ये
- 10:10:00तो डॉकर की कमांड्स है जो मैंने यहां पर
- 10:10:02लिखी हुई है। ठीक है? आपको ईएनवी में
- 10:10:04लिखना है। तो यहां पर अगर आप आते हो एडिट
- 10:10:07कॉन्फ़िगरेशन को करते हो यहां पर एडिट तो
- 10:10:10यहां पर यह जो ईएनवी है एप्लीकेशन की
- 10:10:11उसमें आपको लिखनी है। ठीक है? ये डेटाबेस
- 10:10:13की स्ट्रिंग्स हैं। तो ये एप्लीकेशन में
- 10:10:15यहां पर आपको सब्स्टट्यूट करना है। ठीक
- 10:10:17है? ये आप कर दोगे एक हिसाब से और आपको ये
- 10:10:21डायलग वगैरह भी चेंज करनी है। डिपेंडेंसी
- 10:10:23भी पॉजग्रेस की ऐड करनी पड़ेगी। हम उस पर
- 10:10:25आएंगे। लेकिन फिलहाल के लिए इसको कॉपी
- 10:10:27करके एक जगह पर स्टोर कर दीजिएगा और यह
- 10:10:28किसी के साथ शेयर नहीं कीजिएगा क्योंकि यह
- 10:10:30सेंसिटिव है और स्पेसिफिक टू यू है। ठीक
- 10:10:33है और ठीक है इतना तो हो चुका है और मैं
- 10:10:37क्या करूंगा मैं यहां पर आ जाता हूं ठीक
- 10:10:40है और यहां पर बात करते हैं तो यहां पर
- 10:10:41बात करने से पहले हम स्टार्ट डॉट
- 10:10:43स्प्रिंगio पर चले जाएंगे और हमें
- 10:10:46पॉजग्रेस की डिपेंडेंसी ऐड करनी है तो
- 10:10:48मैंने मेवन सेलेक्ट कर रखा है यहां पर आ
- 10:10:50जाता हूं और मैं पॉजग्रस सीक्वल को
- 10:10:53कॉन्फ़िगर करता हूं। पॉजग्रस सीक्वल को
- 10:10:55क्यों कॉन्फ़िगर कर रहे हैं हम? क्योंकि
- 10:10:56नियन डेटाबेस जो है वो पॉजगस पर काम करता
- 10:10:59है। इट्स अ पॉजग्रस सीक्वल डेटाबेस। माय
- 10:11:02सीक्वल काम नहीं करेगा। अगर आप माय सीक्वल
- 10:11:04का इस्तेमाल करके लोकल होस्ट से उसे
- 10:11:06कनेक्ट करने की कोशिश कर रहे हो तो वो
- 10:11:08नहीं काम करेगा। तो मैं क्या करूंगा? माय
- 10:11:09सीक्वल को कमेंट कर दूंगा और यहां पर आ
- 10:11:11जाऊंगा पॉजगिस की डिपेंडेंसी ऐड कर दूंगा
- 10:11:14और फिर यहां पर आ जाऊंगा एप्लीकेशन
- 10:11:16प्रॉपर्टीज में और इसको पूरी तरीके से
- 10:11:19कॉपी कर लूंगा और फिर पेस्ट कर दूंगा और
- 10:11:22फिर माय सीक्वल की जगह यहां पर पॉज सीक्वल
- 10:11:25का डायरेक्टली
- 10:11:28पॉज सीक्वल
- 10:11:31का डायलेक्ट ठीक है ऐसे लिख दूंगा तो यह
- 10:11:36पॉज सीक्वल का डायरेक्ट है और वह है अच्छा
- 10:11:39क्या हो गया पॉसिस सीक्वल
- 10:11:42पॉस्क सीक्वल डायलक्ट करेक्ट तो है करेक्ट
- 10:11:44है ठीक है ये डायरेक्ट करेक्ट है तो ये
- 10:11:47लिखना है और मैंने माय सीक्वल की जो
- 10:11:48कॉन्फ़िगरेशन है उसको मैंने हटाया नहीं है
- 10:11:50उसको ऐसे ही रखा है यह डायलक्ट को क्योंकि
- 10:11:52अगर मुझे स्विच करना पड़ा तो मैं कर सकता
- 10:11:54हूं डिपेंडेंसी को भी हटाया नहीं ठीक है
- 10:11:57अब मैं क्या कर सकता हूं मैं है ना इसको
- 10:11:59कॉपी कर लेता हूं यहां पर मेरी कनेक्शन
- 10:12:01स्ट्रिंग है। यह पूरी की पूरी ईएनवी। ठीक
- 10:12:04है? इसको कॉपी कर लेता हूं और यहां पर आ
- 10:12:06जाता हूं और इसको यहां पर पेस्ट करता हूं।
- 10:12:08तो देखिए आपको जो भी यूआरएल मिलेगी नियन
- 10:12:12के डैशबोर्ड से। ठीक है? तो मेरी देखिए
- 10:12:14यूआरएल ये है। ये आपको इस फॉर्मेट में
- 10:12:16मिलेगी। तो आपको मिलेगी पोस्टग सीक्वल
- 10:12:18लिखा हुआ यूजरनेम। ठीक है? पासवर्ड @
- 10:12:22होस्ट
- 10:12:24डेटाबेस और फिर ये आगे थोड़ी सी चीजें
- 10:12:27पैरामीटर्स मिलेंगे। ठीक है? अब यहां पे
- 10:12:29ये जो पूरी यूआरएल है इसको ऐसे के ऐसे ही
- 10:12:31पेस्ट नहीं करना है। जी हां मैंने कहा
- 10:12:32आपको पेस्ट करने के लिए लेकिन ऐसे के ऐसे
- 10:12:34पेस्ट नहीं करना है। ये जो यूआरएल है इसको
- 10:12:36फॉर्म करना है हमें। ठीक है? तो देखिए
- 10:12:39यहां पे ये जो यूआरएल है तो मैं इसको कॉपी
- 10:12:41कर लेता हूं एक हिसाब से। इसको इसके
- 10:12:43पैरेलल पेस्ट कर देता हूं। ठीक है? तो
- 10:12:45देखिए ये जो यूआरएल है ये हम एप्लीकेशन
- 10:12:47में इस्तेमाल कर रहे हैं। हमारी स्प्रिंग
- 10:12:49बूट एप्लीकेशन में। ठीक है? ये माय सीकल
- 10:12:52डेटाबेस के लिए थी और ये jडीबीसी से
- 10:12:53स्टार्ट हो रही है। तो ये वाली जो यूआरएल
- 10:12:55है ये jडीबीसी से स्टार्ट नहीं हो रही है।
- 10:12:57करेक्ट? तो हमें मेक श्योर करना है कि ये
- 10:13:00वाली जो यूआरएल है इसको हम अडॉप्ट करें इस
- 10:13:01फॉर्मेट में ताकि ये स्प्रिंग बूट के साथ
- 10:13:03काम कर पाए। ठीक है? तो देखिए सबसे पहले
- 10:13:05तो पॉजग्र सीक्वल का इस्तेमाल कर रहे हैं।
- 10:13:06तो यहां पर माय सीक्वल को रिप्लेस करके
- 10:13:08पॉजग सीक्वल कर दूंगा। होस्ट जो भी आपको
- 10:13:11यहां पर मिल रहा है @ के बाद में। ठीक है?
- 10:13:14विद डेटाबेस वो पूरा लेके आपको यहां पर
- 10:13:17पेस्ट कर देना है पूरा। क्योंकि यह होस्ट
- 10:13:19विद पोर्ट और डेटाबेस है। ऐसा। तो यहां पर
- 10:13:22अगर आप आते हो तो देखिए मेरा होस्ट है ईपी
- 10:13:25से लेके ईपी रेड चेरी से लेके सीधा-सीधा
- 10:13:28डेटाबेस तक। ये पूरा का पूरा मैं कॉपी
- 10:13:29करके वहां पे पेस्ट कर दूंगा। तो देख पा
- 10:13:32रहे हो मैंने पूरा का पूरा पेस्ट कर दिया।
- 10:13:33ये तो ये जो यूआरएल बनी है, अब ये
- 10:13:36स्प्रिंग बोट के साथ काम करेगी। तो थोड़ा
- 10:13:37फॉर्मेशन की जरूरत है। ठीक है? और इसको
- 10:13:40मैं यहां पर ऐसे रिप्लेस कर देता हूं। ठीक
- 10:13:41है? अभी डीबी यूजर ऐड करना है और डीबी
- 10:13:43पासवर्ड ऐड करना है। ठीक है? डीबी यूजर
- 10:13:45देखिए मेरा यहां पर क्या है? फिटनेस नहीं
- 10:13:48सॉरी डीबी यूजर है मेरा यहां पर अह यूजर
- 10:13:51है प्रोडक्ट ओनर प्रोडक्ट अंडरस्कोर ओनर
- 10:13:54तो यहां पर मैं आऊंगा प्रोडक्ट पता नहीं
- 10:13:57प्रोडक्ट अंडरस्कोर ओनर क्यों है शायद मैं
- 10:13:58नियन का बहुत ज्यादा इस्तेमाल करता हूं तो
- 10:14:00पहले मैंने बनाया होगा प्रोडक्ट अंडरस्कोर
- 10:14:03ओनर ठीक है ये प्रोडक्ट अंडरस् ओनर और फिर
- 10:14:06उसका पासवर्ड है पासवर्ड थोड़ा
- 10:14:08इंक्रिप्टेड है तो मैं वो दिखाऊंगा नहीं
- 10:14:10पासवर्ड लेकिन आपको क्या करना है यहां पर
- 10:14:11पासवर्ड ऐड कर देना है और फिर यह स्ट्रिंग
- 10:14:13को आपको पेस्ट करना है इंटेलिजेंट में तो
- 10:14:15मैं वो स्टेप कर लूंगा
- 10:14:17तो मैंने इतना कर लिया। पासवर्ड को
- 10:14:19रिप्लेस करके मैंने यहां पर ऐड कर दिया
- 10:14:20है। ठीक है? और फिर मैं अप्लाई करूंगा और
- 10:14:22फिर ओके करूंगा और फिर एप्लीकेशन को रन
- 10:14:25करते हैं। चलिए देखते हैं एप्लीकेशन रन
- 10:14:27होती है या नहीं।
- 10:14:29देखिए एप्लीकेशन रन हो रही है धीरे-धीरे।
- 10:14:31कोई एरर तो आनी नहीं चाहिए वैसे। अच्छा
- 10:14:33देखिए एरर नहीं आई और डेटाबेस से कनेक्शन
- 10:14:36भी हो गया और सारे टेबल्स क्रिएट भी हो
- 10:14:37गए। आप देख पा रहे हो। ठीक है? लगता है
- 10:14:39कुछ एरर भी आई है। यहां पर क्या एरर है वह
- 10:14:42देखना पड़ेगा। ठीक है? ऑल्टर टेबल इफ
- 10:14:45एकिस्ट। अच्छा यह क्या एरर आई है? यहां पर
- 10:14:47क्या एरर आई है? ये सारी एरर्स को देखना
- 10:14:50पड़ेगा। नियर यूजर अच्छा मुझे समझ में आ
- 10:14:53गया क्या एरर है ये। ठीक है? और इस एरर का
- 10:14:56यूजर नाम का टेबल एक्चुअली पॉजग सीक्वल
- 10:14:59में शायद अलाउड नहीं है। इसके लिए ये एरर
- 10:15:00आ रही है। क्योंकि ये एक इनबिल्ट टेबल या
- 10:15:03कीवर्ड माना जाता है। ठीक है? लेकिन
- 10:15:05एप्लीकेशन चल रही है हमारी। यहां पर देख
- 10:15:07पा रहे हो। ठीक है? तो अच्छा पोर्ट एटीटी
- 10:15:10ऑलरेडी इन यूज़ क्योंकि यहां पर हमने डॉकर
- 10:15:12मैंने ऑलरेडी डॉकर कंटेनर चला रखे हैं
- 10:15:15यहां पर तो आई थिंक यहां पर आ जाना है और
- 10:15:17यहां पर जो भी कंटेनर्स हैं उनको मैं
- 10:15:19स्टॉप कर दूंगा। ये सारे कंटेनर्स को
- 10:15:21स्टॉप कर दिया और फिर मैं इसको रन करने से
- 10:15:23पहले अब मैं क्या करूंगा? मैं ना देखिए
- 10:15:25यूजर पर एरर आई थी करेक्ट यूजर पर। तो
- 10:15:27यहां पर आना है आपको मॉडल पर आना है और ये
- 10:15:30मॉडल पर यहां पर मैं ना इसको एक कस्टम
- 10:15:33टेबल नेम दूंगा। तो यहां पर मैं लिख दूंगा
- 10:15:34एक टेबल एनोटेशन। टेबल एनोटेशन की मदद से
- 10:15:37ना आपको अगर ऐसी कोई सिचुएशन आती है तो आप
- 10:15:39खुद का नाम भी डिफाइन कर सकते हो। ठीक है?
- 10:15:40तो यहां पर मैं लिखता हूं माय यूजर कुछ भी
- 10:15:44नाम दे सकते हो या फिटनेस यूजर जो भी नाम
- 10:15:46दे देना है आपको फिटनेस यूजर सही है।
- 10:15:48फिटनेस यूजर। ठीक है? अब इसको रन करते हैं
- 10:15:51और देखते हैं क्या होता है। अब तो ये चल
- 10:15:53जानी चाहिए। ठीक है? क्योंकि डेटाबेस का
- 10:15:56ये टेबल का नाम भी मैंने बदल दिया है और
- 10:15:59वो कंटीन्यूअस को भी स्टॉप कर दिया। ईटी80
- 10:16:01पे कुछ नहीं चलना चाहिए एक हिसाब से
- 10:16:03क्योंकि आपकी एप्लीकेशन स्टार्ट हो रही
- 10:16:04है। देखिए कोई एरर नहीं आई और एप्लीकेशन
- 10:16:07स्टार्ट हो चुकी है। देखिए स्टार्ट हो
- 10:16:10चुकी है। अब आप अगर यहां पर आओगे ठीक है?
- 10:16:14नियन के कंसोल पर इसको क्लोज कर दीजिए। आप
- 10:16:17जाइए टेबल्स में। ठीक है? टेबल्स में जाइए
- 10:16:20और यहां पर फिटनेस सिलेक्टेड रहना चाहिए।
- 10:16:21और यहां पर देखेंगे आप सब के सब क्रिएटेड
- 10:16:24है। देखिए सारे के सारे टेबल्स क्रिएटेड
- 10:16:27है। ठीक है? आप चाहो तो यहां पर क्वेरी भी
- 10:16:29कर सकते हो। ठीक है? पोस्टमैन कहां चला
- 10:16:30गया? ये रहा पोस्टमैन। तो चलिए यहां से
- 10:16:32क्वेरी करते हैं इस एंड पॉइंट को। अच्छा
- 10:16:34लोकल होस्ट पे मैंने ये क्वरी चलाई और
- 10:16:37क्या यह क्रिएट होगा यहां पर फिटनेस यूजर
- 10:16:40में देखिए ये यूजर क्रिएट हो गया ठीक है
- 10:16:42तो है ना हम क्लाउड बेस्ड डेटाबेस का
- 10:16:44इस्तेमाल कर रहे हैं कि नहीं कर रहे हैं
- 10:16:46ना मजा आ रहा है कि नहीं मजा आ रहा है तो
- 10:16:48मुझे बताइए प्लीज मैं सुनना चाहूंगा कैसे
- 10:16:51फील कर रहे हो आप क्योंकि ये देखिए ये
- 10:16:53पूरा का पूरा लोकल डेटाबेस को हमने स्विच
- 10:16:55किया है एक प्रोडक्शन डेटाबेस पे
- 10:16:57प्रोडक्शन नहीं कहूंगा क्लाउड डेटाबेस पे
- 10:16:59अब ये क्लाउड पर आप एक डेटाबेस यूज़ कर
- 10:17:00रहे हो आप कोई भी डेटाबेस इस्तेमाल कर
- 10:17:02सकते हो आरडीएस इस्तेमाल कर सकते हो
- 10:17:03Amazon का या कोई भी लेकिन यह फ्री है तो
- 10:17:05इसके लिए मैंने इसका डेमो दिया आपको। ठीक
- 10:17:07है? यह हो चुका है। अब मैं क्या करूंगा?
- 10:17:10मैं एक हिसाब से मेरी डॉकर इमेज नहीं
- 10:17:13बनाऊंगा। डॉकर इमेज नहीं क्यों बनाऊंगा?
- 10:17:17क्योंकि मैंने कोड में काफी चेंजेस किए।
- 10:17:19तीन जगह चेंज किया। एक तो मैंने टेबल का
- 10:17:21नाम चेंज किया है। और दूसरा मैंने
- 10:17:22डिपेंडेंसीज़ और जो प्रॉपर्टीज़ है वो चेंज
- 10:17:25किए पॉजग्रस सीक्वल को कनेक्ट करने के
- 10:17:28लिए। ठीक है? और डॉकर इमेज बनाने के लिए
- 10:17:30हमारे पास जो कमांड्स थे उसको हम इस्तेमाल
- 10:17:34करेंगे। ठीक है? तो सबसे पहले सबसे पहले
- 10:17:38तो मैं कमांड्स यहां पर लिख लेता हूं। ठीक
- 10:17:40है? ताकि आपके पास आप स्क्रीनशॉट ले सकते
- 10:17:41हो इसका। डॉकर बिल्ड हफन अ डॉकर बिल्ड hfन
- 10:17:45टी फिटनेस मोनोलिथ और फुल स्टॉप। यह डॉकर
- 10:17:50इमेज बिल्ड करने के लिए है। फिर मैं
- 10:17:52कहूंगा डॉकर
- 10:17:54डॉकर टैग और फिर इमेज का नाम जो कि फिटनेस
- 10:17:57मोनो देता है। ठीक है? और मैं कहूंगा
- 10:18:00यूजरनेम मेरा। ठीक है? यूजरनेम
- 10:18:03रेपो
- 10:18:06रेपो नेम ऐसे लिख दूंगा मैं। ठीक है? और
- 10:18:09मेरा नाम क्या है? मेरा नाम है डीड 007 और
- 10:18:12रेपो आप जो भी नाम देना चाहते हो वो। ठीक
- 10:18:14है? और यहां पर आना है फिर आपको। फिर आपको
- 10:18:16करना है डॉ अच्छा सॉरी। फिर आपको कहना है
- 10:18:18डॉकर पुश। डॉकर पुश और फिर आपका जो नेम है
- 10:18:22यूजरनेम और रेपो उसको यहां पर मेंशन करना
- 10:18:25है। तो ये तीन कमांड्स हमको रन करने
- 10:18:26होंगे। ठीक है? और हां इसके पहले हमें अ
- 10:18:30ये करने से पहले ठीक है? इमेज करने से
- 10:18:32पहले मैं एक और चीज तो भूल ही गया। इमेज
- 10:18:34करने से पहले हमें ये जो मेवन की मेवन का
- 10:18:37इस्तेमाल करके जो जार फाइल बनानी है वो भी
- 10:18:39करनी होगी। मैं आपको एक चीज़ बता देता हूं।
- 10:18:41ठीक है? ये जार फाइल क्यों जनरेट करनी है?
- 10:18:42देखिए हमने कोड में चेंज किया है। ये जार
- 10:18:44फाइल जो जनरेट हुई थी, यह पुराने कोड बेस
- 10:18:46पे जनरेट हुई थी। यानी इसके जो पहले का
- 10:18:48वर्जन था उस पे जनरेट हुई थी जार फाइल।
- 10:18:50करेक्ट? तो ये तो करना जरूरी है। हमने जार
- 10:18:52फाइल अपडेट करनी होगी क्योंकि जार फाइल ही
- 10:18:54इस्तेमाल हो रही है डॉकर फाइल में। सोर्स
- 10:18:56कोड नहीं इस्तेमाल हो रहा है। जार फाइल
- 10:18:58इस्तेमाल हो रही है। तो जार बिल्ड करनी है
- 10:19:00पहले। तो यहां पर आ जाता हूं। ठीक है?
- 10:19:03यहां पर सारे कमांड्स तो ऑलरेडी लिखे हुए
- 10:19:04हैं। तो मैं सबसे पहले इस्तेमाल करूंगा
- 10:19:06मेव इन पैकेज का। ठीक है? यह मेव इन पैकेज
- 10:19:09कर दिया मैंने। तो यह पूरी की पूरी
- 10:19:11एप्लीकेशन जो है पैकेज हो जाएगी एक जार
- 10:19:13फाइल में। जैसे पहले हुई थी। अच्छा यहां
- 10:19:16पर आ गई एरर। तो यह एरर क्यों आई? अच्छा
- 10:19:18मैं समझ गया अब एरर क्यों आई? एरर इसलिए
- 10:19:20आई क्योंकि जो एनवायरमेंट वेरिएबल्स हैं
- 10:19:23आपने सेट किए थे यहां पर। तो ये जो
- 10:19:25एनवायरमेंट वेरिएबल्स मैंने सेट किए थे
- 10:19:27लोकल मशीन पर वो पॉइंट कर रहे हैं माय
- 10:19:29सीक्वल को। वो पॉइंट कहां करने चाहिए? वो
- 10:19:32पॉइंट करने चाहिए पॉज सीक्वल को। तो मुझे
- 10:19:34नए एनवायरमेंट वेरिएबल्स बनाने होंगे। तो
- 10:19:37यहां पर मैं इसको कॉपी पेस्ट कर देता हूं।
- 10:19:39और यहां पर अ मैं ये स्ट्रिंग ले लूंगा
- 10:19:43पूरी की पूरी इस तरीके से। ठीक है? तो यह
- 10:19:45पूरी की पूरी स्ट्रिंग यहां पर आ जाएगी
- 10:19:47ऐसे। ठीक है? और फिर रूट के बजाय मैं लिख
- 10:19:50दूंगा प्रोडक्ट ओनर यहां पर। ठीक है? और
- 10:19:52फिर यहां पर डीबी पासवर्ड मैं ऐड करके
- 10:19:54उसको वहां पर पेस्ट कर देता हूं कंसोल पर।
- 10:19:57ठीक है? इतना मैं कर लेता हूं। ठीक है?
- 10:19:59डीबी डेटाबेस का जो पासवर्ड है उसे मैंने
- 10:20:01ऐड कर दिया है। और यहां पर एमवीएन पैकेज
- 10:20:03फिर से रन करूंगा यहां पर। तो उम्मीद करता
- 10:20:06हूं यह चलना चाहिए अब की बार। चलेगा तो
- 10:20:09सही और कोई ऑप्शन है नहीं। ठीक है? तो
- 10:20:12देखिए यह स्टार्ट हो रहा है। ठीक है?
- 10:20:13थोड़ा डेटाबेस को कनेक्ट करने के लिए
- 10:20:15थोड़ा टाइम लेते हैं क्योंकि जो सर्वर है
- 10:20:17हमारा वो थोड़ा रिमोट है। लोकल मशीन पर
- 10:20:19नहीं रन कर रहे हैं। थोड़ा सा टाइम लेगा
- 10:20:21ये थोड़ा सा मतलब हार्डली एकद सेकंड और बस
- 10:20:23उससे ज्यादा नहीं। तो ये रन हो चुका है।
- 10:20:25ठीक है? अब मुझे क्या करना है? अब मुझे
- 10:20:28यहां पर आना है और इसकी जो इमेज है उसे
- 10:20:30बनानी है। ठीक है? तो ये इमेज बना लूंगा
- 10:20:32मैं ये कमांड के साथ। ठीक है? ये जब तक
- 10:20:35इमेज बन रही है तब तक मैं ये कमांड को
- 10:20:37तैयार कर दूंगा। ठीक है? और ये कमांड के
- 10:20:40लिए मेरा जो यूजरनेम था ठीक है? ओके रेपो
- 10:20:42नेम जो भी था वो आप यहां पर ऐड कर दीजिए।
- 10:20:45रेपो नेम और यहां पर आप यूजरनेम तो मेरा
- 10:20:47यूजरनेम था डिकोड 07 ठीक है और रेपो का
- 10:20:53नाम क्या था? यहां पर आ जाते हैं। अच्छा
- 10:20:56रेपो का नाम बैक स्पेस तो रेपो का नाम था।
- 10:21:00अच्छा फिटनेस मोनो ऐसा करके था रेपो का
- 10:21:03नाम। ये फिटनेस मोनो तो ये ले लेना है। और
- 10:21:06यहां पर फिटनेस मोनो। ठीक है? आप चाहते हो
- 10:21:08नई इमेज बनाना तो वो भी आप बना सकते हो।
- 10:21:10ठीक है? लेकिन मैं नई इमेज नहीं बना रहा।
- 10:21:12इसको इस तरीके से रख रहा हूं। और यहां पर
- 10:21:15आएंगे हम। देखिए इमेज तो बन चुकी है। यहां
- 10:21:18पर इसको टैग करूंगा मैं इससे। ठीक है? और
- 10:21:20फिर मैं कहूंगा डॉकर पुश और ये वाली जो
- 10:21:25इमेज है उसको कर दूंगा पुश। तो अब ये
- 10:21:27देखिए थोड़े टाइम में पुश हो जाएगा। ठीक
- 10:21:30है? अह थोड़ा सा वेट करते हैं क्योंकि
- 10:21:32यहां पर वह रिफ्लेक्ट करेगा। कहां पर
- 10:21:34रिफ्लेक्ट करेगा? यहां पर। ठीक है? तो
- 10:21:36यहां पर देखिए लास्ट पुश वन ऑवर एगो। अगर
- 10:21:38मैं रिफ्रेश करता हूं तो यह हो जाएगा
- 10:21:40सेकंड्स एगो। ठीक है? पुश होने के बाद पुश
- 10:21:43हो चुका है। अच्छा रिफ्रेश करता हूं तो ये
- 10:21:46हो चुका है। अच्छा लेस दैन अ मिनट एगो जो
- 10:21:48कि सही है। ठीक है? लेटेस्ट इमेज अवेलेबल
- 10:21:52है। ठीक है? अब इस इमेज को ये देखिए पॉइंट
- 10:21:54कहां कर रहा है? ये पॉइंट कहां कर रहा है?
- 10:21:57ये पॉइंट कर रहा है नियॉन डेटाबेस को। ये
- 10:21:59इमेज पॉइंट कर रही है नियन डेटाबेस को। तो
- 10:22:01अब मुझे क्या करना है? पॉइंट नहीं कर रही
- 10:22:03है नियन डेटाबेस को। आप यहां पर जो भी
- 10:22:05ईएनवी फाइल्स पास करोगे ईएनवी में जो भी
- 10:22:08वैल्यू्यूज पास करोगे ये उसे ये करेगी
- 10:22:10लेकिन ये कॉन्फ़िगरर्ड है पॉजग सीक्वल के
- 10:22:12साथ तो मैं इस्तेमाल कर रहा हूं नियन
- 10:22:16क्योंकि मैं यही वैल्यूज़ पास करने वाला
- 10:22:17हूं क्लाउड सर्वर पे ठीक है तो मैं क्या
- 10:22:19करूंगा मैं अब क्लाउड सर्वर के लिए
- 10:22:21इस्तेमाल करूंगा रेंडर ठीक है ये रेंडर है
- 10:22:24तो आप सर्च कर लीजिए रेंडर को अच्छा सॉरी
- 10:22:27रेंडर रेंडर आप सर्च करते हो तो देखिए
- 10:22:30क्लाउड एप्लीकेशन प्लेटफार्म यहां पर आ
- 10:22:32जाइए तो ये आपको दिखाई देगा देखिए गेट
- 10:22:34स्टार्टेड फॉर फ्री। यह काफी लोग इस्तेमाल
- 10:22:37करते हैं इसको अलीबा TLO देखिए ये सब
- 10:22:39बड़े-बड़े नाम है। यह लोग इस्तेमाल करते
- 10:22:41हैं अपनी एप्लीकेशनेशंस चलाने के लिए।
- 10:22:42काफी बढ़िया प्लेटफार्म है। मैंने काफी
- 10:22:44सारे प्रोजेक्ट्स के लिए इस्तेमाल कर रखा
- 10:22:46है। प्राइसिंग भी आप देखोगे तो काफी जनरस
- 10:22:48फ्री टियर है इनका। 0 यूएस डॉलर का फ्री
- 10:22:50टियर है। फुल स्टक एप्लीकेशनेशंस आप
- 10:22:51डिप्लॉय कर सकते हो। बढ़िया है। ठीक है।
- 10:22:54मैं एफिलिएटेड नहीं हूं इनसे। ठीक है। बट
- 10:22:56जी हां, यह यूज़फुल रहा है मेरे लिए
- 10:22:58इसीलिए आप तक ला रहा हूं। डैशबोर्ड पर आ
- 10:23:01जाइए। ठीक है? डैशबोर्ड पर आप बोल सकते हो
- 10:23:03डिप्लॉय अ वेब सर्विस। पोस्टग्रेस डेटाबेस
- 10:23:06भी क्रिएट कर सकते हो यहां पर। तो देखिए
- 10:23:07नियन का इस्तेमाल अगर आप नहीं करना चाहते
- 10:23:09हो तो यही यहां पर भी रेंडर के थ्रू आपको
- 10:23:11एक डेटाबेस मिल सकता है। लेकिन मैंने नियन
- 10:23:13का इस्तेमाल किया क्योंकि फ्री टियर अच्छा
- 10:23:15है और मुझे नियन पता है बढ़िया तरीके से।
- 10:23:17मैं काफी इस्तेमाल कर चुका हूं मेरे
- 10:23:18प्रोजेक्ट्स में। स्टैटिक साइट भी डिप्लॉय
- 10:23:21कर सकते हो। ठीक है? वेब सर्विस। तो देखिए
- 10:23:23हम बैक एंड ऐप डाल रहे हैं। तो वेब सर्विस
- 10:23:25सेलेक्ट करेंगे यहां पर। ठीक है? और यहां
- 10:23:27पर देखिए ये क्या बोल रहा है। आप गेट
- 10:23:29रिपॉज़िटरी को कनेक्ट कर सकते हो। पब्लिक
- 10:23:30गेट रिपॉज़िटरी की यूआरएल डाल सकते हो। या
- 10:23:33तो फिर कोई इमेज है अगर आपके पास तो उस
- 10:23:35इमेज का इस्तेमाल भी कर सकते हो। तो मेरे
- 10:23:37पास तो एक इमेज है। ठीक है? इमेज है ये
- 10:23:41वाली। ठीक है? तो ये इमेज की यूआरएल है।
- 10:23:43तो अच्छा डॉकर. लाइब्रेरी ये फॉर्मेट में
- 10:23:47चाहिए उसे। डॉकर. सश तो ये वाला मुझे कहां
- 10:23:51से मिलेगा? अब यहां पर आ जाते हैं। ठीक
- 10:23:53है? तो यूआरएल यहां से तो नहीं मिलेगी।
- 10:23:59ठीक है? तो मैं क्या कर रहा हूं? मैं यहां
- 10:24:01पर आ जाता हूं और यहां पर ना पब्लिक व्यू
- 10:24:03करके एक ऑप्शन है। तो पब्लिक व्यू पर
- 10:24:04क्लिक करके जो मुझे ऑप्शन मिल रहा है जो
- 10:24:06यूआरएल उसको कॉपी करके मैं यहां पर डाल के
- 10:24:09देखता हूं। क्या यह पिक करेगा? जी हां,
- 10:24:10पिक कर ली देखिए इसने। ठीक है? डिकोड 007
- 10:24:13और क्रेडेंशियल्स मुझे पूछ रहा है।
- 10:24:14क्रेडेंशियल तो नहीं देना चाहता मैं
- 10:24:16क्योंकि पब्लिक रिपॉज़िटरी है। ठीक है?
- 10:24:18प्राइवेट रिपॉज़िटरी है तो आपको
- 10:24:19क्रेडेंशियल देने होंगे क्योंकि उसी तरह
- 10:24:21से वो आपके अकाउंट को ऑथराइज़ करके एक्सेस
- 10:24:23करके वो इमेज लेगा। ठीक है? लेकिन यह इमेज
- 10:24:25आ गई यहां पर। कनेक्ट करूंगा मैं अब।
- 10:24:28कनेक्ट करेंगे तो देखिए यह सारी डिटेल्स
- 10:24:31पूछ रहा है यह फिटनेस मोनो जी हां और यहां
- 10:24:34पर कुछ डिटेल्स तो मैं यहां पर कुछ
- 10:24:36सेलेक्ट नहीं करूंगा ये फ्री वाला आप
- 10:24:38सेलेक्ट कर लेना स्टार्टर $7 वाला
- 10:24:40सिलेक्टेड था बाय डिफ़ॉल्ट मैंने फ्री
- 10:24:41सेलेक्ट कर लिया ठीक है अब देखिए यहां पर
- 10:24:44ये हमें बोल रहा है कि फ्री इंस्टेंसेस ना
- 10:24:46थोड़े टाइम के बाद स्पिन डाउन हो जाते
- 10:24:48इसका मतलब बंद हो जाते तो ठीक है हम लोग
- 10:24:50लर्निंग के लिए कर रहे हैं और देखिए फ्री
- 10:24:52इंस्टेंस का क्या है अगर आप इस फ्री
- 10:24:54इंस्टेंस को इस्तेमाल करते हो और यहां पर
- 10:24:56कोई रिक्वेस्ट नहीं आ रही सर्वर पर तो
- 10:24:58रेंडर उसको ऑटोमेटिकली कुछ मिनट्स बाद बंद
- 10:25:00कर देता है सर्वर को और फिर से स्टार्ट
- 10:25:03होता है अगर कोई नई रिक्वेस्ट आती है तो
- 10:25:05तो पहली रिक्वेस्ट अगर आएगी काफी टाइम बाद
- 10:25:08तो ये स्टार्ट होगा और फिर वो रिक्वेस्ट
- 10:25:10को सर्व करेगा तो पहली रिक्वेस्ट कुछ समय
- 10:25:12बाद थोड़ा टाइम लेंगी अ यानी कि सर्व करने
- 10:25:15के लिए ठीक है तो आप इसको लाइक
- 10:25:17पोर्टफोलियो प्रोजेक्ट्स के लिए इस्तेमाल
- 10:25:18कर सकते हो ऐसी कोई दिक्कत है नहीं आप
- 10:25:20रे्यूमे में मेंशन भी कर सकते हो कि फ्री
- 10:25:21टियर पे रन हो रहा है तो फर्स्ट रिक्वेस्ट
- 10:25:23माइट टेक सम टाइम ऐसे करके ठीक है तो ये
- 10:25:26मैंने $ सेलेक्ट कर लिया यहां पर और यहां
- 10:25:28पर देखिए ईएनवी वेरिएबल आपको डालना है।
- 10:25:31ठीक है? ईएनवी वेरिएबल तो ऐप रन कर रहे हो
- 10:25:34आप। आप ये इमेज चला रहे हो। इसमें कोई
- 10:25:35एनवायरमेंट वेरिएबल्स चाहिए या नहीं?
- 10:25:37चाहिए। क्यों नहीं चाहिए? तो आपको क्या
- 10:25:40करनी है? यहां पर आ जाना है। ठीक है? और
- 10:25:42यहां पर मेरे पास ऑलरेडी ये एनवायरमेंट
- 10:25:44वेरिएबल्स हैं सारी की सारी। तो इसको कॉपी
- 10:25:47कर लेता हूं मैं ऐसे। यहां पर पेस्ट करके
- 10:25:49देखता हूं यह पिक कर लेता है कि नहीं।
- 10:25:51अच्छा देखिए पिक तो इसने कर ही लिया।
- 10:25:53अच्छा नहीं किया। सही तरीके से नहीं किया
- 10:25:55है। तो मैं क्या करूंगा? इसको कॉपी कर
- 10:25:57लेता हूं ऐसे और इसको ना एंटर के साथ रखता
- 10:26:00हूं। ठीक है? एंटर। तो ये ऐसे एंटर करना
- 10:26:03है और इसको यहां पर एंटर करना है। ऐसे ठीक
- 10:26:06है? और फिर इसको कॉपी करता हूं और यहां पर
- 10:26:09पेस्ट कर देता हूं। इसको डिलीट कर देता
- 10:26:12हूं और यहां पर ऐड एन एनवायरमेंट वेरिएबल
- 10:26:14और ऐसे ऐड करता हूं। तो देखिए बिना सेमी
- 10:26:17कॉललन के अगर आप ऐड करते हो एक न्यू लाइन
- 10:26:18कैरेक्टर के साथ तो ये इस तरीके से
- 10:26:20पॉपुलेट हो जाता है। देखिए ये मेरा यूआरएल
- 10:26:23है। ये मेरा यूजर है और पासवर्ड अभी मैंने
- 10:26:26डाला नहीं लेकिन पासवर्ड मैं अभी डालता
- 10:26:27हूं वीडियो को पॉज करके। ठीक है? तो
- 10:26:29पासवर्ड भी मैंने डाल दिया है। सब कुछ आ
- 10:26:31गया है। अब नीचे जाते हैं और इसको कहते
- 10:26:33हैं डिप्लॉय वेब सर्विस। ठीक है? तो अब ये
- 10:26:36क्या करेगा? इमेज को पुल करेगा और उसको रन
- 10:26:39करेगा रिमोट क्लाउड सर्वर पे। देखिए यहां
- 10:26:42पर देखिए। और ये आपको एक पब्लिक यूआरएल भी
- 10:26:44इसने दे दिया है। फिटनेस hfन मोनो डॉट ऑन
- 10:26:48रेंडर.com
- 10:26:50फिटनेस hfन मोनो क्यों दिया? क्योंकि यही
- 10:26:51आपकी रिपॉज़िटरी का नाम था डॉकर इमेज का।
- 10:26:53तो देखिए ये स्टार्ट कर रहा है। इसको
- 10:26:55थोड़ा टाइम लेगा। ठीक है? तो कुछ समय के
- 10:26:57लिए हम रुकेंगे और यहां पर बोल रहा है ये
- 10:26:59फ्री इंस्टेंस स्पिन डाउन हो जाएगा। ठीक
- 10:27:01है? तो अगर आप फिर से एक्सेस करोगे तो 50
- 10:27:04सेकंड्स लगेगा इसको स्टार्ट होने के लिए
- 10:27:06जो कि ठीक है। देखिए स्प्रिंग बूट की
- 10:27:08हमारी जो एप्लीकेशन है वो स्टार्ट हो रही
- 10:27:09है यहां पर। ठीक है? तो थोड़ा वेट करेंगे
- 10:27:13हम क्योंकि यह थोड़ा स्टार्ट होने में कुछ
- 10:27:16मिनट्स लेगा। थोड़ा वेट करते हैं। तो
- 10:27:18देखिए यहां पर डेटाबेस की जो कनेक्शन
- 10:27:20डिटेल्स है वो प्रिंट कर रहा है। इसका
- 10:27:21मतलब ये डेटाबेस को कनेक्ट कर रहा है। ठीक
- 10:27:23है? कनेक्ट कर पा रहा है और काफी सारे
- 10:27:24लॉग्स आ चुके हैं। ठीक है?
- 10:27:28तो देखिए दोस्तों यहां पर ये पूरा का पूरा
- 10:27:31डिप्लॉयमेंट खत्म हो चुका है। ठीक है? और
- 10:27:34मैं अगर यहां पर आता हूं। ठीक है? और यहां
- 10:27:36पर देखिए मैंने क्या किया है? मैंने ये जो
- 10:27:39मेरी यूआरएल है ये जो यूआरएल मिली है मुझे
- 10:27:40जिसको मैंने हाईलाइट किया है कर्सर से
- 10:27:42इसको मैंने कॉपी कर लिया। ठीक है? ये मेरी
- 10:27:45प्रोडक्शन यूआरएल है। यानी कि क्लाउड की
- 10:27:46यूआरएल है जहां पर मेरी एप्लीकेशन
- 10:27:48डिप्लॉयड है। ठीक है? क्लाउड यूआरएल
- 10:27:50प्रोडक्शन नहीं कहूंगा। फिर अगर यहां पर
- 10:27:52आता हूं और यहां पर मेरी जो रजिस्ट्रेशन
- 10:27:54की एंड पॉइंट है उस पर मैंने इसको रिप्लेस
- 10:27:56कर दिया और यहां पर कोई दूसरा नंबर टाइप
- 10:27:58कीजिए आप। ठीक है? ईमेल में क्योंकि ईमेल
- 10:28:00यूनिक है और इसको सेंड कर दीजिए। तो देखिए
- 10:28:03जैसे ही आप यह करोगे तो यहां पर आपको
- 10:28:05लॉक्स दिखाई देंगे। देखिए यूजर क्रिएट हो
- 10:28:08चुका है। ठीक है? तो यह जो एप्लीकेशन है
- 10:28:11वह रन हो रही है सक्सेसफुली। ठीक है?
- 10:28:13क्लाउड में और आप मैंने एक्चुअली थर्ड
- 10:28:16यूजर क्रिएट किया है ये शायद। तो अगर मैं
- 10:28:19यहां पर रिफ्रेश करता हूं तो तीन यूज़र्स
- 10:28:20होने चाहिए। देखिए तीन यूज़र्स हैं यहां
- 10:28:22पर। ठीक है? मैं चाहूं तो यहां पर लॉग इन
- 10:28:25भी कर सकता हूं। तो यहां पर इसको लेके मैं
- 10:28:27यहां पर साइन इन के एंड पॉइंट पे आ जाता
- 10:28:29हूं। सेम चीज यहां यहीं पर साइन इन कर
- 10:28:31देता हूं। ठीक है? लेकिन मुझे ईमेल बदलना
- 10:28:34होगा। ठीक है? तो यह
- 10:28:36यह तो हेलो की एंड पॉइंट है। यूजर
- 10:28:39रजिस्ट्रेशन पे आके मुझे यह जो ईमेल है यह
- 10:28:42मैंने ईमेल काफी बड़ी सी डाल रखी है। ठीक
- 10:28:44है? तो वो यहां पर आके मुझे अच्छा ईमेल
- 10:28:48नहीं मुझे यूजरनेम लेना होगा। तो यहां पर
- 10:28:50मैं अगर आता हूं
- 10:28:52ईमेल पासवर्ड। अच्छा ये ईमेल का है। 1
- 10:28:56मिनट ये वाली एंड पॉइंट नहीं है। एक्चुअली
- 10:28:57हमारी एप्लीकेशन की ये वाली एप्लीकेशन है।
- 10:29:00सॉरी। ठीक है। तो यहां पर ये ईमेल डालना
- 10:29:03होगा। ठीक है? मैंने गलत एंड पॉइंट खोल ली
- 10:29:05थी और फिर हमें यह जो रेंडर की जो एंड
- 10:29:08पॉइंट है लाइक लोकल उसको आप कॉल नहीं कर
- 10:29:10रहे हो। यहां पर कॉल कर रहे हो और फिर
- 10:29:12सेंड कर रहे हो। तो जैसे ही सेंड करोगे आप
- 10:29:14तो देखिए यहां पर आपको टोकन भी मिल जाएगा
- 10:29:16और आप सारी एंड पॉइंट्स एक्सेस कर सकते हो
- 10:29:19उस टोकन की मदद से। ठीक है? तो ये जो
- 10:29:22एप्लीकेशन है ये चल रही है रिमोट क्लाउड
- 10:29:25सर्वर पे। ठीक है? मुझे कमेंट्स में बताइए
- 10:29:27कि आपको यह बढ़िया लगा या नहीं। ठीक है?
- 10:29:29यह पूरा का पूरा जो डिप्लॉयमेंट प्रोसेस
- 10:29:31है, काफी सिंपल प्रोसेस था। इमेज बनाना
- 10:29:33काफीेंट है। आप इमेज किस तरीके से बनाते
- 10:29:35हो और एनवायरमेंट वेरिएबल्स किस तरीके से
- 10:29:37पास करते हो वो इंपॉर्टेंट है। बाकी
- 10:29:39एप्लीकेशन तो कंटेनर में रन हो रही है।
- 10:29:41देखिए लोकली रन हो रही है तो कंटेनर में
- 10:29:43भी होगी। अगर आप सही तरीके से इमेज बनाते
- 10:29:45हो और जो ई एनवी वेरिएबल्स है उसको सही
- 10:29:48तरीके से पास करते हो तो। उम्मीद करता हूं
- 10:29:50यह ट्यूटोरियल हेल्पफुल रहा। तो दोस्तों
- 10:29:53एक छोटा सा मैसेज देना चाहता हूं। यहां पर
- 10:29:55प्रॉमिस करता हूं ज्यादा समय नहीं लूंगा
- 10:29:58आपका। तो अगर आपको यह प्लेलिस्ट ये कंटेंट
- 10:30:01जो भी मैं पुश कर रहा हूं यह आपको वैलुएबल
- 10:30:04लगता है यह वीडियो वैलएबल लगा आपको तो आप
- 10:30:07मेरे जो पेड कोर्सर्सेस हैं उसको भी चेक
- 10:30:09कीजिएगा। अब पेड कोर्सर्सेस का नाम सुनकर
- 10:30:11थोड़ा बुरा लग जाता है लोगों को लेकिन मैं
- 10:30:12एक चीज बता दूं पेड कोर्सर्सेस मतलब ये 8
- 10:30:1410 का कोर्स नहीं है। यह यूdeemमी पे बेचा
- 10:30:17जाता है कोर्स। udem पे अवेलेबल है। यह
- 10:30:19आपको फ्री में भी मिल सकता है। तो अगर
- 10:30:21आपके पास कोई udem बिज़नेस अकाउंट है तो
- 10:30:23देखिए यह जो कोर्स है यूमी बिज़नेस में
- 10:30:25इंक्लूडेड है। और अगर यूमी बिज़नेस अकाउंट
- 10:30:27नहीं है तो कोई बात नहीं मैं आपको एक
- 10:30:29लोएस्ट प्राइस कूपन दे देता हूं यहां पर
- 10:30:31इस वेबसाइट पर तो एनरोल बटन पर क्लिक करके
- 10:30:34आप udem पे चले जाते हो और देखिए इस कोर्स
- 10:30:36की प्राइस क्या है। ठीक है? तो 600 से 300
- 10:30:40के बीच में ये 600 से 400 के बीच में ये
- 10:30:43कोर्स बिकता है। कभी-कभी प्राइस 700 भी
- 10:30:45चली जाती है। डिपेंड करता है यूमी इसकी
- 10:30:46प्राइस जो है वो कंट्रोल करता है। हम नहीं
- 10:30:48करते। ठीक है? लेकिन मैं कोर्स की बात
- 10:30:50करता हूं। ठीक है? ये तो प्राइसिंग की बात
- 10:30:52थी। एक्सपेंसिव नहीं है कोर्स अगर आप खुद
- 10:30:54को अपस्किल करना चाहते हो। क्योंकि जॉब
- 10:30:57आपको जो मिलती है अह लर्न करने के बाद जो
- 10:31:00स्किल्स एक्वायर करते हो उसके बाद आपको जो
- 10:31:02जॉब मिलती है वो इससे कई गुना ज्यादा आपको
- 10:31:05पे करती है। ठीक है? और ये कोर्सर्सेस
- 10:31:07इतने एक्सपेंसिव नहीं है। काफी हाई
- 10:31:09क्वालिटी आप रेटिंग्स देख सकते हो। ठीक
- 10:31:10है? रेटिंग्स देख सकते हो। काफी सारे
- 10:31:12लर्नर्स ने ऑलरेडी इस कोर्स को लिया हुआ
- 10:31:14है। और इस कोर्स के बारे में बता देता
- 10:31:16हूं। देखिए ये जो वीडियो आप देख रहे हो,
- 10:31:18प्लेलिस्ट जो देख रहे हो, यह यूनिक तो है।
- 10:31:20ऐसा नहीं है कि ओवरलैप है या आप सेम चीजें
- 10:31:24सीखेंगे। ऐसा नहीं है। यहां पर हम बना रहे
- 10:31:26हैं एक प्रोडक्शन ग्रेड ई-कॉमर्स
- 10:31:28एप्लीकेशन। तो, यहां पर आप जो चैलेंजेस
- 10:31:30फेस करोगे, रियल प्रोजेक्ट बना रहे हैं हम
- 10:31:33विद फुल स्टक फ्रंट एंड। ठीक है? और काफी
- 10:31:36स्क्रैच से स्टार्ट कर रहे हैं। मैं ऐसा
- 10:31:38बिलीव कर मैं ऐसा समझ के पढ़ा रहा हूं कि
- 10:31:40आपको कुछ नहीं पता। ठीक है? एक-एक चीज
- 10:31:43एक्सप्लेंड है। और यह कोर्स टोटल आप
- 10:31:45देखोगे तो 88 आवर्स का है। लगभग 90 घंटे
- 10:31:47का। ठीक है? और पिछले 6 महीनों में 10 बार
- 10:31:51अपडेट हो चुका है यह कोर्स 10 बार। जो
- 10:31:53लर्नर्स इसमें एनरोल्ड हैं इनको यह बात
- 10:31:55पता है। तो ये काफी वैलएबल है और एक रीज़न
- 10:31:58है जिसकी वजह से ये बेस्ट सेलर है क्योंकि
- 10:32:00हम इसको काफी लाइक मैं जो इसको इस कोर्स
- 10:32:03पर ध्यान देता हूं काफी ध्यान देता हूं और
- 10:32:05हमेशा अपडेट करता रहता हूं। तो इसीलिए ये
- 10:32:07बेस्ट सेलर है और लोगों ने इसमें ट्रस्ट
- 10:32:09रखा है। ठीक है? तो बात करते हैं कोर्स
- 10:32:12करिकुलम पे। इसमें क्या-क्या कवर्ड है?
- 10:32:14देखिए आप करिकुलम देखेंगे तो इसमें तो
- 10:32:15पहले तो बैक एंड पहले बनेंगे प्रोडक्शन
- 10:32:17ग्रेड ई-कॉमर्स का। तो इसमें जो चैलेंजेस
- 10:32:19आप फेस करेंगे वो काफी यूनिक चैलेंजेस है
- 10:32:21जो एक ई-कॉमर्स एप्लीकेशन में फेस की जाती
- 10:32:23है। ठीक है? ई-कॉमर्स प्रोडक्शन ग्रेड
- 10:32:26एप्लीकेशन में डिप्लॉयमेंट सिखाऊंगा आपको।
- 10:32:28आपको रिएक्ट नहीं आती क्योंकि फ्रंट एंड
- 10:32:30बनाएंगे हम लोग। आपको रिएक्ट नहीं आती तो
- 10:32:32रिएक्ट भी इंक्लूडेड है। आपको
- 10:32:33जावास्क्रिप्ट अगर नहीं आती तो
- 10:32:35जावास्क्रिप्ट भी इंक्लूडेड है। ठीक है?
- 10:32:37रिएक्ट, जावास्क्रिप्ट फ्रंट एंड की
- 10:32:39टेक्नोलॉजीज़ इंक्लूडेड है। आप पूरा सीखिए।
- 10:32:41देखिए रिएक्ट इंटरमीडिएट एडवांस्ड बेसिक्स
- 10:32:43बिगिनर्स एडवांस और यहां पर फिर हम फ्रंट
- 10:32:46एंड फुल स्टक डेवलपमेंट करेंगे। इसके ये
- 10:32:48सीखने के बाद ये सारी चीजें रीडक्स की मदद
- 10:32:50से हम जो है इसका फ्रंट एंड एडवांस फ्रंट
- 10:32:53एंड बनाएंगे। इसमें अ देखिए आप यहां पर
- 10:32:56देख सकते हो आउटकम यह है कि आप एक पूरा
- 10:32:59आपकी फ्रंट एंड विद ईपीआई को डिप्लॉय करो।
- 10:33:03ठीक है? और इसमें एक कॉम्प्लेक्स एडमिन
- 10:33:04पैनल भी इंक्लूड किया गया है। एडमिन पैनल
- 10:33:06और सेलर पैनल जिसके जरिए आप रोल बेस्ड
- 10:33:09एक्सेस कंट्रोल मैनेज कर सकते हो फ्रंट
- 10:33:11एंड पे। तो इसमें जो कंटेंट है इसमें जो
- 10:33:13लर्निंग्स आपको मिलेगी ये काफी यूनिक
- 10:33:15मिलेगी। ये ऐसा नहीं है कि ओवरलैप है और
- 10:33:18सेम ही कोर्स है, सेम ही कंटेंट है। ऐसा
- 10:33:20नहीं है। इस कोर्स को इस प्रोजेक्ट को जो
- 10:33:23भी प्रोजेक्ट आप बनाओगे यह उसको आप
- 10:33:25रे्यूमे में भी दिखा सकते हो। देखिए ये
- 10:33:27इसका काफी ये इसका प्रोजेक्ट डेमो भी है।
- 10:33:29आप प्रोजेक्ट डेमो भी अच्छे से देख सकते
- 10:33:31हो यह पूरी तरीके से कि आप क्या बनाने
- 10:33:34वाले हो। तो यहां पर मैं पूरी की पूरा
- 10:33:35डेमो दे देता हूं। देखिए स्ट्र्राइप का
- 10:33:36पेमेंट इंटीग्रेशन भी है यहां पर। आप देख
- 10:33:39पा रहे हो ये थोड़ा सा ब्लर हो गया है।
- 10:33:42लेकिन ठीक है। यहां पर मुझे इसकी क्वालिटी
- 10:33:45का ऑप्शन नहीं आ रहा है। लेकिन यह थोड़ा
- 10:33:47ब्लर हो गया है। तो इसमें पेमेंट वगैरह सब
- 10:33:49कुछ है। पेमेंट गेटवे आप देख सकते हो।
- 10:33:51पूरा का पूरा एप्लीकेशन यहां पर मैंने
- 10:33:52पूरा डेमो दिया हुआ है। और इसके रिव्यूज
- 10:33:54भी आप देख सकते हो। रिव्यूज भी छुपे नहीं
- 10:33:56है और रिव्यूज पब्लिकली होस्टेड है। मेरी
- 10:33:59वेबसाइट पे रिव्यूज नहीं है। देखिए अगर
- 10:34:00मेरी वेबसाइट पे होता नॉर्मली क्या होता
- 10:34:02है? वेबसाइट पे लोग हैं ना रिव्यूज फेक
- 10:34:04रिव्यूज भी देखने मिलते हैं लोगों को।
- 10:34:07लेकिन यह रिव्यूज है कोई एक्सटर्नल साइट
- 10:34:09पे यूमी पर जो कि एक ट्रस्टवर्दी
- 10:34:11प्लेटफार्म है। ठीक है? तो यह रिव्यूज
- 10:34:13खरीदे हुए नहीं है। यह एक्चुअल रिव्यूज है
- 10:34:15जो लोगों ने डाले हैं। तो, यह एक कोर्स है
- 10:34:17मेरा। दूसरा कोर्स है मेरा माइक्रो
- 10:34:19सर्विसेस का। यह माइक्रो सर्विसेस का
- 10:34:21कोर्स भी काफी जबरदस्त है। तो अगर आप यह
- 10:34:23ई-कॉमर्स एप्लीकेशन यहां पर बनाते हो, यह
- 10:34:25प्रोजेक्ट लेड कोर्सर्सेस है। ठीक है? ये
- 10:34:27ई-कॉमर्स एप्लीकेशन आप बनाते हो पूरा फुल
- 10:34:29स्टक उसके बाद आप माइक्रो सर्विस की ओर जा
- 10:34:31सकते हो। जहां पर हम ई-कॉमर्स एप्लीकेशन
- 10:34:33को लेकर माइक्रो सर्विसेस में कन्वर्ट
- 10:34:35करते हैं। यहां पर सब कुछ डॉकर, kuberner
- 10:34:37सब कुछ इंक्लूडेड है। फुल फुल प्रोडक्शन
- 10:34:39ग्रेड एप्लीकेशन है यहां पर। ठीक है?
- 10:34:42बेनिफिट्स भी काफी है इस कोर्स के। देखिए
- 10:34:45और बेनिफिट्स यह है कि आपको यहां पर 6
- 10:34:47महीने का फ्री इंटेलिजेंट प्रो एक्सेस
- 10:34:50दिया जाता है। ठीक है? और फ्यूचर अपडेट्स
- 10:34:53भी आपको दिए जाते हैं। तो इस तरीके से आप
- 10:34:57इसको इस्तेमाल कर सकते हैं। ठीक है? यह
- 10:34:59काफी अ मैं जितना कहूं उतना कम है। लेकिन
- 10:35:03ये कोर्सेस ऐसे कोर्सेस मेरे टाइम पे
- 10:35:05अवेलेबल नहीं थे। जब मैं अह लर्निंग कर
- 10:35:07रहा था। लेकिन आज काफी लर्नर्स को इसकी इस
- 10:35:12ये कोर्स के बाद हेल्पफुल हेल्प हो जाती
- 10:35:14है। ठीक है? वो लोग प्रॉपर कॉन्फिडेंट हो
- 10:35:17जाते हैं। क्योंकि देखिए हम कोई बेसिक
- 10:35:20एप्लीकेशन नहीं बनाते इसमें। ये एडवांस
- 10:35:22प्रोडक्शन ग्रेड एप्लीकेशनेशंस बनते हैं।
- 10:35:24इसमें रोल बेस्ड एक्सेस कंट्रोल,
- 10:35:25सिक्योरिटी सब कुछ हम लोग डालेंगे और
- 10:35:28ई-कॉमर्स में जो चैलेंजेस आते हैं उसको हम
- 10:35:30फेस करेंगे। और भी काफी सारे कोर्सर्सेस
- 10:35:32हैं जैसे कि स्प्रिंग सिक्योरिटी और डाटा
- 10:35:36जीपीए यह सारी और आप है ना रोड मैप भी देख
- 10:35:39सकते हो यहां पर यह रोड मैप है तो रोड मैप
- 10:35:41के इस पेज पर आ जाओगे फैसल रोड मैप तो यह
- 10:35:45आपको रोड मैप बताएगा पूरा के पूरा कि आपको
- 10:35:47यह जो कोर्सर्सेस है किस ऑर्डर में लेने
- 10:35:49चाहिए और कैसे लेने चाहिए और लोएस्ट
- 10:35:51प्राइस कोर्स का आपको यहां पर मिलेगा यहां
- 10:35:54पर हमेशा मैं कोशिश करता हूं कि एक कूपन
- 10:35:56डाल के रखूं ताकि जो लोग अफोर्ड नहीं कर
- 10:35:58पाते एक्सपेंसिव कोर्सेज वह यहां पर लेके
- 10:36:00कि यहां पर आए और इस कोर्स को ले सके।
- 10:36:04देखिए यह जो नॉलेज आपको मिलता है यह काफी
- 10:36:06लो प्राइस पे मिलता है और इससे जो
- 10:36:08रेवेन्यू जनरेट होता है यह फ्री कंटेंट
- 10:36:10जनरेट करने में रेवेन्यू जाता है और इससे
- 10:36:13चैनल को काफी सपोर्ट मिल जाता है। ठीक है?
- 10:36:15तो उम्मीद करता हूं आप इसको चेक आउट
- 10:36:17करेंगे एक बार और अगर आप अफोर्ड नहीं कर
- 10:36:20पाते कोई बात नहीं। हम ऐसे तो फ्री कंटेंट
- 10:36:23वैसे लाते ही रहेंगे। हमेशा लाते रहेंगे।
- 10:36:26तो आप एटलीस्ट सब्सक्राइब और YouTube पे
- 10:36:29तो सपोर्ट कर ही सकते हो। ठीक है?
About this transcript
This page contains the full transcript of [DAY 40-74] Spring Boot 4 Project Course | Build Fitness Tracker with Spring Security, JWT & Docker by Faisal Memon, generated from the public captions YouTube serves with the video. The transcript has 126,851 words across 15,847 segments, with the original timestamps preserved so you can click any line to jump to that moment in the embedded player.
What you can do with it
Use the transcript to take notes, quote the speaker, build a study guide, generate a summary with ChatGPT or Claude via the YouTube Summary tool, or export it as a timed subtitle file with YouTube to SRT. You can also re-open it in the transcriber to translate the transcript into 100+ languages.
Free YouTube transcript tool
YouTube2Text is a free YouTube transcript generator — no signup, no daily limit. Paste any YouTube link and get the full transcript instantly, with timestamps, click-to-jump, translation to 100+ languages, AI prompts for ChatGPT, Claude, and Gemini, and exports to TXT, SRT, VTT, or Markdown.