YouTube2Text

[DAY 40-74] Spring Boot 4 Project Course | Build Fitness Tracker with Spring Security, JWT & Docker — Transcript

by Faisal Memon · 126,851 words · 15,847 segments · language en · Watch on YouTube

Full transcript

  1. 0:00हेलो दोस्तों, कैसे हैं आप सभी? तो
  2. 0:03दोस्तों, सबसे पहले तो कमेंट्स में आप
  3. 0:06अपना अटेंडेंस मार्क कर लीजिए और मुझे
  4. 0:08बताइए आप कहां से हो, क्या करते हो और यह
  5. 0:11वीडियो क्यों देख रहे हो और अटेंडेंस
  6. 0:14लगाना जरूरी है। यह मैंडेटरी स्टेप है।
  7. 0:16ठीक है? इससे मुझे पता चलेगा कि कितने लोग
  8. 0:18इस कोर्स को सीरियसली देख रहे हैं। और
  9. 0:22वीडियो को शुरू करने से पहले मैं आपको बता
  10. 0:25दूं। देखिए टाइटल तो आपने देख लिया होगा।
  11. 0:27लेकिन मैं बता दूं आपको यह एक प्रोजेक्ट
  12. 0:29बेस्ड कोर्स है स्प्रिंग बूट का जिसमें हम
  13. 0:32स्प्रिंग बूट प्रोजेक्ट बनाएंगे एंड टू
  14. 0:34एंड और उसको एक लाइव क्लाउड सर्वर पे
  15. 0:37डिप्लॉय भी करेंगे और डिप्लॉयमेंट का कोई
  16. 0:39चार्ज नहीं है। मैं आपको ऐसे तरीके
  17. 0:41दिखाऊंगा जिसके जरिए आप अपनी एप्लीकेशन को
  18. 0:43यही एप्लीकेशन नहीं कोई भी एप्लीकेशन को
  19. 0:45फ्री में डिप्लॉय भी कर सकते हो। ठीक है?
  20. 0:47तो इस कोर्स में आपको काफी कुछ सीखने
  21. 0:50मिलेगा। अगर आपको स्प्रिंग बूट पहले से
  22. 0:51आता है तो भी यह वीडियो आपके लिए
  23. 0:54वैल्यूुएबल रहेंगी। आपको काफी सारी चीजें
  24. 0:56समझ में आएंगी। आपको क्यों करनी है, कैसे
  25. 0:58करनी है और हम क्या-क्या करने वाले हैं वो
  26. 1:02सब कुछ आपको तो टाइम स्टैंप पे दिखाई देगा
  27. 1:03और मैं आगे भी आपको बताऊंगा। आप स्क्रीन
  28. 1:05पे भी देख सकते हो। ठीक है? तो देखिए
  29. 1:08दोस्तों सबसे पहले तो इस कोर्स की लोग
  30. 1:10कहते हैं कि ये कोर्स फ्री है लेकिन फ्री
  31. 1:12नहीं है। यहां पर लाइक, कमेंट,
  32. 1:13सब्सक्राइब, बेल नोटिफिकेशन ऑन तो करना ही
  33. 1:15है। मैं देख रहा हूं मोस्ट ज्यादा से
  34. 1:18ज्यादा लोग जो मेरा वीडियो देखते हैं वो
  35. 1:20लोग सब्सक्राइब नहीं है। ठीक है? कि
  36. 1:22अनसस्क्राइबर से ज्यादा मुझे व्यूज बहुत
  37. 1:24आते हैं। तो पता नहीं क्यों और रिटर्निंग
  38. 1:27व्यूअर्स भी ज्यादा है। इसका मतलब मेरे जो
  39. 1:30यूज़र्स हैं जो व्यूअर्स हैं उन्हें मेरे
  40. 1:32वीडियोस पसंद है। इसीलिए मेरे चैनल पर
  41. 1:34बार-बार आते हैं। लेकिन सब्सक्राइब बटन
  42. 1:35दबाना भूल गए। तो याद दिलाना चाहूंगा
  43. 1:37लाइक, सब्सक्राइब, कमेंट, बेल नोटिफिकेशन
  44. 1:39ऑन, सब्सक्राइब तो जरूर कीजिए। बेल
  45. 1:41नोटिफिकेशन ऑन रखिए ताकि ऐसे कोर्सेस, ऐसे
  46. 1:43वैलुएबल कंटेंट आपको मिलते रहे। ठीक है?
  47. 1:47कमेंट में अटेंडेंस मार्क कर दीजिएगा और
  48. 1:49डिस्क्रिप्शन में सबसे पहले मैं बता दूं
  49. 1:51आपको डे वाइज टाइम स्टैंप मिल जाएंगे
  50. 1:53दोस्तों काफी मेहनत लगती है डे वाइज टाइम
  51. 1:55स्टैंप बनाने में तो इसे आप रेफर कीजिएगा
  52. 1:59ठीक है ये एक हिसाब से स्टडी प्लान की तरह
  53. 2:00भी आप इस्तेमाल कर सकते हो ठीक है टाइम
  54. 2:03स्टैंप को तो क्योंकि ये वीडियो थोड़ी
  55. 2:06बड़ी है तो आप क्या कर सकते हो टाइम
  56. 2:08स्टैंप को लेकर उसको डे वाइज ब्रेक ब्रेक
  57. 2:10कर सकते हो और जैसे आपको सूटेबल हो एक
  58. 2:14हफ्ता 10 दिन 4 दिन हर एक की अलग-अलग पेस
  59. 2:17होती है। आप उसे ब्रेक डाउन करके उस पर
  60. 2:20एक्शन कर सकते हो। ठीक है? कोई-कोई लोग इस
  61. 2:22लेवल का वीडियो 15 दिन तक, 20 दिन तक या
  62. 2:24एक महीने तक भी कंटिन्यू रखते हैं क्योंकि
  63. 2:27उनका टाइम कमिटमेंट कम होता है। ठीक है?
  64. 2:29तो आप टाइम स्टैंप को रेफर कीजिएगा और
  65. 2:32उससे एक आपको स्टडी प्लान बनाने में भी
  66. 2:34हेल्प होगी। ठीक है? डिस्क्रिप्शन को रेफर
  67. 2:37कीजिएगा क्योंकि यहां पर थोड़े इंपॉर्टेंट
  68. 2:39रिसोर्सेज मैं लिंक कर दूंगा। तो आप उसको
  69. 2:41रेफर कर सकते हो। ठीक है? अब जैसे कि
  70. 2:44मैंने बताया ये एक फिटनेस एप्लीकेशन होने
  71. 2:46वाला है। ठीक है? और यहां पर आप देख सकते
  72. 2:48हो फिटनेस एप्लीकेशन। फिटनेस एप्लीकेशन
  73. 2:50में आप आपको हम तरह-तरह की फंक्शनैलिटी
  74. 2:53बनाएंगे। जैसे कि यूजर आके खुद से रजिस्टर
  75. 2:55कर सकता है। खुद को ऑथेंटिकेट कर सकता है।
  76. 2:58ऑथोराइजेशन होगा वहां पर। ठीक है? और हम
  77. 3:01बेसिकली ये फंक्शनैलिटी ऐसी होगी कि यूजर
  78. 3:04का जो फिटनेस डेटा है वो इस एप्लीकेशन के
  79. 3:06थ्रू ट्रैक हो सकता है। यानी कि यूजर ने
  80. 3:09क्या किया है? वेट ट्रेनिंग किया है। यूजर
  81. 3:11ने क्रॉस ट्रेनर इस्तेमाल किया है। रनिंग
  82. 3:13की है। साइकिलिंग की है। अह तो ये सारी
  83. 3:16डिटेल्स लाइक कितना कैलोरी बर्न किया है।
  84. 3:18क्या ड्यूरेशन था एक्टिविटी का? कब किया
  85. 3:20है डेट टाइम। ये सारी जो फिटनेस एक्टिविटी
  86. 3:23रिलेटेड इनफेशन है, हम इस एप्लीकेशन के
  87. 3:27द्वारा हम स्टोर करेंगे हमारी ऐप में और
  88. 3:30यूजर की इनेशन भी स्टोर करेंगे और उस
  89. 3:32एक्टिविटी के अगेंस्ट रेकमेंडेशन भी स्टोर
  90. 3:34करेंगे। तो ये एक बेसिकली फिटनेस
  91. 3:36एप्लीकेशन है जो कि यूजर का फिटनेस डेटा अ
  92. 3:40मैनेज और रिट्रीव करने में मदद करता है।
  93. 3:42ठीक है? तो इसमें काफी सारे कांसेप्ट्स
  94. 3:44कवर किए गए हैं। आप देख सकते हो
  95. 3:45कॉन्सेप्ट्स। ठीक है? मैंने काफी हाई लेवल
  96. 3:47पे लिखा है। लो लेवल पे लिखने जाऊंगा तो
  97. 3:49लंबी लिस्ट हो जाएगी। तो इसके लिए मैंने
  98. 3:50लिखा नहीं है ज्यादातर। ठीक है? देखिए ऑफ
  99. 3:53कोर्स स्प्रिंग बूट का लेटेस्ट वर्जन जो
  100. 3:55है उसे तो हम इस्तेमाल करेंगे ही गोज़
  101. 3:57विदाउट सेइंग। ठीक है? और स्प्रिंग डेटा
  102. 4:01GPए का भी इस्तेमाल करेंगे यहां पर। ठीक
  103. 4:03है? स्प्रिंग डाटा जीपीए से हम डेटाबसेस
  104. 4:06में चीजों को पर्सिस्ट करेंगे। हम
  105. 4:07इस्तेमाल करेंगे स्प्रिंग सिक्योरिटी का।
  106. 4:09अब स्प्रिंग सिक्योरिटी का इस्तेमाल होगा
  107. 4:10ऑथेंटिकेशन ऑथराइजेशन के लिए। ठीक है? हम
  108. 4:13इसमें रोल बेस्ड ऑथेंटिकेशन, रोल बेस्ड
  109. 4:15ऑथराइजेशन ये सारी चीजें हम सीखेंगे। ठीक
  110. 4:18है? और इस तरीके से सीखेंगे कि अगर आप इस
  111. 4:19एप्लीकेशन को और एक्सटेंड करना चाहते हो
  112. 4:21तो आप एक्सटेंड भी कर सकते हो। इसमें कोई
  113. 4:24दिक्कत नहीं आएंगी आपको क्योंकि आपकी जो
  114. 4:26कांसेप्ट्स हैं वो स्ट्रांग रहने वाले
  115. 4:28हैं। ठीक है? और JW ऑथेंटिकेशन हम
  116. 4:30इंप्लीमेंट करेंगे। देखिए स्प्रिंग
  117. 4:32सिक्योरिटी के अलग-अलग तरह के ऑथेंटिकेशन
  118. 4:33मैकेनिज्म्स होते हैं। फॉर्म बेस्ड
  119. 4:35बेसिक्स वो सारे हम देखेंगे सारे
  120. 4:37एक्सप्लोर करेंगे और जेडब्ल्यूडी
  121. 4:39ऑथेंटिकेशन को इस्तेमाल करेंगे हमारे
  122. 4:42एप्लीकेशन में। और क्यों JW ऑथेंटिकेशन
  123. 4:44चूज़ करते हैं? टोकन बेस्ड है, कैसे हेल्प
  124. 4:46करता है? ये सारी चीजें हमने कवर कर रखी
  125. 4:48है। LBK का इस्तेमाल करेंगे क्योंकि लॉबक
  126. 4:51के थ्रू हम काफी सारा बोईलर प्लेट कोड
  127. 4:53रिड्यूस कर सकते हैं। उसको कैसे इस्तेमाल
  128. 4:54करना है यह भी कवर्ड है। एंटटी और डेटाबेस
  129. 4:57रिलेटेड डिज़ाइन हम करेंगे। डीटीओ पैटर्न
  130. 5:00का इस्तेमाल करेंगे। ठीक है? और डीटीओ
  131. 5:02पैटर्न क्यों इस्तेमाल करना चाहिए? वो
  132. 5:04कैसे डिकपल करता है? वो सारी चीजें हम
  133. 5:07समझेंगे। वैलिडेशंस देखिए ये काफी
  134. 5:09इंपॉर्टेंट है। अगर आप स्प्रिंग बूट का
  135. 5:12इस्तेमाल कर रहे हो या कोई भी रेस्ट एपीआई
  136. 5:13बना रहे हो। ठीक है? डेटा तो आपके पास आना
  137. 5:15ही है बैक एंड में। तो आपका काम है डेटा
  138. 5:18सही डेटा लेना। सही डेटा को ट्रैक करना।
  139. 5:20तो वैलिडेशंस एक इंपॉर्टेंट चीज बन जाती
  140. 5:22है हर एप्लीकेशन का। चाहे वो फ्रंट एंड
  141. 5:25एप्लीकेशन हो, बैक एंड एप्लीकेशन हो, कोई
  142. 5:26भी डेटाबेस भी हो, उसमें वैलिडेशंस
  143. 5:28इंपॉर्टेंट हो गए हैं आजकल क्योंकि डेटा
  144. 5:30इतना सारा हो गया है। ठीक है? तो
  145. 5:31वैलिडेशंस कैसे करना है आसान तरीके से।
  146. 5:34ठीक है? इस तरीके से वैलिडेशन हम करेंगे।
  147. 5:37अ स्प्रिंग फ्रेमवर्क के वैलिडेशन
  148. 5:38फ्रेमवर्क को हम एक्सप्लोर करेंगे और
  149. 5:40समझेंगे कि कैसे ज्यादा कोड लिखे बिना
  150. 5:44सिर्फ एनोडेशंस की मदद से आप चीजों को
  151. 5:47वैलिडेट कर सकते हो। ठीक है? बहुत ही
  152. 5:49बढ़िया चीज़ है और बहुत मजा आएगा ये सीखने
  153. 5:51में। और हां हम ये जो एप्लीकेशन बनाएंगे
  154. 5:53इसे कंटेनराइज भी करेंगे, डॉकराइज करेंगे
  155. 5:56और इमेज बनाएंगे और थोड़े कंटेनराइजेशन के
  156. 6:00जो कांसेप्ट्स है उसे भी हम टच अप करेंगे
  157. 6:02और फिर ये जो एप्लीकेशन है इसे हम डिप्लॉय
  158. 6:05करेंगे एक एक्चुअल रियल क्लाउड पे और ये
  159. 6:09फ्री ऑफ़ चार्ज होगा। ठीक है? मैं आपको
  160. 6:11तरीके बताऊंगा जिसके थ्रू आप एक बैक एंड
  161. 6:14और डेटाबेस लाइक एक ऐसी एप्लीकेशन जो
  162. 6:17डेटाबेस का इस्तेमाल कर रही है। देखिए
  163. 6:18डेटाबेस का इस्तेमाल कर रही है तो उसे
  164. 6:20लगेगा डेटाबेस सर्वर और बैक एंड सर्वर। तो
  165. 6:22दोनों सर्वर्स को आप क्ल क्लाउड में कैसे
  166. 6:24होस्ट कर सकते हो? सॉरी इन दोनों सर्वर्स
  167. 6:28को आप कैसे क्लाउड में होस्ट कर सकते हो?
  168. 6:31ये चीजें कवर्ड है। ठीक है? कौन सी-कौ सी
  169. 6:33सर्विज पिक करनी चाहिए आपको? अ क्यों पिक
  170. 6:36करनी है हमें? ठीक है? क्योंकि देखिए
  171. 6:38नॉर्मली क्या है? हम अगर कोई ऐसा पीओसी
  172. 6:40बनाते हैं या रे्यूे के लिए पोर्टफोलियो
  173. 6:42प्रोजेक्ट्स बनाते हैं। हम चाहते हैं कि
  174. 6:44हम स्पेंड ना करें उस पे। करेक्ट। हम
  175. 6:46हमारी प्रोजेक्ट लाइव सर्वर पे चलती रहे।
  176. 6:48हम उस पर स्पेंड ना करें। तो मैं ऐसे
  177. 6:50तरीके आपको बताऊंगा। ऐसी सर्विज बताऊंगा
  178. 6:52जिसके मदद से आप फ्री में क्लाउड
  179. 6:54डेप्लॉयमेंट कर सकते हो। तो ये सारी चीजें
  180. 6:57कवर्ड है। और भी काफी सारे कॉन्सेप्ट्स
  181. 6:59कवर्ड है। लेकिन ये मैंने हाई लेवल पे
  182. 7:01मैंने आपको बता दिया है। ठीक है?
  183. 7:03ऑथेंटिकेशन ऑथराइज़ेशन में बहुत मजा आएगा।
  184. 7:05सारी एपीआई को हम ऑथेंटिकेट करेंगे। हम ये
  185. 7:07भी समझेंगे कि अगर आपको कोई एपीआई को
  186. 7:11ऑथेंटिकेट नहीं करना है या एक्सक्लूड करना
  187. 7:13है ऑथेंटिकेशन फ्रेमवर्क से तो वो आप कैसे
  188. 7:15कर सकते हो ये भी मैं बताऊंगा। एक और चीज
  189. 7:17तो मैं यहां पर लिखना भूल ही गया। ठीक है?
  190. 7:18हम अ डॉक्यूमेंटेशन एपीआई डॉक्यूमेंटेशन
  191. 7:21का इस्तेमाल कैसे करना है वो भी हम
  192. 7:23समझेंगे। ठीक है? स्वैगर एक्सेप्शन
  193. 7:26हैंडलिंग। ठीक है? तो स्वैगर का मतलब यह
  194. 7:30है देखिए ये एक स्वैगर की मदद से बेसिकली
  195. 7:33अगर आप स्वैगर इस्तेमाल करते हो तो उसके
  196. 7:35जरिए आप ब्यूटीफुल एपीआई डॉक्यूमेंटेशन
  197. 7:39बना सकते हो। ब्यूटीफुल एपीआई
  198. 7:40डॉक्यूमेंटेशन जिसको आपको में जिस पर आपको
  199. 7:43मेंटेनेंस में ज्यादा टाइम नहीं डालना है।
  200. 7:46कुछ टाइम नहीं डालना है। इनफैक्ट आप कोड
  201. 7:48में कुछ चेंज करते हो और वो ईपीआई
  202. 7:50डॉक्यूमेंटेशन में ऑटोमेटिकली रिफ्लेक्ट
  203. 7:51हो जाता है। कैसे रिफ्लेक्ट होता है ये
  204. 7:53सारी चीजें मैं आपको बताऊंगा। आपको सारा
  205. 7:54कॉन्फ़िगरेशन बताऊंगा हैंड होल्ड करके। ठीक
  206. 7:57है? एक्सेप्शन हैंडलिंग आपको समझ में
  207. 7:59आएगा। देखिए एक्सेप्शनंस एक इंपॉर्टेंट
  208. 8:01चीज है और एक्सेप्शनंस को आप किस तरीके से
  209. 8:03हैंडल कर सकते हो अपने एप्लीकेशन में वो
  210. 8:05भी कवर्ड है। तो काफी सारी चीजें यहां पर
  211. 8:07कवर्ड है और इतना ही नहीं ये इस तरीके से
  212. 8:10आप सीखोगे कि अगर आपको इस एप्लीकेशन को
  213. 8:12आगे डेवलप करना है तो आप डेवलप भी कर सकते
  214. 8:15हो, एनहांस भी कर सकते हो। ठीक है? ये
  215. 8:17टोटली आपके हाथ में है। आपको किस
  216. 8:18डायरेक्शन में लेके जाना है इस एप्लीकेशन
  217. 8:20को। ठीक है? और मैं आपको सारे कांसेप्ट
  218. 8:22सिखा दूंगा, सारी प्रैक्टिससेस सिखा
  219. 8:24दूंगा। यहां पर आप सब कुछ सीख जाओगे। और
  220. 8:26हां आपको यह वीडियो जरूर वैलुएबल लगेगी।
  221. 8:29ठीक है? तो कमेंट्स में आप अटेंडेंस जरूर
  222. 8:31मार्क कीजिए। ठीक है? और कोर्स की फीस
  223. 8:35जैसे कि मैंने बताया ये कोर्स लोग कहते
  224. 8:37हैं फ्री है लेकिन फ्री है नहीं। लाइक,
  225. 8:39सब्सक्राइब, कमेंट, बेल नोटिफिकेशन आइकॉन
  226. 8:41तो करना ही है। ठीक है? तो कर दीजिएगा।
  227. 8:44चैनल को हेल्प हो जाती है, सपोर्ट मिल
  228. 8:46जाता है आप लोगों का और थोड़ी खुशी मिल
  229. 8:48जाती है। ठीक है? उम्मीद करता हूं ये
  230. 8:52वीडियो हेल्पफुल होगा आपके लिए और ज्यादा
  231. 8:55टाइम वेस्ट नहीं करूंगा। चलिए शुरू करते
  232. 8:57हैं।
  233. 9:03हेलो दोस्तों, चलिए बात करते हैं हमारी जो
  234. 9:06फिटनेस एप्लीकेशन होने वाली है उसकी
  235. 9:09डेटाबेस स्ट्रक्चर के बारे में। तो देखिए
  236. 9:11यहां पर मैंने एक तरीके का ईआर डायग्राम
  237. 9:14जो है उसको बना लिया है। अब देखिए आप
  238. 9:17कहेंगे कि ये ईआर डायग्राम का मतलब क्या
  239. 9:19है? तो दोस्तों थोड़ा सा एक ओवरव्यू भी दे
  240. 9:20देता हूं क्योंकि वो जरूरी है ईआर
  241. 9:22डायग्राम एक्चुअली में होता क्या है और
  242. 9:25इसे हम क्यों इस्तेमाल करते हैं? तो अगर
  243. 9:27आप एक प्रोफेशनल डेवलपर बनते हो,
  244. 9:29प्रोफेशनल कंपनीज़ में काम करते हो, तो
  245. 9:31आपको यह ईआर डायग्राम काफी देखने मिलेगा।
  246. 9:33और यह कहां देखने मिलेगा? यह देखने मिलेगा
  247. 9:35आपको रिक्वायरमेंट, डॉक्यूमेंटेशन में,
  248. 9:37टेक्निकल डॉक्स में ये सारी जगह पर देखने
  249. 9:39मिलेगा। तो समझना जरूरी है कि ये एक्चुअली
  250. 9:41में है क्या? तो देखिए ईआर डायग्राम का
  251. 9:43मतलब है एंटिटी रिलेशनशिप डायग्राम। ईआर
  252. 9:47ईआर का मतलब एंटिटी और रिलेशनशिप। ये आपको
  253. 9:50इस चीज की आईडिया देता है कि ये जो
  254. 9:52एप्लीकेशन आप बना रहे हो, ठीक है? इसमें
  255. 9:55किस तरीके की एंटिटीज हैं? क्या-क्या
  256. 9:57एंटिटीज है? और इन सों की सारी एंटिटीज के
  257. 10:00बीच में रिलेशनशिप क्या है? ठीक है? तो
  258. 10:03यहां पर देखिए काफी सारी एंटिटीज तो दिखाई
  259. 10:05दे रही है आपको रिकमेंडेशन एक्टिविटीज
  260. 10:07यूज़र्स और इन सारी जो एंटिटीज है इसके बीच
  261. 10:11में रिलेशनशिप क्या है वो रिलेशनशिप ये जो
  262. 10:13लाइंस है उसकी मदद से आपको दिखाई दे रहा
  263. 10:16है ठीक है तो ये हो गया ईआर डायग्राम और
  264. 10:20दोस्तों ये आपको एक तरीके का हाई लेवल
  265. 10:23ओवरव्यू देता है डेटाबेस की जो डिज़ाइन है
  266. 10:26उसके बारे में ठीक है तो उम्मीद करता हूं
  267. 10:28इतना क्लियर हो गया और इस ये देखिए ये तो
  268. 10:30काफी सिंपल ईआर डायग्राम है ठीक है लेकिन
  269. 10:33लेकिन इसमें इसमें तीन एंटिटीज़ हैं
  270. 10:34बेसिकली और आपको इनके बीच में क्या
  271. 10:36रिलेशनशिप है वह सारी समझ में आएगी यहां
  272. 10:38पर। लेकिन असल जिंदगी में अगर आप काफी बड़े
  273. 10:41प्रोजेक्ट पर काम करते हो तो वहां पर हो
  274. 10:43सकता है आपको 10 12 20 एंटिटीज भी दिखाई
  275. 10:45दे। ठीक है? और हो सकता है वो एक ही फ्रेम
  276. 10:47में फिट भी ना हो। ठीक है? तो इस तरीके से
  277. 10:50एक्चुअल काम होता है। और ये क्या है? ये
  278. 10:53देख के डायग्राम देख के आपको समझ में आ
  279. 10:54जाता है। अच्छा ये डेटाबेस का स्ट्रक्चर
  280. 10:56क्या है? डेटाबेस का डिज़ाइन क्या है? कौन
  281. 10:58सी टेबल किससे लिंक्ड है? किस तरीके की
  282. 11:00रिलेशनशिप है? वो सारी चीजें आपको समझ में
  283. 11:02आ जाती है। तो देखिए यहां पर मैं आपको बता
  284. 11:03देता हूं। यहां पर आप देख पा रहे हो
  285. 11:05यूज़र्स, एक्टिविटीज और रेकमेंडेशंस। यहां
  286. 11:07पर यूज़र्स हैं। ठीक है? तो सबसे पहले तो
  287. 11:09मैं एंटिटीज़ के बारे में बता देता हूं कि
  288. 11:11कौन सी एंटिटी क्या चीज के लिए हमने बनाई
  289. 11:14है और उसके बाद में इन सों के बीच में जो
  290. 11:17रिलेशनशिप है उसके बारे में भी बात
  291. 11:18करेंगे। ठीक है? तो सबसे पहले तो यूज़र्स
  292. 11:21नाम की एक एंटिटी रहने वाली है। ठीक है?
  293. 11:24यूज़र्स देखिए नाम यूज़र्स से ही समझ में आ
  294. 11:26रहा है कि यूज़र्स में क्या होने वाला है।
  295. 11:28ठीक है? इसमें हम यूजर की इंफॉर्मेशन को
  296. 11:30स्टोर करेंगे। ठीक है? यूजर की इनेशन। अब
  297. 11:33यहां पर आपको दिखाई दे रहा है कि यहां पर
  298. 11:34आपको दिखाई देगा क्रिएटेड डेट, ईमेल। तो
  299. 11:37यूजर कब क्रिएट हुआ है? ईमेल, फर्स्ट नेम,
  300. 11:39लास्ट नेम, पासवर्ड। यूजर का क्या रोल है?
  301. 11:42और यह यूजर कब अपडेट किया गया है। इतनी
  302. 11:45इनेशन आपको यहां पर दिखाई देगी। ठीक है?
  303. 11:48आईडी भी दिखाई दे रही है। आईडी मतलब इसकी
  304. 11:50यूनिक आईडी और आईडी के पास में आपको यह
  305. 11:53देखिए की जैसा आइकॉन दिखाई देगा। इसका
  306. 11:55मतलब यह है कि यह प्राइमरी की है इस टेबल
  307. 11:57की। ठीक है? और देखिए यहां पर आपको अह
  308. 12:00कॉलम नेम दिखाई दे रहा है आईडी और यहां पर
  309. 12:03अह जो है ये कॉलम का टाइप भी दिखाई दे रहा
  310. 12:05है। यानी कि वेयर केयर डेट टाइम वेयर केयर
  311. 12:08वेयर केयर वेयर केयर। वेयर केयर मतलब ये
  312. 12:10डेटाबेस में स्ट्रिंग होता है। तो आप जो
  313. 12:12भी डेटा स्टोर करते हो अगर आप जावा में
  314. 12:14स्ट्रिंग की तरह डिफाइन करते हो तो
  315. 12:16डेटाबेस लैंग्वेज में उसे वेयर केयर कहा
  316. 12:18जाता है। ठीक है? ये अह स्ट्रिंग को
  317. 12:19रिप्रेजेंट करने का तरीका है डेटाबेस लेवल
  318. 12:21पर। और यहां पर वेयर केयर में देखिए 255
  319. 12:24कररेक्टर्स यानी कि आप 255 कररेक्टर्स
  320. 12:27स्टोर कर सकते हो। फर्स्ट नेम में, लास्ट
  321. 12:29नेम में, पासवर्ड में ये सारी जगह पर इतने
  322. 12:31कररेक्टर्स आप स्टोर कर सकते हो। ठीक है?
  323. 12:32रोल भी है यहां पर जो कि इनम के तौर पर
  324. 12:35रिप्रेजेंट किया गया है। तो यहां पर आप
  325. 12:36अलग-अलग तरह के रोल्स डिफाइन कर सकते हो।
  326. 12:38जैसे कि यूजर रोल हो गया। आपने डिफाइन कर
  327. 12:41दिया एडमिन रोल, कुछ सेलर रोल। कोई भी रोल
  328. 12:43आ सकता है। आगे चलके आप आपकी एप्लीकेशन
  329. 12:45में। आप उसको यहां पर मेंशन कर सकते हो।
  330. 12:47क्रिएटेड क्रिएटेड एट यह डेट टाइम है।
  331. 12:50क्रिएटेड एट का मतलब तो आपको समझ गया
  332. 12:52रहेगा कि ये जो यूजर है कब क्रिएट हुआ है।
  333. 12:54अपडेटेड एट वो भी डेट टाइम है। ठीक है? और
  334. 12:57आईडी है वो भी वेयर कैर है। तो ये हो गया
  335. 12:59यूजर का स्ट्रक्चर। फिर आते हैं एक्टिविटी
  336. 13:01के स्ट्रक्चर के पास। ठीक है? तो देखिए
  337. 13:04एक्टिविटी में आपको देखने मिल जाएगा
  338. 13:06एडिशनल मैट्रिक्स, कैलोरीज़ बर्न, क्रिएटेड
  339. 13:08एट, ड्यूरेशन, स्टार्ट टाइम, टाइप, टाइप
  340. 13:11को इनम से रिप्रेजेंट किया गया है। ठीक
  341. 13:12है? ये सारे एक्टिविटी रिलेटेड डेटा है।
  342. 13:14तो अगर आपको एक यूजर की एक्टिविटी को
  343. 13:17ट्रैक करना है तो आप उसे एक्टिविटीज टेबल
  344. 13:20में ट्रैक कर सकते हो। ठीक है? तो देखिए
  345. 13:22यहां पर आप देखोगे ध्यान से देखोगे तो
  346. 13:24यूजर आईडी है। तो यूजर आईडी क्या बताएगा
  347. 13:26कि ये जो एक्टिविटी है वो कौन से यूजर की
  348. 13:29है? अपडेटेड एट टाइप। टाइप मतलब ये कौन से
  349. 13:31टाइप की एक्टिविटी है? इसको हम इनम में
  350. 13:33इनम के तौर पे स्टोर करेंगे। स्टार्ट टाइम
  351. 13:37ड्यूरेशन क्रिएटेड एट कैलोरीज बर्न एडिशनल
  352. 13:39मैट्रिक्स अ आईडी वेयर केयर ये सारी चीजें
  353. 13:42आपको देखने मिल जाएगी। ठीक है? और
  354. 13:44रेकमेंडेशंस में ये एक्टिविटी के अगेंस्ट
  355. 13:47एक्टिविटी के बिहाफ पर जो भी रेकमेंडेशंस
  356. 13:49आ रहे हैं। ठीक है? उसको आप देख सकते हो
  357. 13:52यहां पर। तो देखिए यूजर आईडी है, टाइप है,
  358. 13:54सजेशंस है, सेफ्टी है, रेकमेंडेशन है,
  359. 13:57रेकमेंडेशंस, इंप्रूवमेंट्स और सेफ्टी और
  360. 14:00सजेशन। ये चार पार्ट्स में इसे डिवाइड
  361. 14:02किया गया है। ठीक है? तो एक एक्टिविटी के
  362. 14:05अगेंस्ट एक एक्टिविटी के बिहाफ पर या जो
  363. 14:07भी डेटा है यूजर का फिटनेस डेटा उसके
  364. 14:09बिहाफ पर आप किस तरह के रिकमेंडेशन देना
  365. 14:12चाहते हो यूजर को तो रिकमेंडेशंस अलग-अलग
  366. 14:14टाइप के होते हैं। एक तो ये इंप्रूवमेंट
  367. 14:15रिलेटेड रिकमेंडेशन जो यहां पर देखा जा
  368. 14:17रहा है यहां। ठीक है? बाद में एक होता है
  369. 14:19एक्चुअल रिकमेंडेशन। ठीक है? फिर होता है
  370. 14:21सेफ्टी यानी कि सेफ्टी रिलेटेड अगर कोई
  371. 14:23रिकमेंडेशन है वो आप दे सकते हो। फिर
  372. 14:25सजेशन रिलेटेड अगर कोई रिकमेंडेशन है वो
  373. 14:27भी आप दे सकते हो। ठीक है? जो इंप्रूवमेंट
  374. 14:29सजेशन वो सारे दे सकते हो। ठीक है? टाइप
  375. 14:31हो सकता है इसका क्रिएटेड एट एक्टिविटी
  376. 14:34आईडी और यूजर आईडी। यूजर आईडी यह बताएगा
  377. 14:36कि कौन सी यूजर के अगेंस्ट यह लिंक की गई
  378. 14:39है। और रेकमेंडेशन का मतलब है यह बेसिकली
  379. 14:42रेकमेंडेशन है अ किसी एक्टिविटी का। ठीक
  380. 14:45है? और यहां पर उसे लिंक किया गया है
  381. 14:47एक्टिविटी आईडी से। ठीक है? तो ये हो गया
  382. 14:49रेकमेंडेशंस टेबल या रेकमेंडेशंस एंटिटी।
  383. 14:52तो देखिए तीन एंटिटी है। ठीक है? और ये
  384. 14:55तीनों एंटिटी के बीच में कुछ रिलेशनशिप
  385. 14:56है। तो यह आपको लाइंस दिखाई दे रही होगी
  386. 14:58यहां पर। ठीक है? तो देखिए यूजर और
  387. 15:02एक्टिविटीज में यूजर और एक्टिविटीज में वन
  388. 15:04टू मेनी का रिलेशनशिप है। तो एक यूजर के
  389. 15:06अगेंस्ट मल्टीपल एक्टिविटीज हो सकती है।
  390. 15:09तो देखिए ये जो लिंकिंग आप देखोगे यहां पर
  391. 15:11यूजर के साइड पे दो लाइन डली हुई है। इसका
  392. 15:13मतलब ये वन साइड ऑफ द रिलेशनशिप है। और
  393. 15:16यहां पर आपको ये अ इस तरीके का सिंबल
  394. 15:19दिखाई देगा। तो ये मेनी साइड ऑफ दी
  395. 15:21रिलेशनशिप है। ठीक है? तो ये हो गया अ वन
  396. 15:25टू मेनी का रिलेशनशिप। और फिर यहां पर
  397. 15:28रेकमेंडेशंस और एक्टिविटीज में भी आपको
  398. 15:30दिखाई देगा एक एक्टिविटी के अगेंस्ट
  399. 15:31मल्टीपल रिकमेंडेशंस अलाउड है। ठीक है? एक
  400. 15:34एक्टिविटी के अगेंस्ट मल्टीपल रेकमेंडेशंस
  401. 15:36अलाउड है। तो एक्टिविटी से रेकमेंडेशन का
  402. 15:38जो रिलेशनशिप है वो वन टू मेनी का
  403. 15:40रिलेशनशिप है। ठीक है? जिसमें वन साइड है
  404. 15:42एक्टिविटी और रेकमेंडेशन साइड है मेनी
  405. 15:45साइड। तो यहां पर भी आपको दिखाई देगा ये
  406. 15:47दो लाइंस जो है ये है वन साइड और ये ऐसा
  407. 15:50जो सिंबल है वो है मेनी साइड। और सेम आपको
  408. 15:52दिखाई देगा यूज़र्स और रेकमेंडेशन में। ठीक
  409. 15:55है? यहां पर भी एक रिलेशनशिप है। तो
  410. 15:57यूज़र्स है वन साइड ऑफ़ द रिलेशनशिप और
  411. 15:59रेकमेंडेशंस हैं मेनी साइड ऑफ दी
  412. 16:01रिलेशनशिप। तो एक यूजर के अगेंस्ट मल्टीपल
  413. 16:04रेकमेंडेशंस हो सकते हैं। और हर
  414. 16:07रेकमेंडेशन एक यूजर को बिलोंग तो करेगा
  415. 16:09ही। ठीक है? और इसीलिए देखिए आप ये
  416. 16:12रिलेशनशिप के बेसिस पे आप देखोगे तो आपको
  417. 16:14फील्ड्स और ज्यादा समझ में आएंगे। ठीक है?
  418. 16:16तो अगर आप यूज़र्स और एक्टिविटी में देखते
  419. 16:18हो तो यूज़र्स और एक्टिविटी में लिंकिंग
  420. 16:21है। ठीक है? तो देखिए यहां पर हर
  421. 16:23एक्टिविटी के अगेंस्ट आपको यूजर आईडी
  422. 16:25दिखाई देगा। तो इसका मतलब आप एक्टिविटी को
  423. 16:27यूजर से लिंक कर पाओ। इसके लिए हम यूजर
  424. 16:29आईडी का जो रेफरेंस है वो एक्टिविटी टेबल
  425. 16:32में स्टोर कर रहे हैं। ठीक है? यूजर के
  426. 16:35अगेंस्ट आप एक्टिविटी को लिंक कर पाओ।
  427. 16:38इसीलिए जो यूजर का रेफरेंस है उसे हम
  428. 16:40एक्टिविटी टेबल में स्टोर कर रहे हैं। तो
  429. 16:42यहां पर यूजर आईडी आपको दिखाई देगा। और ये
  430. 16:44यूजर आईडी लिंक करता है यूज़र्स को। हर
  431. 16:46एक्टिविटी लिंक करता है यूज़र्स को। ठीक
  432. 16:48है? और रेकमेंडेशंस में भी सेम होगा। आपको
  433. 16:51यूजर आईडी दिखाई देगी और हर रेमेंडेशन
  434. 16:53लिंक करती है यूज़र्स को और यहां पर एक और
  435. 16:56चीज दिखाई देगी जो कि है एक्टिविटी आईडी।
  436. 16:57तो हर रेमेंडेशन लिंक करेगी एक्टिविटी को
  437. 17:00भी। तो हर रेकमेंडेशन दो जगह पर लिंक कर
  438. 17:02रही है। एक तो एक्टिविटी को कि ये किस
  439. 17:04एक्टिविटी की रेकमेंडेशन है और यूज़र्स को
  440. 17:07भी कि ये किस यूजर की रेकमेंडेशन है। ठीक
  441. 17:10है? तो इस तरीके की रिलेशनशिप बनते जा रही
  442. 17:12है। ठीक है? तो उम्मीद करता हूं ये थोड़ा
  443. 17:16सा क्लियर हुआ और ये सारी जो रिलेशनशिप है
  444. 17:17इसको हम डेटाबेस में रिप्रेजेंट करेंगे।
  445. 17:20प्राइमरी की और फॉरेन की रिलेशनशिप की मदद
  446. 17:22से। ठीक है? और देखिए हमारे पास सारी की
  447. 17:26सारी चीजें हैं यहां पर एंटिटी रिलेशनशिप
  448. 17:28डायग्राम में जो कि प्राइमरी कीज़ मेंशंड
  449. 17:30है और फॉरेन की भी हमने मेंशन कर रखी है
  450. 17:33इसी डायग्राम में। ठीक है? तो उम्मीद करता
  451. 17:36हूं यह सारी की सारी चीजें क्लियर हो गई
  452. 17:38है। देखिए एंटिटी रिलेशनशिप डायग्राम आपको
  453. 17:40डेटाबेस डिजाइन का कंप्लीट अंदाजा देता है
  454. 17:44कि डेटाबेस में किस तरीके का डेटा स्टोर
  455. 17:47हो रहा है। कैसे स्टोर हो रहा है, कैसे वो
  456. 17:49एक दूसरे को लिंक कर रहा है। ये सारी
  457. 17:51चीजें आपको यहां पर ये डायग्राम देखकर समझ
  458. 17:53में आ जाएंगी। ठीक है? आगे चलके आपको
  459. 17:55कॉम्प्लेक्स डायग्राम्स भी देखने की आदत
  460. 17:57होनी चाहिए। ठीक है? तो ये कैसे काम करता
  461. 17:59है? यह काफी जरूरी है और इसके बिहाफ पर आप
  462. 18:02इसी को ट्रांसलेट करोगे अ एक पर्टिकुलर
  463. 18:06डेटाबेस में तो इसी के बिहाफ पर आप एंटटीज़
  464. 18:08डिफाइन करोगे। इसी के बिहाफ पर हम डेटाबेस
  465. 18:11क्रिएट करेंगे और हमारा जो डेटाबेस है वो
  466. 18:13क्रिएट होगा और फिर हम उसके ऊपर कोड
  467. 18:15लिखेंगे सब कुछ। ठीक है? और ये ऐसा नहीं
  468. 18:18है कि ये फाइनल है। ठीक है? ये भी मैं एक
  469. 18:21चीज़ बता दूं। देखो अगर आप एक अजाइल टीम
  470. 18:23में काम करते हो तो ऐसा नहीं है कि ये
  471. 18:25आपने बना लिया और यह फाइनल हो गया। ऐसा
  472. 18:27नहीं होता है। ठीक है? आपने यह बनाया। हो
  473. 18:30सकता है मैंने चलिए मैं एक कंपनी में काम
  474. 18:31कर रहा हूं। मैंने इस एप्लीकेशन पे काम
  475. 18:34किया और मैंने इस तरीके का मुझे
  476. 18:35रिक्वायरमेंट आई तो मैंने ये बना दिया।
  477. 18:36वर्जन 1.0 ल्च हो गया। अब वर्जन 2.0 में
  478. 18:39हो सकता है इन एक्टिविटीज़ के साथ कैलोरीज़
  479. 18:42और फ़ूड का डेटा भी ट्रैक करना है। हो सकता
  480. 18:44है फिटनेस एप्लीकेशन बढ़ता जा रहा है और
  481. 18:46डेटा हमें ट्रैक करना है। तो एक और एंटिटी
  482. 18:47आ जाएगी और थोड़ा सा स्ट्रक्चर यहां वहां
  483. 18:49होगा। तो सारे स्ट्रक्चर को हम अकोमोडेट
  484. 18:51करेंगे डेटाबेस में। ठीक है? और नई ईआर
  485. 18:54डायग्राम बनेगी। फिर वो स्ट्रक्चर को
  486. 18:55अकोमोडेट किया जाएगा और फिर एक नई रिलीज़
  487. 18:58की जाएगी। तो ये जो है चेंजेस जो है
  488. 19:01कंटीन्यूअस चलता रहता है। ऐसा नहीं है कि
  489. 19:03आपने बना दिया और वो पत्थर की लकीर है वो
  490. 19:05हट नहीं सकती। ऐसा नहीं होता है। ठीक है?
  491. 19:07सेम वे में सिमिलर वे में यहां पर जो भी
  492. 19:11आप देख रहे हो। ठीक है? हो सकता है अगर
  493. 19:13एप्लीकेशन बनाने के दौरान अगर हमें कुछ और
  494. 19:16इंप्रूवमेंट्स करने का अ यानी कि करने का
  495. 19:20स्कोप हो या कुछ चेंज यहां वहां करने का
  496. 19:22स्कोप हो तो वो हम करेंगे। ठीक है? ऐसा
  497. 19:24नहीं है कि ये हमने देख लिया और यही
  498. 19:26बनाएंगे। ठीक है? लेकिन चेंजेस के आगे कुछ
  499. 19:28लॉजिक होना चाहिए। या तो वो क्लाइंट की
  500. 19:29रिक्वायरमेंट होनी चाहिए या तो कुछ
  501. 19:33यू नो अ गुड सजेशंस होने चाहिए
  502. 19:35इंजीनियरिंग के एंड के ओर से। जैसे कि अगर
  503. 19:38आप एक डेटा को किसी तरीके से स्टोर कर रहे
  504. 19:40हो और वो उस तरीके से स्टोर नहीं होना
  505. 19:43चाहिए। तो वो ऐसा सजेशन आ सकता है कि ऐसे
  506. 19:45नहीं ऐसे होना चाहिए। ठीक है? एंड देन फिर
  507. 19:47उसका अप्रूवल प्रोसेस होता है। तो इस
  508. 19:49तरीके से काम होता है। ठीक है? अजाइल
  509. 19:51टीम्स में देखिए ये एक बार रिक्वायरमेंट
  510. 19:53आती है आपने बना ली एज अ डेवलपर फिर जो
  511. 19:56नेक्स्ट रिक्वायरमेंट आएंगी उस पे आप लग
  512. 19:57जाओगे तो ये प्रोसेस चलता रहेगा ठीक है
  513. 20:00ऐसा नहीं है कि आपने एक बार बना लिया और
  514. 20:01वो फ्रीज़ हो जाता है आपको चीजों से
  515. 20:03इमोशनली कनेक्ट नहीं होना है आपने देखिए
  516. 20:05आप कोड लिखते हो काफी कुछ बनाते हो काफी
  517. 20:07एफर्ट टेकिंग काम है मानता हूं लेकिन ऐसा
  518. 20:10नहीं है कि आपको उसको फिर इमोशनली कनेक्ट
  519. 20:13हो जाना है ठीक है कुछ चेंजेस आते हैं तो
  520. 20:15आपको ओपन फॉर चेंज होना चाहिए ओपन फॉर
  521. 20:17इंप्रूवमेंट्स होना चाहिए इंप्रूवमेंट्स
  522. 20:18काफी जरूरी है। ठीक है? उम्मीद करता हूं
  523. 20:21यह क्लियर है। बिना टाइम को बर्बाद किए हम
  524. 20:24डेटाबेस डिजाइन और कोडिंग की ओर बढ़ेंगे
  525. 20:27और आशा करता हूं यह क्लियर रहा।
  526. 20:35तो चलिए दोस्तों आगे बढ़ते हैं और हमारा
  527. 20:38जो नेक्स्ट स्टेप है वो होने वाला है
  528. 20:40प्रोजेक्ट क्रिएशन। सो हम क्या करने वाले
  529. 20:42हैं? प्रोजेक्ट को क्रिएट करने वाले हैं
  530. 20:44और उसे हम इंटेलिजेंट में इंपोर्ट भी
  531. 20:46करेंगे। ठीक है? तो प्रोजेक्ट क्रिएशन के
  532. 20:49लिए हमारी जो फेवरेट वेबसाइट है स्प्रिंग
  533. 20:51इनिशियलाइजर जो हमें मिलेगी स्टारpring.
  534. 20:54पर उस पर आ जाना है। ठीक है? और यहां पर
  535. 20:57हम पूरी सेटिंग्स जो है वो हम चूज़ कर
  536. 21:00लेंगे ताकि हमें जो प्रोजेक्ट स्ट्रक्चर
  537. 21:01है वो रेडीमेड बना बनाया मिले। और हमें
  538. 21:04मैनुअली करने की जरूरत नहीं है। हमें
  539. 21:05सिर्फ चूज़ करना है और जनरेट कर लेना है।
  540. 21:08ठीक है? तो मैं बता देता हूं कैसे। यहां
  541. 21:09पे सबसे पहले तो मेवन चूज़ कर लीजिए।
  542. 21:11क्योंकि मैं मेवन का इस्तेमाल करने वाला
  543. 21:12हूं। अगर आप ग्रेडल इस्तेमाल करना चाहते
  544. 21:14हो कीजिए। कोई दिक्कत नहीं है। लेकिन मैं
  545. 21:16मेव इन कर रहा हूं। यहां पर लेटेस्ट वर्जन
  546. 21:18ऑफ स्प्रिंग बूट जो कि नॉन स्नैपशॉट वर्जन
  547. 21:20है उसे चूज़ कर लीजिए। तो अब जब मैं यह
  548. 21:23वीडियो रिकॉर्ड कर रहा हूं जो लेटेस्ट
  549. 21:24वर्जन है वो 4.0 है। ठीक है? यानी 4.0 तो
  550. 21:28ये लेटेस्ट वर्जन है और हो सकता है आपको
  551. 21:304.1, 4.2, 4.5 ऐसे दिखाई दे क्योंकि जब भी
  552. 21:34मैं वेबसाइट पर आता हूं एक नया पॉइंट तो
  553. 21:37इंक्रीस हो ही जाता है। ठीक है? तो नए
  554. 21:38वर्जनंस आते रहते हैं। तो ऐसे घबराने की
  555. 21:40कोई बात नहीं है। ठीक है? ये वर्जन 4 जो
  556. 21:43है उसमें थोड़े से चेंजेस हुए हैं। तो हम
  557. 21:45यूज़ करेंगे वर्जन 4.0 तो आपको जो चेंजेस
  558. 21:48हुए हैं वो भी समझ में आ जाएंगे। ठीक है?
  559. 21:51लेकिन फिलहाल अगर आप कोई दूसरा वर्जन देख
  560. 21:53रहे हो तो ऐसे घबराइएगा नहीं क्योंकि ये
  561. 21:55वर्जन अ यानी इतना डिफरेंस नहीं होगा।
  562. 21:58पॉइंट हो सकता है 4.01 आ जाए, 4.02, 4.20
  563. 22:03आ जाए, 4.30 ऐसा आते रहेंगे वर्जनंस। ठीक
  564. 22:06है? मैं का मैंने काफी काम किया है
  565. 22:07स्प्रिंग बूट पर और नए वर्शन्स आते रहते
  566. 22:09हैं अक्सर। तो घबराने की जरूरत नहीं है।
  567. 22:11लोग क्या है घबरा जाते हैं। अच्छा पॉइंट
  568. 22:12वन का डिफरेंस है तो मेरा वर्जन गलत है।
  569. 22:14अब ये जो वीडियो में वर्जन है वो मैं कैसे
  570. 22:17लेके आऊं? ऐसे नहीं होता है। जो आपको
  571. 22:18लेटेस्ट दिख रहा है वो चूज़ कर लेना है।
  572. 22:20ठीक है? नॉन Snaps चूज़ करना है क्योंकि
  573. 22:22Snaps वर्जनंस क्या है? एक्चुअली प्रीव्यू
  574. 22:23वर्जनंस होते हैं। थोड़े अनस्टेबिलिटी हो
  575. 22:25सकती है। ठीक है? तो देखिए 4.0.1 तो आ भी
  576. 22:28गया है। Snapshot में है अभी। और फिर ये
  577. 22:30जैसे ही Snaps से निकलेगा तो 4.0.1
  578. 22:33यहां पर आ जाएगा। 4.00 शायद हट भी सकता है
  579. 22:36यार। ये ये 3K के वर्जनंस हट सकते हैं और
  580. 22:39यहां पर 4.0.2 या कोई नया वर्जन आ जाएगा।
  581. 22:41ठीक है? तो ऐसे अपडेट्स आते रहते हैं। तो
  582. 22:43नॉन स्nश वर्जन मैंने चूज़ कर लिया है।
  583. 22:45यहां पर ग्रुप पर आ जाना है और ग्रुप में
  584. 22:47लिखना है कॉम डॉट
  585. 22:50प्रोजेक्ट। ठीक है? और यहां पर मैं
  586. 22:51आर्टिफेक्ट में लिख दूंगा फिटनेस। ओके?
  587. 22:54फिटनेस मोनोलिथ इस तरीके से। ठीक है? और
  588. 22:58इसको हटा देते हैं हम यहां से। अ
  589. 23:01डिस्क्रिप्शन आप रख सकते हो चाहिए तो। ठीक
  590. 23:03है? ऐसी कोई दिक्कत वाली बात नहीं है। और
  591. 23:05यहां पर जो पैकेज है वो पैकेज भी आप बेटर
  592. 23:08नेम दे सकते हो। तो एक बेटर नेम होगा कॉम
  593. 23:12अ प्रोजेक्ट और फिटनेस। ये हफन मोनोलिथ को
  594. 23:15हटा देता हूं क्योंकि पैकेज नेम में हफन
  595. 23:17थोड़ा सही नहीं लगेगा। ठीक है? तो ऐसे हम
  596. 23:19रखेंगे पैकेज और यहां पर जार प्रॉपर्टीज
  597. 23:22फाइल और वर्जन मैं सेलेक्ट कर लेता हूं।
  598. 23:24jवा 25 या 21 कुछ भी सेलेक्ट कर सकते हो।
  599. 23:2625 भी सेलेक्ट कर सकते हो। ऐसी कोई दिक्कत
  600. 23:28वाली बात है नहीं। ठीक है? इतना आपने
  601. 23:30सेलेक्ट कर लिया। और यहां पर आना है आपको
  602. 23:32और आप एक स्प्रिंग बूट का प्रोजेक्ट बना
  603. 23:33रहे हो तो आपको यहां पर वेब चूज़ कर लेना
  604. 23:35है। ठीक है? एक और डिपेंडेंसी मैं ऐड कर
  605. 23:37देता हूं। अ लेकिन फिलहाल नहीं करते। चलो
  606. 23:40बाद में हम जैसे डिपेंडेंसी चाहिए होगी हम
  607. 23:42ऐड करते जाएंगे। अब वेब का मतलब क्या है?
  608. 23:44देखिए वेब का मतलब है हम एक वेब प्रोजेक्ट
  609. 23:46बना रहे हैं। ठीक है? और यहां पर आप जाओगे
  610. 23:48एक्सप्लोर में और अगर आप एक एक्सपीरियंस
  611. 23:51स्प्रिंग बबू डेवलपर हैं या आप कोई ऐसे
  612. 23:53डेवलपर हैं जिन्होंने स्प्रिंग वर्जन
  613. 23:56स्प्रिंग बूट वर्जन 3 या वर्जन 3 पर काम
  614. 23:59किया है। ठीक है? तो आपको दिखाई देगा यहां
  615. 24:01पर ये जो डिपेंडेंसीज़ है वेब ऐड करने पर
  616. 24:03वो चेंज हो चुकी है वर्जन 4.0 में। ठीक
  617. 24:06है? तो यहां पर देखिए आपको दिखाई देगा
  618. 24:07स्प्रिंग बूट स्टार्टर वेब एमवीसी पहले
  619. 24:10क्या? स्प्रिंग बूट स्टार्टर वेब खाली ऐड
  620. 24:12होता था। अ स्प्रिंगboot 3 की बात कर रहा
  621. 24:15हूं। ठीक है? और आर्टिफेक्ट में यहां पर
  622. 24:17एमवीसी अ वेब एमवीसी टेस्ट आ रहा है। तो
  623. 24:20पहले क्या आता था? स्प्रिंग बूट स्टार्टर
  624. 24:23वेब टेस्ट ऐसे आता था। ठीक है? तो ये क्या
  625. 24:26है? ये थोड़ा कोड जो है मॉड्यूलराइज़ हो
  626. 24:28चुका है। जो डिपेंडेंसीज़ है थोड़ी
  627. 24:29मॉड्युलराइज़ हो चुकी है। तो अब यहां पर अह
  628. 24:32जो वेब एमवीसी यानी कि जो एमवीसी
  629. 24:35आर्किटेक्चर है उसकी टेस्टिंग के लिए जो
  630. 24:36भी डिपेंडेंसी चाहिए वो वेब एमबीसी टेस्ट
  631. 24:38में है। और यहां पर ये वेब एमवीसी जो
  632. 24:41मॉड्यूल है इसमें सारी की सारी जो
  633. 24:44डिपेंडेंसीज़ है जो हमें चाहिए अह जैसे कि
  634. 24:47स्प्रिंग एमबीसी, डिस्पैच सर्,
  635. 24:49कंट्रोलर्स, व्यू रिज़ॉल्वर्स, जैक्सिन ये
  636. 24:51सारी चीजें इसमें ऐडेड है। तो, ये
  637. 24:53अननेसेसरी चीज़ चीज़ हैं। उसको हटा दिया गया
  638. 24:55है और यह नया नाम लाया गया है ताकि जो
  639. 24:57डिपेंडेंसी है वो छोटी और ऑप्टिमाइज हो
  640. 25:00पाए। ठीक है? तो इतना हो गया है और बाकी
  641. 25:02और कुछ तो करने की जरूरत नहीं है। तो हम
  642. 25:04क्या करेंगे? यहां पर जनरेट क्लिक कर
  643. 25:05दूंगा और जो प्रोजेक्ट जनरेट होगा उसे मैं
  644. 25:08मेरी जो सिस्टम है उसे वहां पर कहीं तो
  645. 25:12स्टोर कर दूंगा जहां पर भी मैं काम करना
  646. 25:13चाहता हूं। तो एक वर्कस्पेस का फोल्डर बना
  647. 25:15लीजिए जहां पर आप काम करेंगे। और यहां पर
  648. 25:18आपको जो ज़िप फाइल मिलेगी उसे स्टोर कर
  649. 25:20दीजिए वहां पर। तो यह जो ज़िप फाइल जनरेट
  650. 25:22हुई थी उसे मैंने यहां पर स्टोर कर दिया
  651. 25:24है। ठीक है? और इसे अब मैं अनज़िप भी कर
  652. 25:27दूंगा। तो यहां पर आपके पास जो भी अ लाइक
  653. 25:30एक्सट्रेक्टर होगा ठीक है? उसे आप यूज़ कर
  654. 25:34सकते हो। ठीक है? इसको सिंपल अनज़िप करना
  655. 25:36है और आपको देखिए ये सारी फाइल्स यहां पर
  656. 25:38मिल जाएगी। अब हमें क्या करना है? आपने
  657. 25:39इसको अनज़िप कर लिया। ठीक है? ये जो ज़िप
  658. 25:41वर्जन है इसको आप डिलीट कर सकते हो। इसकी
  659. 25:44जरूरत तो है नहीं। अब आप यहां पर आ जाइए।
  660. 25:46ठीक है? इंटेलिजेंट पर। इंटेलिजेंट पर यह
  661. 25:48वेलकम स्क्रीन है। सारे प्रोजेक्ट्स को
  662. 25:49क्लोज कर दीजिए। फ्रेश स्टार्ट करेंगे।
  663. 25:51यहां पर ओपन पर क्लिक करना है आपको। ओपन
  664. 25:53पर क्लिक करके जहां पर आपने जो अ
  665. 25:56प्रोजेक्ट है उसे अनज़िप किया है वहां पर
  666. 25:58जाइए। उस डायरेक्टरी में नेविगेट कीजिए और
  667. 26:00यहां पर आपको प्रोजेक्ट दिख जाएगा। और
  668. 26:02यहां पर pmsl जो है उसे सेलेक्ट कर लीजिए।
  669. 26:04आप pmsl को सेलेक्ट क्यों नहीं क्यों कर
  670. 26:05रहे हैं हम? ये फोल्डर को सेलेक्ट क्यों
  671. 26:07नहीं कर रहे? क्योंकि pmxl मेवन की
  672. 26:10प्रोजेक्ट फाइल है और इसमें प्रोजेक्ट की
  673. 26:12पूरी की पूरी इंफॉर्मेशन है। तो अगर आप
  674. 26:14इंटेलिजें में प्रोजेक्ट को एज ए मेवन
  675. 26:17प्रोजेक्ट इंपोर्ट करना चाहते हैं तो pmxl
  676. 26:19को सेलेक्ट करना जरूरी है। इससे इंटेलिजें
  677. 26:21को पता होगा कि अच्छा ये जो प्रोजेक्ट आप
  678. 26:23इंपोर्ट कर रहे हो ये एक मेवन प्रोजेक्ट
  679. 26:25है। तो यहां पर जो मेवन की जो फीचर्स होते
  680. 26:27हैं वो उसे इनेबल कर देगा आईडी में। देखिए
  681. 26:29तो ये समझ गया pmsl इज़ अ प्रोजेक्ट फाइल।
  682. 26:32वुड यू लाइक टू ओपन द प्रोजेक्ट? जी हां,
  683. 26:34मैं प्रोजेक्ट को ओपन करना चाहता हूं और
  684. 26:36सारे प्रोजेक्ट्स को ट्रस्ट कर दीजिए इस
  685. 26:37फोल्डर में क्योंकि यह फोल्डर मैं ही बना
  686. 26:39रहा हूं। ठीक है? यह जनरली एक सिक्योरिटी
  687. 26:41फीचर है जहां पर वह पूछता है। और यहां पर
  688. 26:42देखिए ये रीड कर रहा है सारे प्रोजेक्ट को
  689. 26:44और यह देखिए लोड करने बोल रहा है मेवन
  690. 26:46प्रोजेक्ट तो लोड कर लीजिए। मेव्स बिल्ड
  691. 26:48स्क्रिप्ट फाउंड और देखिए डिपेंडेंसीज
  692. 26:50ऑटोमेटिकली रॉल्व कर रहा है। तो ये सारे
  693. 26:52जो फीचर्स है जहां पर डिपेंडेंसी
  694. 26:54ऑटोमेटिकली रॉल्व हो रही है। यानी कि आपने
  695. 26:57कुछ चेंज किया तो सारी डिपेंडेंसीज ऑटो
  696. 26:59फैच हो रही है। ये सारी जो चीजें हैं ये
  697. 27:01इंटेलिजें को करने के लिए उसे पता होना
  698. 27:04चाहिए कि अच्छा ये मेविन प्रोजेक्ट है। तो
  699. 27:06देखिए प्लगइंस भी डाउनलोड हो रहे हैं। सब
  700. 27:08कुछ डाउनलोड हो रहा है यहां पर। देखिए ठीक
  701. 27:10है? तो ये डाउनलोड हो चुके हैं और यह जो
  702. 27:13प्रोजेक्ट है रेडी है इस्तेमाल के लिए। और
  703. 27:16अगर आप चाहो तो इसे रन कर टेस्ट भी कर
  704. 27:18सकते हो। यहां पर फिटनेस मोलित में जाकर
  705. 27:20इसे रन भी कर सकते हो। और यहां पर अगर आप
  706. 27:22जाओगे तो pmxl में आपको यहां पर इसकी जो
  707. 27:26फाइल है वो भी दिखाई देंगी। ठीक है? ये
  708. 27:29अमxml
  709. 27:31फाइल है। और जो हमने वहां पर जो
  710. 27:32डिपेंडेंसीज देखी थी वो सारी डिपेंडेंसी
  711. 27:34यहां पर दिखाई देगी। और अगर आप इसे रन
  712. 27:36करते हो देखिए अभी तो फिलहाल इस प्रोजेक्ट
  713. 27:38में कुछ है नहीं। ठीक है? कुछ कोड लिखा ही
  714. 27:40नहीं है हमने। ठीक है? बस इसे ले लिया है
  715. 27:42लोकल मशीन पर और इसको इस्तेमाल करना चाह
  716. 27:45रहे हैं। तो देखिए यह रन तो हो ही जाएगा।
  717. 27:48ठीक है? और यह रन होगा 8080 पर। तो अगर आप
  718. 27:51चाहो तो इसे एक्सेस भी कर सकते हो। एक्सेस
  719. 27:54करके देखते हैं क्या दिखता है। लोकल होस्ट
  720. 27:56कोलन 880 ऐसे तो देखिए यहां पर कुछ है
  721. 28:00नहीं। एरर आ रहा है 404 यानी कि आपने यहां
  722. 28:03पर इस एंड पॉइंट पर कुछ बनाया नहीं है तो
  723. 28:05बट ठीक है लेकिन रिक्वेस्ट तो आ रही है और
  724. 28:08यहां पर देखिए आपको एरर भी दिखाई दे रहा
  725. 28:10है। ठीक है तो प्रोजेक्ट सेटअप तो डन है
  726. 28:12और बढ़ते हैं नेक्स्ट स्टेप की ओर।
  727. 28:20अब हमें क्या करना है? अब हमें और एंटिटीज़
  728. 28:24क्रिएट करनी है और फिर उसके बीच में जो
  729. 28:26रिलेशनशिप्स हैं वह भी डिफाइन करने हैं।
  730. 28:28ठीक है? तो सबसे पहले मैं क्या करूंगा?
  731. 28:29यहां पर आ जाएंगे मॉडल्स में और यहां पर
  732. 28:31मैं एक और नई क्लास बना लूंगा जिसका नाम
  733. 28:34है एक्टिविटी। ठीक है? ये एक्टिविटी नाम
  734. 28:37की क्लास बन गई। यहां पर आ जाएंगे। सबसे
  735. 28:40पहला काम हमें आदत डाल लेनी चाहिए कि अगर
  736. 28:43आप कोई भी मॉडल वगैरह बना रहे हो उसके ऊपर
  737. 28:45एंटिटी तो मार्क करनी ही है। ठीक है? और
  738. 28:47यहां पर इसमें आईडी डिफाइन करना भी जरूरी
  739. 28:49है। तो यहां पर ये जो आईडी है इसे मैं ले
  740. 28:52लूंगा। यहां पर इसे ऐड कर दूंगा। ठीक है?
  741. 28:55और यहां पर मैं मेंशन करूंगा प्राइवेट।
  742. 29:00ठीक है? और यहां पर इंटीजर
  743. 29:03ड्यूरेशन इस तरीके से और यहां पर प्राइवेट
  744. 29:08कैलरीज़ बर्न। ठीक है? तो देखिए ये सारी जो
  745. 29:11है डिटेल्स है ना ये एक्टिविटी रिलेटेड
  746. 29:13है। तो इसमें कैलोरीज़ बर्न ये सारी
  747. 29:15डिटेल्स आएंगी। ठीक है? जैसे कि स्टार्ट
  748. 29:17टाइम आएगा। तो यहां पर मैं लिखूंगा
  749. 29:20प्राइवेट लोकल डेट एंड टाइम और यहां पर
  750. 29:23लिख दूंगा स्टार्ट टाइम इस तरीके से और
  751. 29:27फिर यहां पर मैं लिख दूंगा अ एक हिसाब से
  752. 29:31प्राइवेट क्रिएटेड एट और क्रिएटेड डेट और
  753. 29:34लोकल डेट ये भी मिल जाएगी। ठीक है?
  754. 29:36क्रिएटेड एट तो ये मैं कॉपी पेस्ट कर
  755. 29:39दूंगा यहां पर। क्रिएटेड एट और अपडेटेड
  756. 29:41एट। ठीक है? इतना मैंने डिफाइन कर दिया।
  757. 29:44और दूसरी चीज मुझे ना कुछ इनम डेटा भी
  758. 29:48स्टोर करना होगा। जैसे कि एक्टिविटी की
  759. 29:50टाइप क्या है? ठीक है? एक्टिविटी की टाइप
  760. 29:51क्या है? तो मैं क्या करूंगा? एक सेपरेट
  761. 29:53क्लास बना लूंगा यहां पर और उसका नाम
  762. 29:56दूंगा एक्टिविटी टाइप। ऐसे एक्टिविटी
  763. 29:59टाइप। तो ये एक क्लास है। एक हिसाब से
  764. 30:01मास्टर लिस्ट होने वाली है ये। ठीक है? एक
  765. 30:03हिसाब से मास्टर लिस्ट होने वाली है।
  766. 30:05जिसमें एक्टिविटी की जो टाइप्स है उसे हम
  767. 30:08डिफाइन करेंगे। लेकिन ये क्लास नहीं होने
  768. 30:09वाली है। सॉरी ये रहने वाली है इनम। ठीक
  769. 30:11है? इनम jवा में एक टाइप है जहां पर आप जो
  770. 30:15फिक्स्ड वैल्यूज़ है उसे स्टोर कर सकते हो।
  771. 30:17ठीक है? तो यहां पर देखिए मैं सब स्टोर कर
  772. 30:19दूंगा। मैं जैसे कि वॉकिंग, अ रनिंग,
  773. 30:22वॉकिंग और फिर साइकिलिंग।
  774. 30:26ठीक है? तो ये पूरा फिल कर देता हूं मैं।
  775. 30:28तो ये देखिए ये मैंने मेंशन कर दिया है।
  776. 30:29यहां पर जो भी आप लिस्ट ऐड करना चाहो अपने
  777. 30:32एप्लीकेशन में आप उसे इस तरीके से मेंशन
  778. 30:34कर सकते हो। और फिर ये जो इनम की जो
  779. 30:37वैल्यूज़ है इसे आपको मैप करना है यहां पर।
  780. 30:40ठीक है? एक्टिविटीज़ टाइप में। तो यहां पर
  781. 30:42मैं क्या करूंगा? प्राइवेट और यहां पर
  782. 30:43लिखूंगा एक्टिविटी टाइप और फिर यहां पर
  783. 30:46लिख दूंगा टाइप। ठीक है? और इसमें जो भी
  784. 30:49डेटा जाएगा ठीक है? वो इनमरेटेड है। तो
  785. 30:52यहां पर मैं इन्यूमरेटेड एनोटेशन का
  786. 30:53इस्तेमाल करूंगा। और यहां पर लिखूंगा इनम
  787. 30:56टाइप स्ट्रिंग। तो ये मैंने क्यों लिखा
  788. 30:59है? इनम टाइप स्ट्रिंग इस तरीके से। ठीक
  789. 31:01है? इसका जो इसकी जो वजह है वो काफी
  790. 31:04क्लियर है। मैं आपको एक्सप्लेन कर देता
  791. 31:05हूं। देखिए आप कभी भी इनम टाइप का
  792. 31:07इस्तेमाल करते हो डेटाबेस लेवल पर तो यहां
  793. 31:09पर होगा क्या कि जो इसका इंडेक्स है 0 1 2
  794. 31:13वो स्टोर होगा। ठीक है? अगर मान लीजिए मैं
  795. 31:16साइकिलिंग स्टोर कर रहा हूं तो 1 2 3 इस
  796. 31:18ऐसी वैल्यू स्टोर होगी। लेकिन डेटाबेस
  797. 31:21लेवल पर मुझे वैल्यू्यूज नहीं चाहिए। मैं
  798. 31:22चाहता हूं कि स्ट्रिंग स्टोर हो।
  799. 31:24एक्टिविटी का नाम स्टोर हो। जैसे कि
  800. 31:25वॉकिंग रनिंग डेटाबेस लेवल पर। तो इसके
  801. 31:28लिए मैं इनम टाइप स्ट्रिंग मेंशन कर रहा
  802. 31:30हूं। अगर वो मेंशन नहीं करूंगा तो वो उस
  803. 31:32तरीके से स्टोर नहीं होगा। ठीक है? तो ये
  804. 31:34हो गया यहां तक और फिर एक्टिविटी टाइप हो
  805. 31:37चुकी है। एडिशनल मैट्रिक्स नाम का एक
  806. 31:41फील्ड आएगा यहां पर। ठीक है? तो मैं क्या
  807. 31:43करूंगा? यहां पर लिखूंगा प्राइवेट
  808. 31:46मैप। ठीक है? और यहां पर मैं लिखने वाला
  809. 31:48हूं अ स्ट्रिंग ऑब्जेक्ट ऐसे। ठीक है? और
  810. 31:53यहां पर लिख दूंगा एडिशनल मैट्रिक्स। तो
  811. 31:55कोई भी एडिशनल मैट्रिक्स हो जो आपको
  812. 31:57डेटाबेस में स्टोर आप करना चाह रहे हो।
  813. 32:00ठीक है? एडिशनल।
  814. 32:02ठीक है? है जो आप डेटाबेस में स्टोर करना
  815. 32:04चाह रहे हो तो मैं उसे मैप के फॉर्म में
  816. 32:06एक्सेप्ट करूंगा। ठीक है? मैप के फॉर्म
  817. 32:08में लेकिन डेटाबेस में ये स्टोर होगा
  818. 32:09जेएसएन के फॉर्म में। तो यहां पर मैं
  819. 32:11लिखूंगा कॉलम कॉलम एनोटेशन और यहां पर
  820. 32:13कहूंगा कॉलम डेफिनेशन
  821. 32:16कॉलम डेफिनेशन। अच्छा सॉरी ये ऐसे नहीं
  822. 32:19आएगा। कॉलम डेफिनेशन स्मॉल में आएगा। और
  823. 32:22फिर यहां पर लिख दूंगा jसन इस तरीके से।
  824. 32:24ठीक है? इसका मतलब ये जो डेटा है ये jसन
  825. 32:26की तरह स्टोर होना है डेटाबेस में। ठीक
  826. 32:28है? और फिर यहां पर लिख दूंगा जेडीबीसी
  827. 32:31टाइप कोड। अच्छा सॉरी जेडीबीसी टाइप कोड
  828. 32:34और फिर यहां पर लिख दूंगा एसक्यूएल टाइप्स
  829. 32:38और
  830. 32:40टाइप्स और यहां पर लिख दूंगा डॉट। देखिए
  831. 32:43यहां पर सारे टाइप्स हैं। तो यहां पर jसन
  832. 32:45सेलेक्ट कर दूंगा। ठीक है? तो यहां पर ये
  833. 32:48सारी चीजें लिखने के बाद हमें हमारे पास
  834. 32:51एक चीज़ ये हो जाएगी कि हम डेटाबेस में जो
  835. 32:53है वो अ ये स्टोर कर सकते हैं। जेसन
  836. 32:56वैल्यूज़ स्टोर कर सकते हैं। ठीक है? इतना
  837. 32:58हो गया और तो मैंने सब कुछ डिफाइन तो कर
  838. 33:01ही लिया है और कुछ ऐसा दिख तो नहीं रहा
  839. 33:03पेंडिंग। ठीक है? इतना करने के बाद हम
  840. 33:06क्या करेंगे? अ इसको रन करके देखते हैं एक
  841. 33:09हिसाब से। ठीक है? यहां पर जो अनवांटेड
  842. 33:11इंपोर्ट्स है उसको मैं हटा देता हूं। इसको
  843. 33:14रीरन करके देखते हैं। तो आइडियली होना
  844. 33:15क्या चाहिए? एक्टिविटी नाम की जो टेबल है
  845. 33:18वो हमें दिखाई देनी चाहिए डेटाबेस लेवल
  846. 33:20पर। ठीक है? तो यह रन हो चुका है। यहां पर
  847. 33:23आएंगे। यहां पर इसको रिफ्रेश कर देंगे और
  848. 33:24एक्टिविटी आपको दिखाई दे रहा है। देखिए इस
  849. 33:27तरीके से। ठीक है? एक्टिविटी टेबल भी बन
  850. 33:29चुकी है। तो अब यह बनने के बाद अ
  851. 33:32रिकमेंडेशंस की टेबल जो है वो भी बना सकते
  852. 33:34हैं हम यहां पर। ठीक है? तो यहां पे
  853. 33:37रिकमेंडेशंस नाम की एक रिकमेंडेशन नाम
  854. 33:41दूंगा मैं इसे। ठीक है? ये मैंने बना लिया
  855. 33:43है। अब रिकमेंडेशन में भी मैं सारी की
  856. 33:45सारी फील्ड्स जो है वो डिफाइन करूंगा। तो
  857. 33:47सबसे पहले तो आईडी फील्ड तो आएगी ही। तो
  858. 33:50आईडी को मैं ऐसे ही कॉपी पेस्ट कर देता
  859. 33:51हूं। ठीक है? ये सेम आईडी फील्ड आएगी और
  860. 33:54यहां पर मैं लिख दूंगा एंटीटी इस तरीके
  861. 33:56से। ठीक है? और यहां पर मैं लिख दूंगा अ
  862. 34:01प्राइवेट स्ट्रिंग और फिर टाइप कि ये किस
  863. 34:05टाइप का रेकमेंडेशन है। ठीक है? फिर मैं
  864. 34:08रेकमेंडेशन को भी स्टोर करूंगा। प्राइवेट
  865. 34:11स्ट्रिंग और फिर रेकमेंडेशन।
  866. 34:15ठीक है? और फिर यहां पर इंप्रूवमेंट्स को
  867. 34:19स्टोर करना है मुझे। तो इंप्रूवमेंट्स को
  868. 34:21मैं स्टोर करूंगा या मैं रखूंगा ऐप में
  869. 34:24लिस्ट के तौर पर और यहां पर मैं लिखूंगा
  870. 34:26इंप्रूवमेंट्स इस तरीके से। ठीक है? और
  871. 34:30फिर मुझे सजेशंस भी चाहिए यहां पर। तो
  872. 34:32यहां पर लिखूंगा सजेशंस ऐसे। ठीक है?
  873. 34:35इंप्रूवमेंट सजेशंस और मुझे चाहिए सेफ्टी
  874. 34:39के जो इंस्ट्रक्शंस है वो। ठीक है? सेफ्टी
  875. 34:42इस तरीके से। यह भी आ चुके है और यहां पर
  876. 34:45क्रिएटेड
  877. 34:47टाइम और अपडेटेड टाइम वह भी मेंशन कर
  878. 34:49दूंगा। ठीक है? तो इतनी चीज हो चुकी है।
  879. 34:52ठीक है? अब देखिए ये जो इंप्रूवमेंट
  880. 34:55सजेशन, सेफ्टी ये सारी जो चीजें हैं ये
  881. 34:57मैं चाहता हूं jसन टाइप में स्टोर हो। ठीक
  882. 35:00है? तो उसके लिए मैं फिर से मैंने जैसा
  883. 35:02यहां पर डिफाइन किया हुआ है। ये तो jसन
  884. 35:05डेटा की तरह मैं स्टोर करना चाहता हूं
  885. 35:07मेरे डेटाबेस में। तो ये मैं मेंशन कर
  886. 35:09दूंगा यहां पर। ठीक है? यहां पर भी मैं
  887. 35:11मेंशन कर दूंगा। और फिर यहां पर भी मेंशन
  888. 35:14कर दूंगा। तो तीनों जगह पर मैंने मेंशन कर
  889. 35:16दिया कि यह जो कॉलम है इसमें जो डाटा
  890. 35:18स्टोर होना है वो जेएसएन के तौर पर स्टोर
  891. 35:20होना है। ठीक है? अब देखिए जो डिफॉल्ट
  892. 35:22यहां पर रेकमेंडेशन है वो लंबी भी हो सकती
  893. 35:24है और जो डिफ़ॉल्ट साइज़ होती है कॉलम के
  894. 35:27डेटाबेस में वो 255 कररेक्टर्स की होती
  895. 35:29है। डिफ़ॉल्ट डिपेंडिंग ऑन द डेटाबेस टाइप।
  896. 35:32अगर आप कोई दूसरे टाइप का डेटाबेस होता है
  897. 35:33तो उसकी जो डिफ़ॉल्ट होगी वो अप्लाई होगी।
  898. 35:35माय सीक्वल में जितना मुझे पता है 255
  899. 35:37कररेक्टर्स की डिफॉल्ट होती है। पोस्ट
  900. 35:40ग्रेस में भी सिमिलर होता है। मैं चाहता
  901. 35:41हूं यहां पर लंबी रेकमेंडेशन सेव हो। ठीक
  902. 35:43है? तो मैं क्या करूंगा? यहां पर कॉलम लिख
  903. 35:45दूंगा। ठीक है? और यहां पर लिख दूंगा
  904. 35:47लेंथ। तो ये कॉलम एनोटेशन की मदद से आप है
  905. 35:49ना चीजों को मॉडिफाई कर सकते हो थोड़ा।
  906. 35:51यानी कि कुछ रूल्स है अगर आप चाहते हो
  907. 35:53कस्टम रूल्स तो कॉलम एनोटेशन की मदद से कर
  908. 35:55सकते हो। यहां पे मैंने लेंथ लिख दिया
  909. 35:572000। ठीक है? तो इसकी जो लेंथ है वो
  910. 35:59थोड़ी बड़ी हो जाएगी। ठीक है? तो इतना हो
  911. 36:02चुका है। अब इसको री रीरन करते हैं। ठीक
  912. 36:04है? इसको देखते हैं क्या दिखाई देता है
  913. 36:06हमें। तो रीरन करने पर सारी जो चीजें है
  914. 36:09वह डेटाबेस में दिखाई तो देनी चाहिए।
  915. 36:11देखिए आप यहां पर आते हो अगर और यहां पर
  916. 36:14इसको रिफ्रेश करता हूं तो देखिए
  917. 36:15रिकमेंडेशन भी आ गया और देखिए इस तरीके से
  918. 36:18रिकमेंडेशन आई है। ठीक है? और यहां पर अगर
  919. 36:20आप देखोगे कॉलम्स में तो ये सारे कॉलम्स
  920. 36:22हैं। ठीक है? और देखिए टाइप को आप देखोगे
  921. 36:26देखिए अगर आप कोई भी कॉलम को सेलेक्ट करते
  922. 36:28हो तो यहां पर उसकी लेंथ आपको दिखाई देगी।
  923. 36:30तो टाइप है 255 कैरेक्टर्स का। ठीक है?
  924. 36:32ठीक है? अगर मैं रिकमेंडेशन को सेलेक्ट
  925. 36:34करता हूं तो देखिए रेमेंडेशन की जो लेंथ
  926. 36:35है वो 2000 की है। क्यों है 2000 की?
  927. 36:38क्योंकि हमने कोड में लिखा हुआ है कि 2000
  928. 36:40चाहिए। ठीक है? सजेशंस को देखिए तो ये jसन
  929. 36:43है। ठीक है? यहां पर देखिए ये कॉलम्स पर
  930. 36:45अगर आप क्लिक करते हो ना और सेलेक्ट करते
  931. 36:47हो तो सारे कॉलम्स की जो डेफिनेशंस है वो
  932. 36:49आपको दिखाई देंगे। यहां पर देखिए सेफ्टी
  933. 36:51भी json है। इंप्रूवमेंट भी js स्टोर
  934. 36:53करेगा। डायरेक्ट jसन डेटाबेस में स्टोर कर
  935. 36:55देगा। डायरेक्ट आप जो jसन भेजोगे सेव करने
  936. 36:58के लिए वह पूरा का पूरा स्टोर कर देगा।
  937. 37:00रेकमेंडेशन अ तो चलो वेयर केयर है 2000
  938. 37:03स्टोर करेगा क्रिएटेड एट ये डेट टाइम है
  939. 37:06ठीक है आईडी भी डेट टाइम है तो देखिए इस
  940. 37:07तरीके से आप है ना जो यहां पर रूल्स लिखे
  941. 37:10हो आप कोड में वो किस तरीके से अप्लाई हो
  942. 37:12रहे हैं वो आप देख सकते हो ये कॉलम की मदद
  943. 37:15से ठीक है यहां पर आप देख सकते हो देखिए
  944. 37:17ये वेयर कैरयर है सब कुछ वेयर कैर है वेयर
  945. 37:19केयर 255 डिफ़ॉल्ट है अगर आपने लेंथ
  946. 37:21स्पेसिफाई नहीं करी है तो ठीक है एडिशनल
  947. 37:23मैट्रिक्स पे सेलेक्ट करते हो तो देखिए ये
  948. 37:25jसन था तो ये jसन की तरह स्टोर हो रहा है
  949. 37:27ठीक है कैलोरीज बर्न इंटीजर क्रिएटेड एट
  950. 37:31डेट टाइम है। तो ये उस तरीके से डिफाइन हो
  951. 37:34रहा है। ठीक है? तो सब कुछ सही तरीके से
  952. 37:35प्रोपोगेट हो रहा है डेटाबेस लेवल पर। ठीक
  953. 37:38है? अब हमें क्या करना है? अब हम
  954. 37:39रिलेशनशिप्स डिफाइन करेंगे। ठीक है?
  955. 37:41रिलेशनशिप डिफाइन करने के लिए हमें जीपीए
  956. 37:43एनोटेशन का इस्तेमाल करना होगा। तो मैं
  957. 37:45सबसे पहले तो एक्टिविटी पे आ जाऊंगा। ठीक
  958. 37:49है? या सबसे पहले आ जाते हैं यूजर पर। ठीक
  959. 37:51है? यूजर से शुरुआत करते हैं। ठीक है?
  960. 37:54देखिए
  961. 37:56यूजर में हमें एक लिंक बनानी है
  962. 37:58एक्टिविटीज के लिए और एक लिंक बनानी है
  963. 38:00हमें रिकमेंडेशंस के लिए। ठीक है? तो ये
  964. 38:02वन टू मेनी रिलेशनशिप होने वाला है। यानी
  965. 38:04कि एक यूजर की मल्टीपल एक्टिविटीज़ हो सकती
  966. 38:06है और एक यूजर के अगेंस्ट मल्टीपल
  967. 38:08रिकमेंडेशंस भी हमारे डेटाबेस में हो सकती
  968. 38:10है। ठीक है? तो यहां पर मैं लिखूंगा वन टू
  969. 38:13मेनी इस तरीके से। और यहां पर मैं लिख
  970. 38:16दूंगा प्राइवेट लिस्ट लिखूंगा क्योंकि अदर
  971. 38:19साइड जो रिलेशनशिप है वो मेनी साइड है। तो
  972. 38:23यहां पर लिस्ट से वो रिप्रेजेंट होगा।
  973. 38:25एक्टिविटी लिख दूंगा और यहां पर लिख दूंगा
  974. 38:27एक्टिविटीज़ इस तरीके से। और यहां पर लिख
  975. 38:29दूंगा न्यू अरे लिस्ट। ठीक है? तो इस
  976. 38:31तरीके से एक्टिविटीज़ बन गई। और ये हो गया।
  977. 38:35और यहां पर लिख दूंगा अह मैप्ड बाय। ठीक
  978. 38:37है? तो जो अदर साइड ऑफ़ रिलेशनशिप है वो
  979. 38:40यूजर फील्ड से मैप्ड है। ठीक है? एंड यहां
  980. 38:42पर कैस्केडिंग लिख दूंगा। कैस्केडिंग ऑल
  981. 38:45कैस्केडिंग का मतलब यह है कि अगर आप कोई
  982. 38:47ऑपरेशन करते हो यूजर एंटिटी पे यहां पर
  983. 38:49यानी कि क्रिएशन ऑफ यूजर एडिशन ऑफ यूजर आप
  984. 38:53डिलीट करते हो यूजर को अपडेट करते हो तो
  985. 38:55वो जो ऑपरेशंस हैं वो एक्टिविटी में भी
  986. 38:57प्रोपोगेट किए जा सकते हैं। तो यहां पर
  987. 38:58कैस्केड ऑल लिख दिया मैंने। ठीक है? यूजर
  988. 39:00को डिलीट कर दिया तो उसके रेकमेंडेशंस भी
  989. 39:02डिलीट हो सकते हैं। एक्टिविटी भी डिलीट हो
  990. 39:04सकती है। सॉरी ये एक्टिविटी के लिए लिख
  991. 39:05रहे हैं तो एक्टिविटी डिलीट हो सकती है।
  992. 39:07ठीक है? कैस्केडिंग ऑल लिख दिया। और यहां
  993. 39:09पर ऑर्फन रिमूवल को ट्रू कर देंगे हम।
  994. 39:11ऑर्फोन रिमूवल का मतलब अगर कोई देखिए यहां
  995. 39:14पर वेदर टू अप्लाई द रिमूवल ऑपरेशन टू द
  996. 39:16एंटिटीज़ दैट हैव बीन रिमूव्ड फ्रॉम द
  997. 39:18रिलेशनशिप। तो अगर यूजर रिमूव होता है तो
  998. 39:22उसके अगेंस्ट की एक्टिविटीज़ रख के कुछ
  999. 39:24पॉइंट ही नहीं है। करेक्ट? यूजर को अगर आप
  1000. 39:26डिलीट करते हो तो उसके अगेंस्ट जो लिंक्ड
  1001. 39:28एक्टिविटीज़ थी यानी कि यूजर ने जो
  1002. 39:30एक्टिविटी की थी उसको डेटाबेस में रख के
  1003. 39:32कोई पॉइंट है। क्योंकि यूजर ही नहीं है।
  1004. 39:33तो वो एक्टिविटी किसके अगेंस्ट मैप्ड है?
  1005. 39:35अभी मैप्ड है ही नहीं। तो वो जो
  1006. 39:37एक्टिविटीज है जो डिलीटेड यूजर की थी वो
  1007. 39:40अब ऑर्फन हो गई। करेक्ट उसे ऑर्फन कहते
  1008. 39:42हैं। ऑर्फन ऑर्फन है और फिर ऑर्फन रिमूवल
  1009. 39:46को ट्रू अगर आप बोलते हो तो ये ऑर्फंस को
  1010. 39:48रिमूव कर देगा। ऑर्फन रखेगा ही नहीं। तो
  1011. 39:50मैंने ट्रू मार्क कर दिया। ठीक है? इतना
  1012. 39:52मैंने कर लिया। और दूसरी चीज़ अ यहां पर जो
  1013. 39:55jसन है अ यानी कि देखिए मैं एपीआई बना रहा
  1014. 39:59हूं। तो मैं jसन में ये नहीं चाहता हूं।
  1015. 40:01ये ये वाली जो फील्ड है उसको नहीं चाहता
  1016. 40:03हूं। तो यहां पर मैं एक फील्ड ऐसे ऐड कर
  1017. 40:05सकता हूं। jसन इग्नोर। jसन इग्नोर का मतलब
  1018. 40:07है जो jसन है देखिए स्प्रिंग बूट क्या
  1019. 40:10करेगा? ऑटोमेटिकली jसन में कन्वर्ट करेगा
  1020. 40:13डेटा को। करेक्ट? आप अगर यूजर रिटर्न
  1021. 40:16करोगे तो ये एक्टिविटी को भी jसन में
  1022. 40:17कन्वर्ट कर दे। तो मैं यहां पर jसन इग्नोर
  1023. 40:19लिख के रख रहा हूं ताकि ये ट्रांसलेट ना
  1024. 40:21हो jसन में। ठीक है? तो इतना हो गया। और
  1025. 40:24इसी को मैं कॉपी पेस्ट करूंगा क्योंकि ये
  1026. 40:26सेम चीज़ होगी रेकमेंडेशन के लिए यहां पर।
  1027. 40:28ठीक है? तो मैप्ड बाय यूजर कास्केड ऑल और
  1028. 40:31ये सारी चीजें मुझे लिखना है और यहां पर
  1029. 40:33लिस्ट ऑफ एक्टिविटी के बजाय लिस्ट ऑफ
  1030. 40:34रेकमेंडेशन और यहां पर मैं लिख दूंगा
  1031. 40:37रेमेंडेशंस।
  1032. 40:38ठीक है? ऐसे और ये भी अरे लिस्ट होने वाला
  1033. 40:41है सेम चीज़। ओके? ये हो चुका है यहां पर।
  1034. 40:44अब हमें आना चाहिए एक्टिविटी में। ठीक है?
  1035. 40:47अब देखिए एक्टिविटी में हम क्या करेंगे?
  1036. 40:49यहां पर एक डिफाइन करेंगे। अ यहां पर
  1037. 40:51रिलेशनशिप सबसे पहले तो होना चाहिए यूजर
  1038. 40:54के लिए। ठीक है? तो यहां पर आ जाएंगे और
  1039. 40:58यहां पर कहेंगे प्राइवेट
  1040. 41:00यूजर ठीक है और फिर यूजर इस तरीके से अब
  1041. 41:04ये है मेनी साइड ऑफ द रिलेशनशिप तो यहां
  1042. 41:06पर आएगा मेनी टू वन सॉरी मेनी टू मेनी
  1043. 41:08नहीं मेनी टू वन ठीक है और यहां पर मैं
  1044. 41:11कहूंगा जॉइन
  1045. 41:13जॉइन कॉलम ठीक है और जॉइन कॉलम यानी कि ये
  1046. 41:16जॉइन टेबल है उसकी डेफिनेशन हम मेंशन कर
  1047. 41:18रहे हैं। ठीक है? जॉइनिंग की जो डेफिनेशन
  1048. 41:20है वो मेंशन कर रहे हैं। तो यूजर आईडी
  1049. 41:22होगा यहां पर। ठीक है? जॉइन कॉलम का नाम।
  1050. 41:25ठीक है? है क्या ये नल हो सकता है? जी
  1051. 41:26नहीं। तो नलेबल को फॉल्स रखेंगे हम। ठीक
  1052. 41:29है? और फॉरेन की जो है फॉरेन की की जो नाम
  1053. 41:34है उसका हम नाम भी डिफाइन कर सकते हैं। तो
  1054. 41:37यहां पर फॉरेन की और यहां पर मैं लिख
  1055. 41:39दूंगा फॉरेन की
  1056. 41:43इस तरीके से और इसका नाम डिफाइन कर देंगे
  1057. 41:45हम ऐसे और कहेंगे एफ के अंडरस्कोर
  1058. 41:49एक्टिविटी अंडरस्कोर यूजर। ठीक है? ठीक
  1059. 41:53है? ठीक है? तो ये फॉरेन के रिलेशनशिप
  1060. 41:55हमने डिफाइन किया है। तो अगर आप कोई ऐसी
  1061. 41:57एक्टिविटी बनाने की कोशिश करते हो देखिए
  1062. 41:59इसका मैं पावर बताता हूं। अगर आप कोई ऐसी
  1063. 42:01एक्टिविटी बनाने की कोशिश करते हो जिसमें
  1064. 42:04जो यूजर आईडी है वो वैलिड नहीं है। ठीक
  1065. 42:06है? तो डेटाबेस लेवल पर ब्लॉक हो जाएगा वो
  1066. 42:09क्योंकि फॉरेन की रिलेशनशिप बनी हुई है।
  1067. 42:11ठीक है? तो फॉरेन के रिलेशनशिप का नाम भी
  1068. 42:13हमने दिया और यहां पर इसको भी मैं जसन
  1069. 42:15इग्नोर कर देता हूं। तो जितने भी
  1070. 42:16रिलेशनशिप है ना उसको मैं सिंपलीसिटी के
  1071. 42:18लिए जसन इग्नोर मार्क कर रहा हूं। ठीक है?
  1072. 42:21ताकि जसन से वो अलग रहे। ठीक है? और अगर
  1073. 42:23हमें क्रिएट करना है रेमेंडेशन की अ
  1074. 42:25सेविंग रेकमेंड रेकमेंडेशन की सेविंग
  1075. 42:27एपीआई क्रिएट करनी है तो वो अलग से हम
  1076. 42:29क्रिएट करें। रेकमेंडेशन को अलग से सेव
  1077. 42:31करें। यूजर के साथ ये रेकमेंडेशन सेव
  1078. 42:33एक्टिविटी सेव ये सारी चीजें हमें नहीं
  1079. 42:34करनी है। यूजर अलग से क्रिएट हो गया।
  1080. 42:36एक्टिविटी अलग से क्रिएट हो गई।
  1081. 42:38रेकमेंडेशन अलग से क्रिएट हो गए। ठीक है?
  1082. 42:40सबकी अलग-अलग एंड पॉइंट्स होंगे। अगर आप
  1083. 42:42साथ में करना चाहते हो तो json इग्नोर को
  1084. 42:44हटा सकते हो। ठीक है? इतना हो गया। अब
  1085. 42:47यहां पर इसी में हमें एक्टिविटी और
  1086. 42:49रेकमेंडेशंस की जो लिंक है वो भी बनानी
  1087. 42:52होगी। तो यहां पर आ जाते हैं और यहां पर
  1088. 42:54मैं बनाऊंगा वन टू मेनी रिलेशनशिप। ठीक
  1089. 42:57है? क्योंकि जो रेकमेंडेशन है वो मेनी
  1090. 42:59साइड ऑफ द रिलेशनशिप है और यहां पर लिख
  1091. 43:01दूंगा मैप्ड बाय एक्टिविटी।
  1092. 43:03क्योंकि वहां पे जो फील्ड हम बनाएंगे उसका
  1093. 43:05नाम एक्टिविटी दे देंगे। और कैस्केट लिख
  1094. 43:08देंगे ऑल। ठीक है? और ऑर्फन रिमूवल भी कर
  1095. 43:11देंगे ट्रू। ठीक है? और यहां पर मैं लिख
  1096. 43:13दूंगा जसन इग्नोर इस तरीके से। और यहां पर
  1097. 43:16मैं लिख दूंगा प्राइवेट लिस्ट। क्योंकि जो
  1098. 43:18अदर साइड ऑफ रिलेशनशिप है वो मेनी साइड
  1099. 43:20है। तो यहां पर लिस्ट लिखेंगे हम क्योंकि
  1100. 43:22उसको लिस्ट में होल्ड करना पड़ेगा। मेनी
  1101. 43:24साइड है तो रेकमेंडेशन और यहां पर लिख
  1102. 43:27देंगे रेकमेंडेशंस और यहां पर एक नई अरे
  1103. 43:30लिस्ट बना लेंगे इस तरीके से। ठीक है? तो
  1104. 43:33ये हो गई अ एक्टिविटी और रेकमेंडेशन की
  1105. 43:37मैपिंग। अब रेकमेंडेशन में आ जाते हैं। और
  1106. 43:39रेकमेंडेशन में जो भी मैपिंग करने की
  1107. 43:41जरूरत है वो सारी मैपिंग हम यहां पर कर
  1108. 43:42लेंगे। ठीक है? तो सबसे पहले तो यहां पर आ
  1109. 43:46जाएंगे और यहां पर यूजर से इसको लिंक कर
  1110. 43:48देंगे। ठीक है? तो यहां पर मेनी टू वन
  1111. 43:50क्योंकि ये मेनी साइड ऑफ द रिलेशनशिप है।
  1112. 43:52यूजर वन साइड ऑफ द रिलेशनशिप है। ठीक है?
  1113. 43:54यहां पर जॉइन कॉलम मैं ऐड कर दूंगा। ठीक
  1114. 43:56है? जॉइन कॉलम और यहां पर मैं कहूंगा नेम
  1115. 44:00इज़ इक्वल टू और यहां पर यूजर अंडरस्कोर
  1116. 44:03आईडी जॉइन कॉलम और नल लेबल इक्वल टू
  1117. 44:06फॉल्स। और यहां पर फॉरेन की की जो
  1118. 44:09रिलेशनशिप है उसको मेंशन कर दूंगा। और
  1119. 44:12फॉरेन की और उसको नेम दे देंगे हम। ठीक
  1120. 44:15है? तो नेम इज इक्वल टू FK अंडर
  1121. 44:19रेमेंडेशन। ठीक है? तो इस तरीके से ये जो
  1122. 44:24फॉरेन की है वो बन जाएगी। ठीक है? और यहां
  1123. 44:26पर हम आ जाएंगे और यहां पर हम लिख देंगे अ
  1124. 44:29जेसन इग्नोर। इसको भी जेसन इग्नोर कर
  1125. 44:31दूंगा मैं और यहां पर लिख दूंगा प्राइवेट
  1126. 44:33यूजर यूजर ऐसे। ठीक है? तो ये हो गई यूजर
  1127. 44:38और रेमेंडेशन की लिंकिंग। ठीक है? अभी
  1128. 44:41हमें क्या करना है? ये सेम को मैं
  1129. 44:42डुप्लीकेट करूंगा यहां पर और हम क्रिएट
  1130. 44:44करेंगे मेनी टू वन रिलेशनशिप बिटवीन
  1131. 44:47रेकमेंडेशन और एक्टिविटी। ठीक है? तो यहां
  1132. 44:49पर मैं लिख दूंगा अ यहां पर यूजर आईडी के
  1133. 44:51बजाय एक्टिविटी आईडी आ जाएगा। एक्टिविटी
  1134. 44:54आईडी इनलेबल फॉल्स ये सब तो सही है। ठीक
  1135. 44:56है? रेमेंडेशन और फिर यहां पर लिख देंगे
  1136. 44:59एक्टिविटी।
  1137. 45:01सारी जगह जहां पर यूजर लिखा हुआ है, वहां
  1138. 45:03पर एक्टिविटी कर देंगे। ठीक है? यह यूजर
  1139. 45:06की बजाय हो जाएगा एक्टिविटी। ठीक है?
  1140. 45:08एक्टिविटी ऐसे। ठीक है? इतना हो गया और
  1141. 45:12किसी चीज़ की तो जरूरत है नहीं। अब इसको रन
  1142. 45:14करके देखते हैं कि क्या होता है। ठीक है?
  1143. 45:15कुछ इशू वगैरह या एरर तो कुछ आनी नहीं
  1144. 45:18चाहिए क्योंकि सब सीधा-सीधा लिखा है हमने
  1145. 45:20कोड। ऐसे कुछ गड़बड़ तो हुई नहीं है। तो रन
  1146. 45:24हो गया कोड। यहां पर आ जाते हैं। इसको
  1147. 45:26रीलोड कर लेंगे। ठीक है? रीलोड के बाद अब
  1148. 45:29अगर आप देखते हो एक्टिविटी की जो डेफिनेशन
  1149. 45:32है तो यहां पर देखिए यूजर आईडी आ गया है।
  1150. 45:34ठीक है? यूजर आईडी आ गया है यहां पर
  1151. 45:36एक्टिविटी में। और यहां पर आप आओगे
  1152. 45:40रेकमेंडेशन में तो यहां पर देखिए आपको
  1153. 45:43दिखाई देगा एक्टिविटी आईडी भी दिखाई देगा
  1154. 45:45और यूजर आईडी भी दिखाई देगा। बिल्कुल सही
  1155. 45:47बात है। और फिर आप यूजर में अगर आप आते हो
  1156. 45:50तो यहां पर आपको अच्छा यहां पर कुछ नहीं
  1157. 45:52दिखाई देगा। यहां पर आईडी क्रिएटेड एट ये
  1158. 45:55सारी चीजें तो है ही अपडेटेड एट। ठीक है?
  1159. 45:58तो रिलेशनशिप्स तो सारी सही तरीके से
  1160. 46:00क्रिएट हो रही है। ऐसी कोई दिक्कत तो आई
  1161. 46:01नहीं है। उम्मीद करता हूं ये हेल्पफुल
  1162. 46:03रहा। रिलेशनशिप्स कैसे बनानी है। मल्टीपल
  1163. 46:05एंटिटीज़ हमने सेट की। ठीक है? अ JSON में
  1164. 46:08हमने काफी सारी चीजें सीखी। देखिए एक एक
  1165. 46:12वीडियो में क्या-क्या चीजें सीखी? सबसे
  1166. 46:14पहले तो मल्टीपल एंटिटीज़ हमने सेट की यहां
  1167. 46:16पर। ठीक है? फिर कुछ नए एनोडेशंस देखे।
  1168. 46:19जैसे कि JSON इग्नोर ये रिलेशनशिप्स कैसे
  1169. 46:21बनानी है वो देखे हमने। कैस्केट ऑो रहता
  1170. 46:23है ये देखी हमने। ठीक है? और फिर अगर आप
  1171. 46:26एक्टिविटी में आते हो तो यहां पर हमने jसन
  1172. 46:28में डेटा रिलेशन रिलेशनल डेटाबेस में जैसे
  1173. 46:32कि माय सीक्वल और पोस्टग्रेस सीक्वल में
  1174. 46:33रोज़ एंड कॉलम्स में डेटा स्टोर होता है।
  1175. 46:36तो रोज़ एंड कॉलम्स में एक सेल में आप jसन
  1176. 46:38डेटा कैसे स्टोर कर सकते हो वही सेम फॉर्म
  1177. 46:40में jसन फॉर्म में। ठीक है? बिना ब्रेक
  1178. 46:42किए jसन को वो हमने देखा। तो रिलेशनल
  1179. 46:45डेटाबेस में आप इस तरीके से jसन स्टोर कर
  1180. 46:46सकते हो। तो अगर ऐसी कोई रिक्वायरमेंट है,
  1181. 46:48कोई एपीआई का रिस्पांस आपको डेटाबेस में
  1182. 46:50स्टोर करना है, इसका इस्तेमाल करना है।
  1183. 46:52ठीक है? ये काफी जरूरत पड़ती है और यहां
  1184. 46:54पर मेनी टू मेनी रिलेशनशिप मेनी टू वन
  1185. 46:56रिलेशनशिप हमने क्रिएट किए। ठीक है? और
  1186. 46:58सारे एनोटेशंस देखे और यहां पर jसन में
  1187. 47:00कैसे स्टोर करना है वो भी हमने देखा है।
  1188. 47:02ठीक है? एक और एनहांसमेंट मैं ऐड कर देता
  1189. 47:05हूं। ठीक है? जो कि मेनी टू जो मेनी साइड
  1190. 47:07ऑफ द रिलेशनशिप है यहां पर। वहां पर फेच
  1191. 47:10टाइप भी ऐड कर देता हूं मैं। तो फेच टाइप
  1192. 47:11का मतलब क्या है? देखिए अगर आप डेटा फेच
  1193. 47:15करते हो। आप यूजर को फेच करते हो तो ये
  1194. 47:18रेकमेंडेशन से लिंक्ड है। करेक्ट? तो आप
  1195. 47:21यूजर को फेच करोगे तो रेकमेंडेशंस भी सारे
  1196. 47:24फेच होंगे। तो यहां पर अगर मैं लेज़ लिख
  1197. 47:25देता हूं इसका मतलब क्या है? यूजर अगर फेच
  1198. 47:27होता है तो रेकमेंडेशंस फैच नहीं होने हैं
  1199. 47:30अंटिल एंड अनलेस आप रेकमेंडेशंस को एक्सेस
  1200. 47:33करते हो। उस उस यूजर के रेकमेंडेशंस को
  1201. 47:35अगर आप एक्सप्लसिटली एक्सेस करना चाहते हो
  1202. 47:37तो ही रेकमेंडेशंस एक्सेस होंगे। ठीक है?
  1203. 47:39फेच टाइप के दो तक दो
  1204. 47:42ये है वैल्यूज़ लेज़ और इगर। ईगर मतलब अगर
  1205. 47:45आप यूजर को एक्सेस करते हो तो रेकमेंडेशंस
  1206. 47:48भी पहले ही लोड हो जाएगी ईगर। तो इसमें
  1207. 47:51क्या है? डेटाबेस के कॉल्स बचते हैं।
  1208. 47:53लेकिन डेटाबेस का लोड भी बढ़ता है। ठीक
  1209. 47:55है? अगर बहुत सारी रेकमेंडेशंस है एक यूजर
  1210. 47:57के आगे और आप 500 यूजर को रिट्रीव कर रहे
  1211. 47:59हो। ठीक है? तो इमेजिन कर लीजिए एक यूजर
  1212. 48:02के अगेंस्ट बहुत सारी रेकमेंडेशंस दूसरे
  1213. 48:05यूजर के अगेंस्ट बहुत सारी रिकमेंडेशन 500
  1214. 48:07यूजर लोड कर रहे हो तो डेटाबेस लोड बढ़
  1215. 48:09जाएगा। लेकिन क्या है? अगर आपको पता है कि
  1216. 48:12आप रिकमेंडेशन को एक्सेस करने ही वाले हो
  1217. 48:14तो यह मेक सेंस करता है क्योंकि आपको फेच
  1218. 48:16करना ही है। लेकिन अगर आपको पता है कि आप
  1219. 48:18फेच नहीं आप एक्सेस नहीं करने वाले हो।
  1220. 48:20ठीक है? या आपको आप श्योर नहीं हो तो इस
  1221. 48:23केस में लेज़ रखना बेटर है। ठीक है?
  1222. 48:26क्योंकि इससे क्या है? डेटाबेस पे लोड कम
  1223. 48:28रहता है। ठीक है? तो ये मैंने डिफाइन कर
  1224. 48:29दिया यहां पर इन दो जगह पर। और मुझे लगता
  1225. 48:33है मुझे इसको एक्टिविटी में भी डिफाइन
  1226. 48:36करना चाहिए। तो एक्टिविटी में आ जाता हूं।
  1227. 48:38यहां पर एक्टिविटी में एक है मेनी टू वन।
  1228. 48:40तो यहां पर भी ऐड कर देता हूं। ठीक है? तो
  1229. 48:42यह ऐड हो चुका है। और इसके बारे में आप पढ़
  1230. 48:44भी सकते हो। देखिए, डेटा मे बी फच्ड
  1231. 48:45लेज़ली। ठीक है? और यहां पर जाओगे आप, तो
  1232. 48:48आप देख सकते हो डेटा मे बी फच लेज़ली। डेटा
  1233. 48:50मे बी इगरली फैच्ड। ठीक है? तो, यह देखिए,
  1234. 48:54ईगरली और लेज़ली फैच होता है। ठीक है?
  1235. 48:56उम्मीद करता हूं यह हेल्पफुल रहा। काफी
  1236. 48:58सारा नॉलेज मिला आपको और जो डेटाबेस
  1237. 49:01डिज़ाइन है, वह लगभग कंप्लीट है हमारे एंड
  1238. 49:03पर। यह जो प्रोजेक्ट है, उसका और काफी
  1239. 49:06लर्निंग भी मिली हमें।
  1240. 49:12तो चलिए दोस्तों आगे बढ़ते हैं और बात
  1241. 49:15करते हैं एक बढ़िया से टूल के बारे में।
  1242. 49:17ठीक है? टूल के बारे में बात करने से पहले
  1243. 49:19मैं आपको एक प्रॉब्लम दिखा दूंगा। ठीक है?
  1244. 49:21तो यहां पर देखिए अ ये है मेरी एक्टिविटी
  1245. 49:25की क्लास। तो मान लीजिए यूजर की क्लास है।
  1246. 49:27यूजर की क्लास पे बात करते हैं। तो देखिए
  1247. 49:29यहां पे ये सारे फील्ड्स हैं। अब इन
  1248. 49:30फील्ड्स को इस्तेमाल करने के लिए कोड में
  1249. 49:33ये सारे प्राइवेट हैं। ठीक है? तो
  1250. 49:34इस्तेमाल करने के लिए मुझे गेटर, सेटर्स,
  1251. 49:36कंस्ट्रक्टर्स ये सारी चीजों की जरूरत
  1252. 49:38होगी। तो इसको जनरेट कैसे किया जाए? तो
  1253. 49:40यहां पर आ जाना है। ठीक है? राइट क्लिक
  1254. 49:42करना है। जनरेट करना है। गेटर सेटर करना
  1255. 49:45है। ये गेटर सेटर जनरेट हो गए। ठीक है?
  1256. 49:47फिर यहां पर राइट क्लिक करना है फिर से और
  1257. 49:49यहां पर कंस्ट्रक्टर भी जनरेट हो जाएंगे।
  1258. 49:51सब ऑटोमेटिक जनरेट हो रहा है। ठीक है?
  1259. 49:53आपको जो भी जनरेट करना है वो यहां पर नो
  1260. 49:55आस्क् कंस्ट्रक्टर चाहिए। वो भी जनरेट हो
  1261. 49:57जाएगा। सेलेक्ट नन करोगे तो। ठीक है? तो
  1262. 49:59देखिए क्लास काफी लंबी हो गई। ठीक है?
  1263. 50:01कितनी? 100 लाइन के ऊपर हो गया कोड इसमें।
  1264. 50:04काफी लंबी होगी। काफी हैवी भी लग रही है
  1265. 50:06क्लास। जबकि हो कुछ नहीं रहा है यह क्लास
  1266. 50:08में। ये क्लास में कुछ फील्ड्स डिक्लेअर
  1267. 50:09किए है हमने। ठीक है? ये फील्ड्स है और
  1268. 50:12यहां पर कुछ मैपिंग्स डिक्लेयर्ड है। और
  1269. 50:14बाकी सब कंस्ट्रक्टर्स और यू नो अ गेट
  1270. 50:18सेटर्स ये सारे से क्लास भर गई है। ठीक
  1271. 50:20है? ये सेम रेप्लिककेट होगा सारी क्लासेस
  1272. 50:23में। जितनी भी हमारी क्लासेस हैं जैसे कि
  1273. 50:24एक्टिविटी रिकमेंड रिकमेंडेशंस यह दो जो
  1274. 50:27क्लासेस हैं जैसे कि एंटीटी क्लासेस इनमें
  1275. 50:29रेप्लिकेट होगा। ठीक है? अब क्या है ना
  1276. 50:32जावा डेवलपर्स के पास एक बढ़िया सा टूल
  1277. 50:34है। ठीक है? जिसकी मदद से यह बोईलर प्लेट
  1278. 50:36कोड को हटा सकते हैं। और यह सारा बोईलर
  1279. 50:38प्लेट कोड एक एनोटेशन की मदद से जनरेट हो
  1280. 50:40सकता है। एक नहीं मल्टीपल लगेंगे लेकिन एक
  1281. 50:42एनोटेशन एक चीज जनरेट करने के लिए और जो
  1282. 50:44कोड है वो काफी सिंपलीफाई भी हो जाएगा।
  1283. 50:46ठीक है? तो जो टूल की मैं बात कर रहा हूं
  1284. 50:48उस टूल का नाम है lमbोक। ठीक है? तो LBOK
  1285. 50:51एक ऐसा टूल है जिसकी मदद से आप यह सारा
  1286. 50:54बोईलर प्लेट कोड है उसको हटा सकते हो और
  1287. 50:56ऑटोमेटिकली एनोटेशन की मदद से ये सारा
  1288. 50:58बॉईलर प्लेट कोड ऑटोमेटिकली जनरेट होगा
  1289. 51:00क्लास की कंपाइल टाइम पर। ठीक है? तो यहां
  1290. 51:02पर ब्राउज़र में आ जाता हूं सबसे पहले और
  1291. 51:04यहां पर हम सर्च करेंगे LBK इस तरीके से।
  1292. 51:07तो देखिए अब Lbok को सर्च करेंगे तो यहां
  1293. 51:09पर आपको प्रोजेक्ट LBOK दिखेगा। ठीक है?
  1294. 51:11अच्छा ये तो इंडोनेशियन आइलैंड भी है।
  1295. 51:13मुझे पता नहीं था। ठीक है? Lok Java सर्च
  1296. 51:16कर लीजिएगा। ठीक है? Lok Java अगर आप सर्च
  1297. 51:18करते हैं थोड़ी सा एi जनरेटेड समरी भी मिल
  1298. 51:20जाएगा आपको। देखिए यह एनोटेशन की मदद से
  1299. 51:24बोईलर प्लेट कोड जैसे गेटर सेटर को हटा
  1300. 51:26देता है। ठीक है? और यह कंपाइल टाइम पे
  1301. 51:28जनरेट भी कर देता है। पूरा का पूरा
  1302. 51:29डेफिनेशन जो मैंने कहा वो यहां पर आपको
  1303. 51:32मिल गया। देखिए ये वर्बोसिटी रिड्यूस करता
  1304. 51:34है कोड की। वर्बोसिटी का मतलब है कोड
  1305. 51:36ज्यादा हैवी लगता है। ऐसा लगता है बहुत
  1306. 51:38सारा कोड लिख दिया है। तो जो वर्बोसिटी है
  1307. 51:40उसको हटा देता है और डेवलपर प्रोडक्टिविटी
  1308. 51:42बढ़ा देता है जिससे आप सिर्फ कोड लॉजिक पर
  1309. 51:45फोकस करते हो। आपको बस एनोटेशंस लिख देने
  1310. 51:47हैं। गेट अ से स्टेटस वो वो क्रिएट कर
  1311. 51:49देगा। देखिए यहां पर अगर मैं अब कोई फील्ड
  1312. 51:51ऐड करता हूं तो मुझे उसके लिए गेटर सेटर
  1313. 51:53कंस्ट्रक्टर में उसके लिए जगह बनानी
  1314. 51:55पड़ेगी। सब कुछ करना पड़ेगा। ठीक है? एक
  1315. 51:57फील्ड एडिशन पर लेकिन लॉबक की मदद से क्या
  1316. 52:00है? एनोटेशंस लगे हुए हैं। मैंने वो फील्ड
  1317. 52:02ऐड कर दी। तो कंस्ट्रक्टर में भी
  1318. 52:03ऑटोमेटिकली ऐड हो गया। और गेट स्टेटस भी
  1319. 52:06ऑटोमेटिकली क्रिएट हो गया। आपको कुछ नहीं
  1320. 52:07करना है। एनोटेशंस लगे हुए हैं। वो अपना
  1321. 52:09काम करेंगे। एनोटेशंस आप काम नहीं करोगे।
  1322. 52:11ठीक है? तो ये एक ऐसा टूल है जिसकी मदद से
  1323. 52:14डेवलपर्स जो है वो प्रोडक्टिविटी पर भी
  1324. 52:16फोकस कर सकते हैं। ठीक है? तो यहां पर
  1325. 52:18देखिए यहां पर मैं आऊंगा। ये प्रोजेक्ट
  1326. 52:19लॉबक है। इस पर जाइए और आप यहां पर देख
  1327. 52:22सकते हो लॉबक एक्चुअली है क्या? ये वीडियो
  1328. 52:23वगैरह है। आपको देखना है तो आप देख सकते
  1329. 52:25हो। फीचर्स देख सकते हो थोड़ा इसके साथ।
  1330. 52:27अगर आपको एक्सप्लोर करना है तो इस साइट पर
  1331. 52:29आप एक्सप्लोर कर सकते हो। ठीक है? लेकिन
  1332. 52:31मैं क्या करूंगा? मैं यहां पर आ जाऊंगा
  1333. 52:32सीधे-सीधे स्प्रिंग इनिशलाइजर पर और यहां
  1334. 52:35पर मैं सर्च करूंगा lमbok। तो देखिए lमbok
  1335. 52:38ऑफिशियली स्प्रिंग बूट सपोर्टेड है। ठीक
  1336. 52:41है? क्योंकि ये यहां पर सजेशन में आ रहा
  1337. 52:43है। और यह देखिए java एनोटेशन लाइब्रेरी
  1338. 52:45हेल्प्स टू रिड्यूस बोईलर प्लेट कोड। तो
  1339. 52:47इसका इस्तेमाल करेंगे। एक्सप्लोर पर क्लिक
  1340. 52:49करेंगे और यहां पर आ जाएंगे। और यहां पर
  1341. 52:52देखिए यह जो डिपेंडेंसी है लॉबक की वह ऐड
  1342. 52:54हो चुकी है। तो इसको मैं कॉपी कर लूंगा।
  1343. 52:56सिर्फ लॉबक की डिपेंडेंसी को यहां पर आ
  1344. 52:59जाऊंगा और ये जो pmxl है मेरी वहां पर आकर
  1345. 53:04मैं इसको ऐसे के ऐसे चिपका दूंगा। ठीक है?
  1346. 53:07और इसको मेव इन रीलोड करेंगे तो ये जो lमb
  1347. 53:11की जो डिपेंडेंसी है उसको फैच कर लेगा।
  1348. 53:12देखिए आप कभी भी pmxl फाइल में कुछ भी
  1349. 53:14चेंजेस करते हो कभी भी ठीक है? इसका मतलब
  1350. 53:17आपने प्रोजेक्ट के स्ट्रक्चर के साथ कुछ
  1351. 53:19छेड़खानी की है, कुछ नई डिपेंडेंसीज ऐड की
  1352. 53:21है। तो आपको रीलोड मेवन चेंजेस करना है।
  1353. 53:23तो सारी की सारी जो चेंजेस है वो लोकली
  1354. 53:25आपके सिस्टम पर आ जाएंगी। तो ये मैंने कर
  1355. 53:27लिया। तो लॉबक हमारे सिस्टम पर आ चुका है
  1356. 53:29लोकली। ठीक है? और अब मैं क्या करूंगा?
  1357. 53:32मैं यूजर में जाऊंगा। ठीक है? अब मुझे
  1358. 53:34देखिए गेट, सेटर्स ये सारी चीजें मैंने
  1359. 53:36जनरेट की थी। मुझे अब ये जनरेट करने की
  1360. 53:38जरूरत नहीं है। लॉबक आ चुका है। तो मैं
  1361. 53:40क्या करूंगा पता है? मैं सिर्फ एनोटेशन का
  1362. 53:43इस्तेमाल करूंगा और ये सारी चीजें जो
  1363. 53:45मैंने मैनुअली डिफाइन करी है भले
  1364. 53:47इंटेलिजेंट की मदद से किया है। पहले तो
  1365. 53:49इंटेलिजेंट नहीं होता था तो टाइप करना
  1366. 53:51पड़ता था मैनुअली। इंटेलिजेंट ने थोड़ा
  1367. 53:52आसान किया लेकिन लॉबक ने और ज्यादा आसान
  1368. 53:54कर दिया। तो यहां पर आना है आपको सिर्फ
  1369. 53:56यूज़ करना है यहां पर डेटा एनोटेशन। ठीक
  1370. 54:00है? डेटा एनोटेशन छोड़िए। अगर मैं गेटर
  1371. 54:02लिखता हूं यहां पर गेटर और सेटर तो देखिए
  1372. 54:05गेटर भी ऑटोमेटिकली जनरेट हो जाएगा जितने
  1373. 54:07भी फील्ड्स हैं उसके लिए और सेटर भी
  1374. 54:08ऑटोमेटिकली जनरेट हो जाएगा। लेकिन गेटर
  1375. 54:11सेटर का कॉम्बिनेशन है डेटा एनोटेशन। डाटा
  1376. 54:15एनोटेशन आप लिखते हो तो डाटा एनोटेशन में
  1377. 54:17जाइए आप। देखिए होवर कीजिए। उस पे जाइए इस
  1378. 54:19पे डाउनलोड सोर्सर्सेस कर लीजिए। तो देखिए
  1379. 54:22डेटा एनोटेशन कॉम्बिनेशन है ये सारे
  1380. 54:25एनोटेशंस का। गेट असर्स, सेटर्स,
  1381. 54:27रिक्वायर्ड आस्क् कंस्ट्रक्टर, टू
  1382. 54:29स्ट्रिंग और इक्वल्स एंड हैश कोड। ये सारे
  1383. 54:31जो मेथड्स हैं वो ऑटोमेटिकली कन्वर्ट हो
  1384. 54:33क्रिएट हो जाते हैं। ठीक है? ये
  1385. 54:35ऑटोमेटिकली क्रिएट हो जाते हैं। आपको कुछ
  1386. 54:36करने की जरूरत ही नहीं है। ये सारे
  1387. 54:38एनोटेशन ऑटोमेटिकली अप्लाई हो जाते हैं।
  1388. 54:40तो इसके लिए मैंने गेटर्स एंड सेटर्स को
  1389. 54:41हटा के डेटा डाल दिया। डेटा से सब कुछ हो
  1390. 54:44गया। ठीक है? गेट स्टे सेटर्स भी आ गए। और
  1391. 54:46यहां पर मुझे क्या चाहिए? मुझे एक और
  1392. 54:48चाहिए नो आस्क् कंस्ट्रक्टर चाहिए। नो
  1393. 54:50आस्क् कंस्ट्रक्टर वो भी ऐड कर दिया। और
  1394. 54:52फिर मुझे चाहिए ऑल आस्क् कंस्ट्रक्टर। ऑल
  1395. 54:54आस्क् कंस्ट्रक्टर मतलब सारे जो ये है
  1396. 54:57फील्ड्स वो सारे फील्ड्स के साथ एक
  1397. 55:00आर्गुमेंट कंस्ट्रक्टर। और कोई भी
  1398. 55:02आर्गुमेंट के साथ यानी कि कोई भी अह
  1399. 55:04आर्गुमेंट नहीं होना चाहिए। तो ऐसा वाला
  1400. 55:05कंस्ट्रक्टर चाहिए मुझे। नो आस्क्
  1401. 55:07कंस्ट्रक्टर। ठीक है? और अब क्या है? मुझे
  1402. 55:09यहां पे एरर मिल रहा है। देखिए एरर मिल
  1403. 55:10रहा है। एरर क्या बोल रहा है? ठीक है? एरर
  1404. 55:12कुछ तो बोल रहा है। ओवर करेंगे। अच्छा ओवर
  1405. 55:15करता हूं तो ये बोल रहा है देखिए सेव
  1406. 55:17डिलीट यूजर। तो ये कंस्ट्रक्टर विदाउट
  1407. 55:19पैरामीटर इज़ ऑलरेडी डिफाइंड। तो नहीं
  1408. 55:20डिफाइन करना चाहिए। एक्चुअली ऑलरेडी
  1409. 55:22डिफाइंड है। तो हम क्या करेंगे? यहां से
  1410. 55:24लेकर जो हमने सारा कोड जनरेट किए थे
  1411. 55:25गेटर्स, सेटर्स ये सब ये सब ऐसे सेलेक्ट
  1412. 55:28करके हटा देंगे। ठीक है? तो देखिए ये
  1413. 55:31क्लास कितनी सिंपल हो गई। अभी सिर्फ
  1414. 55:32एनोटेशन की मदद से ठीक है? सीधा 1/4 हो गई
  1415. 55:36क्लास। ठीक है? सिर्फ एनोटेशन ऐड किया
  1416. 55:38आपने। तीन दो तीन चार ऐड किए एनोटेशंस और
  1417. 55:41सब कुछ क्रिएट हो गया। ठीक है? अब इन
  1418. 55:42एनोटेशंस को मैं कॉपी करूंगा। और मेरी
  1419. 55:44जितनी भी क्लासेस हैं जैसे कि यहां पर
  1420. 55:47एक्टिविटी और रेकमेंडेशन जितनी भी यानी
  1421. 55:49सभी क्लासेस में नहीं ऐड करना है। जो
  1422. 55:51डेटाबेस रिलेटेड क्लासेस है उसमें ही मैं
  1423. 55:53ये एनोटेशन ऐड कर दूंगा। ठीक है? और यह
  1424. 55:55देखिए एनोटेशन आ भी कहां से रहे हैं? लॉबक
  1425. 55:57पैकेज से आ रहा है। ठीक है? लॉबक पैकेज।
  1426. 56:00लॉबक क्या है? जो डिपेंडेंसी है वो हमने
  1427. 56:01ऐड करी है वो। ठीक है? और अब आप इसे कहीं
  1428. 56:04पर भी यूज करते हो जैसे एक्टिविटी का मैं
  1429. 56:06ऑब्जेक्ट कहीं पर भी बनाता हूं तो उसकी
  1430. 56:08गेटर सेटर ऑटोमेटिकली एक्सेसिबल रहेगी
  1431. 56:10मुझे। ठीक है? अगर आप देखना चाहो तो मैं
  1432. 56:13आपको दिखा भी सकता हूं। तो यहां पर कोई
  1433. 56:15क्लास में आ जाता हूं। वैसे कोई क्लास
  1434. 56:16बनाई तो नहीं है हमने। फिटनेस यहां पर आ
  1435. 56:19जाते हैं। ठीक है? और यहां पर देखिए मैं
  1436. 56:21लिख देता हूं। अह यहां पर लिखूंगा
  1437. 56:24एक्टिविटी।
  1438. 56:26एक्टिविटी = न्यू एक्टिविटी। एक नई
  1439. 56:29एक्टिविटी बना ली मैंने। ठीक है? और फिर
  1440. 56:31एक्टिविटी डॉट देखिए सारे गेटर्स आ गए।
  1441. 56:34देख रहे हो आप? सारे गेटर्स आ गए। और सारे
  1442. 56:36सेटर्स भी आ गए। देखिए सारे सेटर्स सेट
  1443. 56:39सेट आईडी सेट ड्यूरेशन। ठीक है? मैंने
  1444. 56:41क्रिएट किया। जी नहीं ऑटोमेटिकली क्रिएट
  1445. 56:43हो गया। ठीक है? और यहां पर देखिए ऑल
  1446. 56:45आस्क् कंस्ट्रक्टर भी है यहां पर। तो अगर
  1447. 56:47मैं यहां पर आता हूं और ऐसे टाइप करता
  1448. 56:49हूं। तो देखिए ऑल आस्क् कंस्ट्रक्टर और ये
  1449. 56:51सॉरी ये नॉर्मल कंस्ट्रक्टर है। ठीक है?
  1450. 56:53ये ऑल आस्क् कंस्ट्रक्टर शायद नहीं बना
  1451. 56:55है। 1 मिनट मैंने ऑल आस्क् कंस्ट्रक्टर ऐड
  1452. 56:57किया है एक्टिविटी में। 1 मिनट मुझे दिख
  1453. 56:59लेने दीजिए। ऑल आस्क् कंस्ट्रक्टर तो ऐडेड
  1454. 57:01है तो आना तो चाहिए था यहां पर। ठीक है?
  1455. 57:04तो दिखाई क्यों नहीं दे रहा है? एक्टिविटी
  1456. 57:06एक्टिविटी। अच्छा ये दिखाई नहीं दे रहा है
  1457. 57:08शायद।
  1458. 57:15अच्छा यहां पर आप पैरामीटर्स पास भी कर
  1459. 57:17सकते हो। देखिए ये ये अभी सजेशन दे रहा है
  1460. 57:18पैरामीटर्स। मुझे पता नहीं ऑटो सजेस्ट में
  1461. 57:20क्यों नहीं आ रहा है लेकिन यहां पर सजेशन
  1462. 57:21भी दे रहा है पैरामीटर्स का इन ऑर्डर में
  1463. 57:23पास करना है आपको ठीक है तो ये चल रहा है
  1464. 57:25और इसको मैं यहां से हटा देता हूं अब
  1465. 57:27क्योंकि यहां पर आइडली कोड लिखना नहीं
  1466. 57:28चाहिए और इंपोर्ट स्टेटमेंट्स को भी हटा
  1467. 57:31देता हूं ऑप्टिमाइज इंपोर्ट्स कर देता हूं
  1468. 57:32ठीक है तो ये बात थी लॉबक के बारे में है
  1469. 57:36ना जबरदस्त टूल कैसा टूल है ये मुझे बताइए
  1470. 57:38आप ठीक है मुझे तो काफी जबरदस्त लगता है
  1471. 57:40और मैं हर प्रोजेक्ट में मेरा एक सेटअप
  1472. 57:42होता है जैसे कि वेब ऐड कर दिया जेपीए ऐड
  1473. 57:45कर दिया डेटाबेस मेरे चॉइस का ऐड कर दिया
  1474. 57:47डिपेंडेंसी में और लॉन्ग तो होता ही है
  1475. 57:49बाय डिफ़ॉल्ट क्योंकि मुझे पता है मैं
  1476. 57:50इस्तेमाल करने ही वाला हूं। क्लासेस
  1477. 57:51बनेंगी। गेट सेटर्स बनाने हैं। ऑल आस्क्
  1478. 57:54कंस्ट्रक्टर्स बनाने हैं। काफी सारा बोलब
  1479. 57:55प्लेट कोड जो है वो हट जाता है। तो देखिए
  1480. 57:57अब मैं यहां पर अगर कोई नई फील्ड ऐड करता
  1481. 57:59हूं। एनोटेशंस ऐडेड है। करेक्ट। नो आस्क्
  1482. 58:01कंस्ट्रक्टर में तो चलो कुछ होना नहीं है।
  1483. 58:04ऑल आस्क् कंस्ट्रक्टर में वो पैरामीटर ऐड
  1484. 58:06हो जाएगा। ठीक है? और जो गेट सेटर्स जनरेट
  1485. 58:08हो रहे हैं डेटा की मदद से डेटा एनोटेशन
  1486. 58:10की मदद से वो भी जनरेट हो जाएंगे। ठीक है?
  1487. 58:12उसके लिए ऑटोमेटिकली। तो मुझे ध्यान में
  1488. 58:15रखना नहीं है कि अच्छा मैंने नई फील्ड ऐड
  1489. 58:16की है तो अभी इसको कंस्ट्रक्टर में ऐड
  1490. 58:18करना है। इसके लिए गेटर सेटर ऐड करना है।
  1491. 58:19ये ध्यान में रखने की जरूरत नहीं है।
  1492. 58:21फील्ड ऐड कर दो और बिज़नेस लॉजिक पे फोकस
  1493. 58:23करो। यही काम है लॉबक का। उम्मीद करता हूं
  1494. 58:25ये हेल्पफुल रहा और मुझे बताइए आप आप इस
  1495. 58:30टूल को अपने हर प्रोजेक्ट में इस्तेमाल
  1496. 58:31करेंगे या नहीं। तो दोस्तों, एक चीज मैं
  1497. 58:34बताना भूल गया कि अगर लॉन्ग कॉन्फ़िगरेशन
  1498. 58:37के बाद प्रोजेक्ट रन करने में कोई मदद कोई
  1499. 58:39दिक्कत आती है। ठीक है? तो जनरली आपको
  1500. 58:41क्या करना है? यहां पर आना है और यहां पर
  1501. 58:44सेटिंग्स में जाना है। ठीक है? सेटिंग्स
  1502. 58:46में लॉबक यहां पे प्लगिंस में आप जाओगे ना
  1503. 58:49तो आपको लॉबक का एक प्लगइन दिखेगा। आपको
  1504. 58:52कहां पे दिखना है? यहां पे मार्केट प्लेस
  1505. 58:54पे सेलेक्ट करना है और यहां पर सर्च करना
  1506. 58:56है LBK। तो ये प्लगइन जो है ये आपको
  1507. 58:58इंस्टॉल करना होगा। ठीक है? इसके बिना Lok
  1508. 59:01थोड़ा फंक्शन नहीं करेगा। तो आपको यह
  1509. 59:02प्लगइन इंस्टॉल करना है। ठीक है? ये
  1510. 59:05इंस्टॉल करने के बाद अ आपको फिर से
  1511. 59:08सेटिंग्स में ही रहना है। अच्छा मैंने
  1512. 59:10क्लोज़ कर दिया। तो इंस्टॉल करने के बाद
  1513. 59:12आपको फिर बिल्ड एग्जीक्यूशन डिप्लॉयमेंट
  1514. 59:15में आना है और यहां पर कंपाइलर में
  1515. 59:17एनोटेशन प्रोसेसिंग है। ठीक है? तो
  1516. 59:20एनोटेशन प्रोसेसिंग में आपको मेक श्योर
  1517. 59:21करना है कि ये इनेबल एनोटेशन प्रोसेसिंग
  1518. 59:23इनेबल्ड है। टिक है। और ये फिटनेस मोनोलथ
  1519. 59:26पे अगर आप सेलेक्ट करते हो तो ये ऑब्टेन
  1520. 59:28प्रोसेसर्स फ्रॉम क्लास पाथ प्रोजेक्ट
  1521. 59:29क्लास पाथ ये सिलेक्टेड है। अगर आप ये दो
  1522. 59:32चीज का ध्यान रखते हो तो लॉन्ग इशू कभी
  1523. 59:35नहीं देगा आपको। और हां ये करने के बाद या
  1524. 59:37इनेबल करने के बाद ओके नहीं करना है।
  1525. 59:39अप्लाई करके ओके करना है। अप्लाई नहीं
  1526. 59:42करोगे तो चेंजेस अप्लाई नहीं होंगे। ठीक
  1527. 59:43है? अप्लाई करके ओके करना है। ठीक है? तो
  1528. 59:46इन चीजों का ध्यान रखिएगा। ये प्लगइन भी
  1529. 59:47इंस्टॉल कर लीजिएगा। यह काम का है। मैंने
  1530. 59:50काफी और भी प्लगइिंस इंस्टॉल कर रखे हैं।
  1531. 59:53डॉकर वगैरह जैसे कि मैं कोड करता रहता
  1532. 59:55हूं। तो लॉबक जरूरी है। इंस्टॉल कर
  1533. 59:58लीजिएगा।
  1534. 1:00:05तो दोस्तों बात करते हैं एपीआई के बारे
  1535. 1:00:08में। अब इस वीडियो में हम क्या करने वाले
  1536. 1:00:10हैं? हम हमारा जो एप्लीकेशन है उसमें एक
  1537. 1:00:13यूजर की रजिस्ट्रेशन एपीआई बनाएंगे। ठीक
  1538. 1:00:15है? जहां पर हम एंड पॉइंट की मदद से एक
  1539. 1:00:18एंड पॉइंट की मदद से एक यूजर को क्रिएट
  1540. 1:00:20करेंगे हमारे सिस्टम में यानी कि हमारी
  1541. 1:00:22एप्लीकेशन में। ठीक है? तो यहां पर देखिए
  1542. 1:00:25हमने मॉडल्स डिफाइन किए हैं सिर्फ। हमें
  1543. 1:00:27एपीआई बनाने के लिए हमें चाहिए रिपॉज़िटरी
  1544. 1:00:30लेयर। हमें चाहिए सर्विस लेयर। ठीक है? तो
  1545. 1:00:33एक रिकैप के तौर पे आपको बता दूं। देखिए
  1546. 1:00:36हमारे पास जो है हमारे पास होता है एक
  1547. 1:00:39डेटाबेस। ठीक है? तो डेटाबेस को मैं थोड़ा
  1548. 1:00:41नीचे बना लेता हूं। ठीक है? ये है हमारे
  1549. 1:00:43पास डेटाबेस। ठीक है? डेटाबेस के साथ बात
  1550. 1:00:47करने वाला है
  1551. 1:00:50हमारी अ रेपोज़िटरीज़। ठीक है? रिपॉज़िटरी
  1552. 1:00:53लेयर है। ठीक है? तो जो भी रिपॉज़िटरीज़ हम
  1553. 1:00:56डिफाइन करेंगे वो बात करेंगी डेटाबेस से।
  1554. 1:00:59ठीक है? फिर उसके ऊपर आएगा हमारे पास जो
  1555. 1:01:02होगा वो है सर्विस लेयर। ठीक है? सर्विस
  1556. 1:01:06लेयर और फिर उसके ऊपर होंगे हमारे
  1557. 1:01:09कंट्रोलर्स। ठीक है? तो ये समझना जरूरी है
  1558. 1:01:11ये स्ट्रक्चर। ठीक है? उसके बाद ही आप
  1559. 1:01:13एपीआई बना पाओगे। ठीक है? तो देखिए
  1560. 1:01:16कंट्रोलर्स क्या है? कंट्रोलर्स डिफाइन
  1561. 1:01:18करेंगे एपीआई। एपीआई कौन यूज़ करेगा? यूजर
  1562. 1:01:22यूज़ करेगा। ठीक है? सर्विस लेयर क्या है?
  1563. 1:01:24सर्विस लेयर डिफाइन करेगा बिज़नेस लॉजिक।
  1564. 1:01:28ठीक है? किस तरीके से बिज़नेस लॉजिक डिफाइन
  1565. 1:01:30करेगा? तो उसमें क्लासेस होगी जहां पर हम
  1566. 1:01:32बिनेस लॉजिक्स डिफाइन करेंगे और ये सर्विस
  1567. 1:01:34लेयर जो इसमें जो मेथड्स होंगे यानी कि जो
  1568. 1:01:37भी लॉजिक होगा वो कॉल होगा कंट्रोलर से।
  1569. 1:01:40तो मान लीजिए आप कोई भी एपीआई कॉल करते हो
  1570. 1:01:42जैसे कि यूजर क्रिएशन की एपीआई आपने कुछ
  1571. 1:01:46यू नो लॉगिन की एपीआई कॉल की तो उसका
  1572. 1:01:48बिज़नेस लॉजिक लिखा होगा सर्विस लेयर पर।
  1573. 1:01:50तो डिपेंडिंग ऑन कि आप कौन सा एपीआई कॉल
  1574. 1:01:53कर रहे हो। एप्रोप्रियट लॉजिक कॉल होगा
  1575. 1:01:55सर्विस लेयर से। ठीक है? इतनी बात समझ में
  1576. 1:01:57आ गई? और फिर हमारे पास है रिपॉज़िटरी
  1577. 1:02:00लेयर। रिपॉज़िटरी लेयर क्या करेगी? इंटरफ़ेस
  1578. 1:02:03है यानी कि इंटरेक्ट करेगी
  1579. 1:02:06डेटाबेस से विद डीबी। ठीक है? डीबी का
  1580. 1:02:10मतलब है डेटाबेस। तो इंटर ये एक तरीके से
  1581. 1:02:13कम्युनिकेशन लेयर है जिसके जरिए सर्विस
  1582. 1:02:16लेयर डेटाबेस से बात करता है। देखिए
  1583. 1:02:19सर्विस लेयर में बिज़नेस लॉजिक डिफाइंड है।
  1584. 1:02:21ठीक है? अभी मान लीजिए आप यूजर
  1585. 1:02:23रजिस्ट्रेशन की एपीआई बना रहे हो।
  1586. 1:02:24एग्जांपल दे रहा हूं। ठीक है? यूजर
  1587. 1:02:26रजिस्ट्रेशन की एपीआई बना रहे हो तो लॉजिक
  1588. 1:02:28कहां लिखा होगा? एंड पॉइंट कहां डिफाइंड
  1589. 1:02:30होगी? पहले तो एंड पॉइंट डिफाइंड होगी
  1590. 1:02:32कंट्रोलर में। ठीक है? बिज़नेस लॉजिक कहां
  1591. 1:02:35लिखा होगा? बिज़नेस लॉजिक लिखा होगा सर्विस
  1592. 1:02:37लेयर पर। यानी कि एक यूजर है उसको उसमें
  1593. 1:02:40वैलिडेशंस आएंगी। वो देखना है आपको ईमेल
  1594. 1:02:42चेक करना है सही से है कि नहीं? सारी
  1595. 1:02:44डिटेल्स आई कि नहीं प्रॉपर्ली और फिर उसको
  1596. 1:02:46लेकर डेटाबेस में स्टोर करना है। ठीक है?
  1597. 1:02:48तो ये होगा सर्विस लेयर पर। अब डेटाबेस
  1598. 1:02:51में स्टोर करना है। यह सर्विस लेयर करेगा
  1599. 1:02:53क्योंकि वो बिज़नेस लॉजिक है। लेकिन इस ये
  1600. 1:02:56डेटाबेस में स्टोर करने के लिए उसे जरूरत
  1601. 1:02:58पड़ेगी डेटाबेस से बात करने के लिए। ठीक
  1602. 1:03:01है? डेटाबेस से बात करना चाहेगा सर्विस
  1603. 1:03:03लेयर। वो कैसे करेगा? सर्विस लेयर तो
  1604. 1:03:04बोलेगा मेरे पास एबिलिटी नहीं है। तो
  1605. 1:03:06रिपॉज़िटरी की मदद से वो डेटाबेस लेयर से
  1606. 1:03:09बात करेगा। ठीक है? और डेटाबेस जो है यहां
  1607. 1:03:12पर हमारा जो डेटा है वो स्टोर होगा। तो
  1608. 1:03:15यहां पर डेटा इज़ स्टर्ड। ठीक है? इस तरीके
  1609. 1:03:18से। तो इस तरीके से ये जो पूरा सिस्टम है
  1610. 1:03:21वो काम करता है। कंट्रोलर से रिक्वेस्ट
  1611. 1:03:23जाती है सर्विस लेयर के पास। सर्विस लेयर
  1612. 1:03:24से जाती है रिपॉजिटरीज के पास और फिर
  1613. 1:03:27रिपोज़िटरीज से जाती है डेटाबेस के पास।
  1614. 1:03:30ठीक है? और फिर यहां से फिर से डेटा ऐसे
  1615. 1:03:33ही रिवर्स जाता है पूरा के पूरा। और फिर
  1616. 1:03:35कंट्रोलर के थ्रू ये रिटर्न किया जाता है
  1617. 1:03:37यूजर को। ठीक है? उम्मीद करता हूं इतना
  1618. 1:03:40समझ में आया। यह किस तरीके से रिक्वेस्ट
  1619. 1:03:42फ्लो होती है स्प्रिंग बूट एप्लीकेशन में।
  1620. 1:03:44ठीक है? और ये सारे लेयर्स बनाना जरूरी
  1621. 1:03:45है। तो अभी हमारे पास डेटाबेस सेटअप है।
  1622. 1:03:47हमारे जो करंट प्रोजेक्ट है उसमें डेटाबेस
  1623. 1:03:49सेटअप है। हमने रिपॉज़िटरीज सेटअप नहीं की
  1624. 1:03:51है। ठीक है? हमने सर्विस नहीं सेटअप किया
  1625. 1:03:53है। हमने कंट्रोलर सेटअप नहीं किया है। तो
  1626. 1:03:55मैं क्या करूंगा? जल्दी से आ जाऊंगा हमारी
  1627. 1:03:57एप्लीकेशन में। यहां पर क्विकली हम
  1628. 1:03:59पैकेजेस बना देंगे। ठीक है? और यहां पर
  1629. 1:04:01मैं सबसे पहले बनाऊंगा कंट्रोलर। ठीक है?
  1630. 1:04:04और फिर एक और पैकेज बनाऊंगा। इस पैकेज का
  1631. 1:04:07नाम मैं लिख दूंगा अ सर्विस ऐसे। और फिर
  1632. 1:04:11एक और पैकेज मुझे बनानी पड़ेगी जिसका नाम
  1633. 1:04:14है रिपॉज़िटरी।
  1634. 1:04:18ठीक है? ये रिपॉज़िटरी। तो रिपॉज़िटरी में
  1635. 1:04:21अब देखिए हम जो एंड बंड बना रहे हैं वो
  1636. 1:04:22यूजर रिपॉज़िटरी बना रहे हैं। ठीक है? तो
  1637. 1:04:24यहां पर मैं आऊंगा एक इंटरफ़ेस बनाऊंगा और
  1638. 1:04:27यहां पर कहूंगा यूजर रिपॉज़िटरी इस तरीके
  1639. 1:04:30से। ठीक है? तो यूजर रिपॉज़िटरी बन गई। अब
  1640. 1:04:33इसको एनोटेट कर देंगे यहां पर रिपॉज़िटरी
  1641. 1:04:35इस तरीके से और यहां पर कर देंगे
  1642. 1:04:37एक्सटेंड्स। ठीक है? और जेपीए रिपॉज़िटरी
  1643. 1:04:40को एक्सटेंड कर देंगे। यहां पर यहां पर
  1644. 1:04:42लिख देंगे ये एंटिटी जो है जिसको जिसके
  1645. 1:04:45लिए बना रहे हैं हम वो यूजर है। ठीक है?
  1646. 1:04:47और यहां पर जो उसकी प्राइमरी की जो टाइप
  1647. 1:04:50है देखिए यूजर में जो प्राइमरी की है वो
  1648. 1:04:53है आईडी फील्ड और उसकी जो टाइप है
  1649. 1:04:55स्ट्रिंग है। तो उसको यहां पर मेंशन कर
  1650. 1:04:57देना है। ठीक है? बस ये रिपॉज़िटरी लेयर
  1651. 1:05:00सेट हो गया। ठीक है? स्ट्रिंग बूट बाकी का
  1652. 1:05:02काम कर लेगा। ठीक है? तो हमने ये डिफाइन
  1653. 1:05:04कर दिया है। अब हमें सर्विस बनाने की
  1654. 1:05:07जरूरत है। ठीक है? सर्विस तो बनी नहीं है
  1655. 1:05:09तो सर्विस बना लेते हैं। चलिए तो ये भी एक
  1656. 1:05:11जावा क्लास होगी और यहां पर हम कहेंगे
  1657. 1:05:13यूजर सर्विस। ठीक है? यूजर सर्विस बन चुकी
  1658. 1:05:16है और यहां पर मैं लिख दूंगा सर्विस इस
  1659. 1:05:19तरीके से। ठीक है? अब यहां पर कुछ लिखते
  1660. 1:05:21नहीं है। ठीक है? बाद में लिखेंगे जब
  1661. 1:05:23जरूरत हो लेकिन कंट्रोलर बना लेते हैं। तो
  1662. 1:05:26यूजर कंट्रोलर। ठीक है? ठीक है? कंट्रोलर
  1663. 1:05:29इस तरीके से। ठीक है? अ तो मुझे लगता है
  1664. 1:05:33थोड़ी सी इंप्रूवमेंट की जरूरत है यहां
  1665. 1:05:35पर। मैं एक चीज आपको बता दूं। तो ये जो
  1666. 1:05:37कंट्रोलर है उसको यूजर कंट्रोलर कहने के
  1667. 1:05:39बजाय ऑथ कंट्रोलर कहते हैं क्योंकि यूजर
  1668. 1:05:41क्रिएशन करने वाले हैं हम। करेक्ट? तो
  1669. 1:05:43इसको मैं थोड़ा रिफैक्टर कर देता हूं।
  1670. 1:05:45यूजर कंट्रोलर भी कह सकते हो लेकिन मुझे
  1671. 1:05:46थोड़ा यूजर कंट्रोलर थोड़ा इतना बढ़िया
  1672. 1:05:48नहीं लग रहा है। ठीक है? सच्ची बोलूं तो
  1673. 1:05:50ऑथ कंट्रोलर मुझे थोड़ा बढ़िया लग रहा है।
  1674. 1:05:52तो इसको मैं कर दूंगा ऑथ कंट्रोल। ऑथ
  1675. 1:05:54कंट्रोलर मतलब यहां पे लॉग इन रजिस्ट्रेशन
  1676. 1:05:56रिलेटेड सारी जो फंक्शनैलिटीज़ हम बनाने
  1677. 1:05:58वाले हैं वो सारी फंक्शनैलिटीज़ यहां पर
  1678. 1:06:00रहेंगी। तो इसको मैं कर दूंगा ऑथ कंट्रोलर
  1679. 1:06:03इस तरीके से। ठीक है? तो यह हो चुका है ऑथ
  1680. 1:06:06कंट्रोलर क्रिएट। ऑथ कंट्रोलर यूजर सर्विस
  1681. 1:06:08की मदद से यूजर रिपॉजिटरी की मदद से यूजर
  1682. 1:06:11रजिस्ट्रेशन, लॉग इन वगैरह वो सब में
  1683. 1:06:13हेल्प करेगा हमें। ठीक है? इतना तो सेट हो
  1684. 1:06:15गया। अब ऑथ कंट्रोलर में आ जाते हैं। ऑथ
  1685. 1:06:17कंट्रोलर से हम एंड पॉइंट्स को डिफाइन
  1686. 1:06:19करेंगे। ठीक है? एंड पॉइंट्स डिफाइन करने
  1687. 1:06:22के बाद जो बिज़नेस लॉजिक है उसको डिफाइन
  1688. 1:06:24करेंगे। ठीक है? और फिर अह डेटाबेस की मदद
  1689. 1:06:27से हम डेटा स्टोर करेंगे डेटाबेस में। ठीक
  1690. 1:06:30है? यहां पर अब देखिए यह रेस्ट कंट्रोलर
  1691. 1:06:32है तो सबसे पहले तो रेस्ट जीpआई बना रहे
  1692. 1:06:34हैं हम तो रेस्ट कंट्रोलर का एनोटेशन ऐड
  1693. 1:06:36कर देंगे। ठीक है? फिर यहां पर आ जाएंगे।
  1694. 1:06:38अब यहां पर मुझे एक चीज की जरूरत पड़ेगी।
  1695. 1:06:41क्या है वो एक चीज़? सर्विस लेयर का जो
  1696. 1:06:44ऑब्जेक्ट है उसकी जरूरत पड़ेगी। ठीक है?
  1697. 1:06:46लेकिन अभी जरूरत नहीं है। तो जब जरूरत
  1698. 1:06:47पड़ेगी तब मैं उसे बनाऊंगा। लेकिन मुझे
  1699. 1:06:49पता है जरूरत पड़ने वाली है। ठीक है? तो
  1700. 1:06:51यहां पर सबसे पहले तो पोस्ट मैपिंग की मदद
  1701. 1:06:53से हम एक एंड पॉइंट बनाना स्टार्ट कर देते
  1702. 1:06:55हैं। देखिए यह जो एंड पॉइंट मैं बना रहा
  1703. 1:06:57हूं वो होने वाला है रजिस्टर।
  1704. 1:07:00ठीक है? रजिस्टर एंड पॉइंट होने वाला है।
  1705. 1:07:02ठीक है? और इस एंड पॉइंट का पूरा यूआरएल
  1706. 1:07:04होने वाला है सश एपीआई
  1707. 1:07:07यूजर सैश एपीआई स्लैश यूजर स्लैश रजिस्टर।
  1708. 1:07:11ठीक है? अब इस कंट्रोलर में जितने भी एंड
  1709. 1:07:13पॉइंट्स आने वाले हैं वो इस लोकेशन पे
  1710. 1:07:16होने वाले हैं। स्लैश एपीआई स्लैश यूज़र्स।
  1711. 1:07:18तो मैं क्या करूंगा? इसको कट कर लेता हूं।
  1712. 1:07:20और यहां पर कंट्रोलर लेवल पे लिख दूंगा
  1713. 1:07:22रिक्वेस्ट मैपिंग। और यहां पर मैं लिख
  1714. 1:07:24दूंगा स्लैश एपीआई स्लैश यूज़र्स। इस तरीके
  1715. 1:07:27से। अब रिक्वेस्ट मैपिंग एक ऐसा एनोटेशन
  1716. 1:07:29है जिसकी मदद से आप क्या कर सकते हो? आप
  1717. 1:07:31मेंशन कर सकते हो कि इस कंट्रोलर में
  1718. 1:07:34जितने भी एंड पॉइंट्स बने उसके आगे ये
  1719. 1:07:37लगाना है स्लैश एपीआई स्लैश यूज़र्स। तो कल
  1720. 1:07:39को अगर आप लॉग इन एंड पॉइंट बनाते हो यहां
  1721. 1:07:41पर एक लॉग इन एंड पॉइंट बनाते हो। ठीक है?
  1722. 1:07:42ऐसे तो वो लॉग इन स्लैश लॉगिन एंड पॉइंट
  1723. 1:07:45नहीं होगा। वो होगा स्लैश एपीआई स्लैश
  1724. 1:07:47यूज़र्स स्लैश लॉग इन। ठीक है? इस तरीके से
  1725. 1:07:49ऑर्गेनाइजेशन हो जाती है थोड़ी कोड में।
  1726. 1:07:51ठीक है? और एपीआई में ऑर्गेनाइजेशन होना
  1727. 1:07:53काफी जरूरी है। ठीक है? और बार-बार ये मैं
  1728. 1:07:56रिपीट भी नहीं करना चाहूंगा। स्लैश एपीi
  1729. 1:07:57यूज़र अभी 10 एपीआई मैं बना रहा हूं तो
  1730. 1:07:59स्लैश एपीआई स्लैश यूज़र्स स्लैश एपीआई
  1731. 1:08:01स्लैश यूज़र्स हर एपीआई में कहीं कुछ टाइप
  1732. 1:08:03हो गया तो प्रॉब्लम हो जाएगी ना और कल को
  1733. 1:08:05मुझे अगर ये स्लैश एपीआई स्लैश यूज़र्स
  1734. 1:08:07करके स्लैश ऑथ चेंज करना है तो मुझे सब
  1735. 1:08:10जगह पर चेंज करना पड़ेगा तो रिक्वेस्ट
  1736. 1:08:12मैपिंग एनोटेशन का बेनिफिट ये है कि ये
  1737. 1:08:13कंट्रोलर लेवल पे लिख दिया आपने फ्यूचर
  1738. 1:08:15में आपको मॉडिफाई करना है ये कॉमन पार्ट
  1739. 1:08:18जो है एंड पॉइंट का उसको आपने कंट्रोलर
  1740. 1:08:19लेवल पे लिख दिया कल को आपको कुछ मॉडिफाई
  1741. 1:08:22करना है एक जगह पर करो और सब जगह मॉडिफाई
  1742. 1:08:24हो जाएगा ठीक है ईजी टू मैनेज है और कोई
  1743. 1:08:26अगर पढ़ रहा है यह कंट्रोलर को आगे चलके
  1744. 1:08:29आपका टीममेट उसको समझ जाएगा अच्छा तो यह
  1745. 1:08:32कंट्रोलर जो है वह इस एंड पॉइंट पर सारी
  1746. 1:08:35एपीआई जो भी है इस इस एंड पॉइंट पर जितनी
  1747. 1:08:39भी रिक्वेस्ट आती है इस एंड पॉइंट से
  1748. 1:08:41स्टार्ट होने वाली जितनी भी रिक्वेस्ट है
  1749. 1:08:43वो ये कंट्रोलर मैनेज कर रहा है। ठीक है?
  1750. 1:08:45ये ये सारे बेनिफिट्स हैं रिक्वेस्ट
  1751. 1:08:46मैपिंग एनोटेशंस के। तो रिक्वेस्ट मैपिंग
  1752. 1:08:48मैंने ऐड कर दी है। रिक्वेस्ट मैपिंग का
  1753. 1:08:50उम्मीद करता हूं आपको बेनिफिट समझ में
  1754. 1:08:52आया। अगर आपको चाहिए तो कंट्रोल को होल्ड
  1755. 1:08:54कीजिए और मैक पर हो तो कमांड को होल्ड
  1756. 1:08:55कीजिए और इस पर हो कीजिए तो यह लिंक बन
  1757. 1:08:57जाएगा। अंदर जाइए और यहां पर डाउनलोड
  1758. 1:08:59सोर्सर्सेस कर लीजिए। ठीक है? डाउनलोड
  1759. 1:09:01सोर्सेस आप करोगे तो देखिए रिक्वेस्ट
  1760. 1:09:03मैपिंग का मतलब क्या है? यहां पर पूरा
  1761. 1:09:05लिखा हुआ है। देखिए यहां पर एनोटेशन फॉर
  1762. 1:09:07मैपिंग वेब रिक्वेस्ट ऑन टू मेथड्स इन ए
  1763. 1:09:10रिक्वेस्ट हैंडलिंग क्लासेस विद
  1764. 1:09:12फ्लैक्सिबल मेथड सिग्नेचर्स। अच्छा काफी
  1765. 1:09:14ज्यादा तगड़ी अंग्रेजी में लिखा हुआ है।
  1766. 1:09:16शायद समझ में ना आए बट ठीक है। इसका मतलब
  1767. 1:09:18मैंने समझा दिया है आपको। ठीक है? तो यहां
  1768. 1:09:21पर मैंने लिख दिया है ये कैसे यूज़ करना
  1769. 1:09:23है। ठीक है? तो ये मैंने मेंशन कर दिया
  1770. 1:09:24है। अब यहां पर मैं लिखूंगा पब्लिक और
  1771. 1:09:27यहां पर मैं लिखूंगा यूजर रिस्पांस। ठीक
  1772. 1:09:30है? अ सॉरी यूजर लिखूंगा मैं यहां पर।
  1773. 1:09:33क्योंकि मेरा मेरा जो डेटा है वो रिटर्न
  1774. 1:09:35होना है एज अ यूजर। ठीक है? और फिर यहां
  1775. 1:09:37पर लिखूंगा रजिस्टर। ठीक है? और यहां पर
  1776. 1:09:40मैं एक्सेप्ट करूंगा यूजर का ऑब्जेक्ट।
  1777. 1:09:43ठीक है? यूजर का ऑब्जेक्ट ही एक्सेप्ट कर
  1778. 1:09:45रहा हूं। ठीक है? और यहां पर मैं कहूंगा
  1779. 1:09:48रिटर्न और फिर यहां पर कहूंगा यूजर सर्विस
  1780. 1:09:55डॉट रजिस्टर। अब यूजर सर्विस का ऑब्जेक्ट
  1781. 1:09:58तो मैंने बनाया नहीं है तो बनानी पड़ेगी।
  1782. 1:10:00ठीक है? वो बनाते हैं हम। ठीक है? तो मैं
  1783. 1:10:03क्या कर रहा हूं? यहां से यूजर को अ यूजर
  1784. 1:10:06का एक पैरामीटर ले रहा हूं। ठीक है? इस
  1785. 1:10:08तरीके से और यह कहां पे ले रहा हूं? यह
  1786. 1:10:10मैं ले रहा हूं रिक्वेस्ट बॉडी में। ठीक
  1787. 1:10:12है? रिक्वेस्ट बॉडी में इस तरीके से ले
  1788. 1:10:14रहा हूं। और फिर इसको पास कर रहे हैं
  1789. 1:10:16रजिस्टर में। और फिर जो आउटपुट आ रहा है
  1790. 1:10:19वह हम रिटर्न कर रहे हैं यहां पर। ठीक है?
  1791. 1:10:21तो सेव्ड यूजर का जो ऑब्जेक्ट है जो हमें
  1792. 1:10:23सर्विस लेयर देगा वो हम रिटर्न कर रहे हैं
  1793. 1:10:26यहां पे। ये रिटर्न करने की जरूरत नहीं
  1794. 1:10:27है। आप चाहो तो कुछ स्ट्रिंग भी रिटर्न कर
  1795. 1:10:29सकते हो कि यूजर सेव्ड सक्सेसफुली ऐसे
  1796. 1:10:31करके। लेकिन मैं यूजर ही रिटर्न कर रहा
  1797. 1:10:33हूं। क्योंकि क्या है? देखिए आप जब
  1798. 1:10:34रिक्वेस्ट करोगे तब आपके पास आईडी नहीं
  1799. 1:10:36होगी यूजर की। रजिस्टर होने के बाद आईडी
  1800. 1:10:39जनरेट होगी। और अगर आप सेव्ड ऑब्जेक्ट को
  1801. 1:10:41रिटर्न करते हो तो यूजर जो है जिसने एपीआई
  1802. 1:10:44कॉल करी थी उसको आईडी मिल जाएगी कि अच्छा
  1803. 1:10:46यह यूजर का डिटेल्स मैंने भेजी थी और यह
  1804. 1:10:48सेव हो चुका है और ये अब सेव्ड यूजर की
  1805. 1:10:51आईडी है। इसके लिए रिटर्न कर रहे हैं हम।
  1806. 1:10:54ठीक है? तो यहां पर देखिए अभी सबसे पहले
  1807. 1:10:56यूजर सर्विस पे रेड मार्क आ रहा है। सारे
  1808. 1:10:58रेड मार्क्स को सॉल्व करते हैं। तो यहां
  1809. 1:10:59पर मैं लिखूंगा प्राइवेट यूजर सर्विस।
  1810. 1:11:03प्राइवेट फाइनल लिख देता हूं। यूजर सर्विस
  1811. 1:11:06ऐसे और यूजर सर्विस लिख देता हूं यहां पर।
  1812. 1:11:09ठीक है? ये मैंने कर लिया है। अब यहां पर
  1813. 1:11:11मुझे एक कंस्ट्रक्टर बनाना पड़ेगा। तो ये
  1814. 1:11:14कंस्ट्रक्टर मैं क्यों बनाऊंगा? क्योंकि
  1815. 1:11:15मुझे इसका जो देखिए ये स्प्रिंग मैनेज्ड
  1816. 1:11:18कंपोनेंट है यूजर सर्विस। और मैं चाहता
  1817. 1:11:21हूं कि यूजर सर्विस का एक इंस्टेंस यहां
  1818. 1:11:23पे प्रोवाइड किया जाए ऑथ कंट्रोलर में। तो
  1819. 1:11:26मैंने क्या किया? यहां पर एक अ
  1820. 1:11:28कंस्ट्रक्टर बना दिया और स्प्रिंग मैनेज
  1821. 1:11:31कंपोनेंट है तो स्प्रिंग दिखेगा। अच्छा ये
  1822. 1:11:33क्लास में अ यूजर सर्विस का एक इंस्टेंस
  1823. 1:11:35नीडेड है। तो एक इंस्टेंस वो खुद ब खुद
  1824. 1:11:37पास कर देगा। ठीक है? ये स्प्रिंग
  1825. 1:11:38फ्रेमवर्क की खासियत है। ठीक है? और
  1826. 1:11:41स्प्रिंग बूट जो है वो बना है स्प्रिंग
  1827. 1:11:42फ्रेमवर्क पर। ठीक है? तो यहां पर वो
  1828. 1:11:45इनिशियल इनिशियलाइजेशन जो है यूजर सर्विस
  1829. 1:11:47का वो टेकन केयर हो जाएगा यहां पर। ठीक
  1830. 1:11:49है? अब देखिए हम लॉबक का इस्तेमाल कर रहे
  1831. 1:11:51हैं। तो मैं नहीं चाहता मैं कंस्ट्रक्टर
  1832. 1:11:53लिखूं। ठीक है? आदत बिगड़ गई है लॉबक का
  1833. 1:11:56इस्तेमाल करने के बाद। ठीक है? तो यहां पर
  1834. 1:11:58मैं लिख दूंगा रिक्वायर्ड आर्क
  1835. 1:12:01कंस्ट्रक्टर। रिक्वायर्ड आस्क्
  1836. 1:12:02कंस्ट्रक्टर का मतलब क्या है? यहां पर अगर
  1837. 1:12:04मैं ऐसे लिखता हूं रिक्वायर्ड आस्क्
  1838. 1:12:05कंस्ट्रक्टर। तो ये उन्हीं उन्हीं फील्ड्स
  1839. 1:12:09का कंस्ट्रक्टर बनाएगा जो फाइनल है। तो
  1840. 1:12:12देखिए जो फाइनल है उन्हीं का कंस्ट्रक्टर
  1841. 1:12:14बनाएगा। ठीक है? जनरली होता क्या है? अगर
  1842. 1:12:17मैं एक और फील्ड जनर डिफाइन कर दूं यहां
  1843. 1:12:19पर प्राइवेट और स्ट्रिंग डिफाइन कर दूं ए
  1844. 1:12:22बी सी। तो अगर मैं ऑल आस्क् कंस्ट्रक्टर
  1845. 1:12:25लिखता हूं यहां पर तो वो क्या करेगा? इसको
  1846. 1:12:27भी इंक्लूड कर देगा कंस्ट्रक्टर में। ठीक
  1847. 1:12:29है? लेकिन ये स्ट्रिंग मैनेजर ऑब्जेक्ट है
  1848. 1:12:31क्या? नहीं है स्प्रिंग मैनेजर ऑब्जेक्ट।
  1849. 1:12:32तो मैं नहीं चाहता इसका ऑब्जेक्ट बने। तो
  1850. 1:12:34मैं क्या करूंगा? मैं यूजर सर्विस को
  1851. 1:12:35फाइनल मार्क कर देता हूं और यहां पर लिख
  1852. 1:12:37देता हूं रिक्वायर्ड आस्क् कंस्ट्रक्टर।
  1853. 1:12:39तो जो रिक्वायर्ड आर्गुमेंट्स हैं जैसे कि
  1854. 1:12:40फाइनल है वो जो उन्हीं का कंस्ट्रक्टर
  1855. 1:12:43बनेगा। ठीक है? अब ये एरर दे रहा है
  1856. 1:12:44क्योंकि कंस्ट्रक्टर ऑलरेडी एग्ज़िस्ट करता
  1857. 1:12:46है। तो इसको मैं डिलीट कर देता हूं यहां
  1858. 1:12:47से। इसको भी डिलीट कर देता हूं। जरूरत
  1859. 1:12:49जरूरत नहीं है। ठीक है? तो ये यूजर सर्विस
  1860. 1:12:52का इंस्टेंस मिल गया। कंस्ट्रक्टर भी हट
  1861. 1:12:53गया। कंस्ट्रक्टर लेकिन एक्चुअली कंपाइल
  1862. 1:12:55टाइम पे क्रिएट हो रहा है रिक्वायर्ड आस्क
  1863. 1:12:57कंस्ट्रक्टर की मदद से। ठीक है? और यहां
  1864. 1:12:59पर रजिस्टर भी आ चुकी है। ठीक है? तो
  1865. 1:13:02रजिस्टर में एरर आ रहा है तो मैं क्या
  1866. 1:13:04करूंगा? क्रिएट कर दूंगा ये मेथड रजिस्टर।
  1867. 1:13:06ठीक है? और ये देखिए यूजर का इंस्टेंस को
  1868. 1:13:09एक्सेप्ट कर रहा है यहां पर। अब यहां पर
  1869. 1:13:11मुझे क्या करना है? मुझे
  1870. 1:13:14तो अब हम यहां पर क्या करेंगे? यहां पर
  1871. 1:13:16मैं रिपॉज़िटरी का इस्तेमाल करूंगा। ठीक
  1872. 1:13:18है? मुझे रिपॉजिटरी का इस्तेमाल करने की
  1873. 1:13:19जरूरत पड़ेगी। क्योंकि इसको मुझे डेटाबेस
  1874. 1:13:21में सेव करना है। तो मैं क्या करूंगा?
  1875. 1:13:23यहां पर आ जाऊंगा और यहां पर प्राइवेट
  1876. 1:13:25फाइनल और यूजर रिपॉज़िटरी और यूजर
  1877. 1:13:28रिपॉज़िटरी ऐसे मैं क्रिएट कर दूंगा। और
  1878. 1:13:31यहां पर देखिए ये बोल रहा है ओवर करोगे ना
  1879. 1:13:33रेडम मार्क आ रहा है कि वेरिएबल यूजर
  1880. 1:13:35रिपॉजिटरी माइट नॉट हैव बीन इनिशलाइज्ड।
  1881. 1:13:36तो यहां पर आपको बोलना है रिक्वायर्ड आस्क
  1882. 1:13:39कंस्ट्रक्टर। ठीक है? रिक्वायर्ड आस्क
  1883. 1:13:40कंस्ट्रक्टर करोगे तो इसका कंस्ट्रक्टर
  1884. 1:13:42ऑटोमेटिकली जनरेट हो जाएगा और ये
  1885. 1:13:43इनिशियलाइज़ भी हो जाएगा। ठीक है? अब यहां
  1886. 1:13:46पर आओगे आप तो आपको कहना है यूजर
  1887. 1:13:47रिपॉज़िटरी
  1888. 1:13:49डॉट सेव। ठीक है? और यहां पर यूजर को पास
  1889. 1:13:52करना है। अब सेव मेथड क्या करता है? जो
  1890. 1:13:55सेव्ड इंस्टेंस है उसको रिटर्न करता है।
  1891. 1:13:57तो आप देखिए यहां पर अगर आप जाओगे डाउनलोड
  1892. 1:14:00सोर्सेस करोगे तो यह देखिए यह पैरामीटर
  1893. 1:14:05एंटिटी लेता है और रिटर्न्स द सेव्ड
  1894. 1:14:08एंटिटी जो एंटिटी सेव हो चुकी है विद आईडी
  1895. 1:14:10वो रिटर्न करता है। ठीक है? तो मैं क्या
  1896. 1:14:12कर सकता हूं? इसका जो रिटर्न है उसी को
  1897. 1:14:14रिटर्न कर सकता हूं ऐसे। ठीक है? इसका जो
  1898. 1:14:16आउटपुट है वो रिटर्न हो जाएगा। ठीक है? और
  1899. 1:14:18फिर उसका आउटपुट कंट्रोलर के पास आ जाएगा।
  1900. 1:14:20ठीक है? इतना हो गया। अब हम क्या करेंगे?
  1901. 1:14:23इतनी चीज हो चुकी है। ठीक है? इसको अब रन
  1902. 1:14:28करके देखते हैं। ठीक है? तो
  1903. 1:14:31तो एक काम करते हैं। इसको रन कर लेते हैं।
  1904. 1:14:33ठीक है? रन करते हैं और इसको सीधे-सीधे
  1905. 1:14:36कोशिश करते हैं। अच्छा मुझे देखिए प्र्ट आ
  1906. 1:14:38गया कि इनेबल एनोडेशन प्रोसेसिंग। तो अगर
  1907. 1:14:42आप एनोटेशंस का फर्स्ट टाइम इस्तेमाल करते
  1908. 1:14:43हो। ठीक है? तो आपको एनोटेशन प्रोसेसिंग
  1909. 1:14:46को इनेबल करना है। ये मैंने नहीं किया हुआ
  1910. 1:14:48था। ठीक है? तो आपको यहां पर आना है। इस
  1911. 1:14:51पर भी क्लिक कर दोगे तो काम हो जाएगा। ठीक
  1912. 1:14:53है? इनेबल हो चुका है। लेकिन अगर यह नहीं
  1913. 1:14:57चलता है तो आपको सेटिंग्स में आना है। और
  1914. 1:15:00यहां पर एनोटेशन प्रोसेसिंग को सर्च करना
  1915. 1:15:02है। एनोटेशन प्रोसेसिंग तो देखिए एनोटेशन
  1916. 1:15:05प्रोसेसिंग और यहां पर जो है ये इनेबल
  1917. 1:15:08होना चाहिए। ठीक है? और ऑब्टेन प्रोसेसर्स
  1918. 1:15:11फ्रॉम क्लास पाथ होना चाहिए। ठीक है? कोई
  1919. 1:15:13भी इशू आता है तो ये करना है आपको और फिर
  1920. 1:15:15रन करना है प्रोजेक्ट तो लॉन्ग बॉक्स
  1921. 1:15:17चलेगा। अच्छा यहां पर फिर से आ गया पंगा।
  1922. 1:15:20तो ये इशू क्यों आ रहा है? इज़ ऑलरेडी
  1923. 1:15:23डिफाइंड।
  1924. 1:15:24अच्छा यहां पर कुछ दिक्कत हो गई है। तो ऑथ
  1925. 1:15:27कंट्रोलर
  1926. 1:15:29ऑथ कंट्रोलर में यह बोल रहा है
  1927. 1:15:31कंस्ट्रक्टर
  1928. 1:15:33अच्छा क्या हो गया है यहां पर इज ऑलरेडी
  1929. 1:15:35डिफाइंड ठीक है रिक्वायर्ड आस्क्
  1930. 1:15:38कंस्ट्रक्टर ऑल आस्क् कंस्ट्रक्टर अच्छा
  1931. 1:15:41शायद यह डुप्लीकेट हो चुका है ऑल आस्क्
  1932. 1:15:44कंस्ट्रक्टर भी लिखा है मैंने और
  1933. 1:15:46रिक्वायर्ड आस्क् लिखा है तो ऑल आस्क् को
  1934. 1:15:48हटा देता हूं फिलहाल ठीक है और फिर यहां
  1935. 1:15:52पर आ जाता हूं और रिक्वायर्ड आस्क् तो सही
  1936. 1:15:54है इसको रन करता हूं देखता हूं क्या
  1937. 1:15:56दिक्कत हो रही है
  1938. 1:15:58ठीक है? अब ऐप चल गई। ठीक है? तो वह एक
  1939. 1:16:00डुप्लीकेट एनोटेशन था जिसको मैंने हटा
  1940. 1:16:03दिया वहां से। ठीक है? तो देखिए एप्लीकेशन
  1941. 1:16:06तो चल गई है। अब यहां पर आ जाते हैं। यहां
  1942. 1:16:08पर मैंने ऑलरेडी पोस्टमैन कलेक्शन एक बना
  1943. 1:16:10ली है। ठीक है? ये फिटनेस ऐप मोनोलिथ
  1944. 1:16:12पोस्टमैन में आइए और आप यहां पे प्लस बटन
  1945. 1:16:15पे क्लिक करके बना सकते हो कलेक्शन। और
  1946. 1:16:16यहां पर ऐड अ न्यू रिक्वेस्ट कर दीजिए।
  1947. 1:16:18ठीक है? इसको कोलैप्स कर देता हूं। अब
  1948. 1:16:20यहां पर लोकल होस्ट ऐसे टाइप कर लीजिए।
  1949. 1:16:23ठीक है? और आपकी जो भी एंड पॉइंट यूआरएल
  1950. 1:16:25थी तो मेरी थी एपीआई ऑथ रजिस्टर तो यहां
  1951. 1:16:28पर आइए ठीक है यहां पर लोकल होस्ट एटी80
  1952. 1:16:31लिखिए स्लश एपीआई
  1953. 1:16:34सॉरी एपीआई
  1954. 1:16:37ऑथ स रजिस्टर ऐसे टाइप कीजिए बॉडी में आइए
  1955. 1:16:41रॉ jसन ठीक है अब यहां पर रॉ jसन को हम
  1956. 1:16:45पास करेंगे यहां पर बॉडी में ठीक है तो
  1957. 1:16:47यहां पर jसन पहले बना लूंगा ऐसे और
  1958. 1:16:49क्या-क्या फील्ड्स चाहिए हमें हमें चाहिए
  1959. 1:16:51ईमेल ठीक है ईमेल को ऐसे ऐसे लिखना है। तो
  1960. 1:16:53ये json का सिंटेक्स है। ईमेल फिर लिखना
  1961. 1:16:56है पासवर्ड ऐसे।
  1962. 1:16:59ठीक है? पासवर्ड और फिर हमें लिखना है
  1963. 1:17:03फर्स्ट नेम ऐसे। तो देखिए ये जो आप कीज़
  1964. 1:17:06लिख रहे हो JSN कैसा है? की है और फिर
  1965. 1:17:09यहां पर कोलन के बाद वैल्यू है। करेक्ट?
  1966. 1:17:11वैल्यू अभी एम्प्टी है। की और वैल्यू है।
  1967. 1:17:13तो जो की लिख रहे हो ना आप ये डेटाबेस में
  1968. 1:17:16आपने जो की डिफाइन की है वैसे होना चाहिए।
  1969. 1:17:18डेटाबेस मतलब ये जो यूजर मॉडल में जो की
  1970. 1:17:20आपने डिफाइन किया है जैसे फर्स्ट ऑफ़ एन
  1971. 1:17:22कैपिटल ऐसे लिखना है आपको। ये सेम नेम
  1972. 1:17:25फॉलो होना चाहिए। ठीक है? क्यों ये सेम
  1973. 1:17:27नेम फॉलो होना चाहिए? क्यों? क्योंकि ऑथ
  1974. 1:17:30कंट्रोलर में आप यूजर का इंस्टेंस
  1975. 1:17:32एक्सेप्ट कर रहे हो। यूजर इंस्टेंस क्या
  1976. 1:17:34है? ये। तो इसमें जो फील्ड्स है वो सेम टू
  1977. 1:17:37सेम दिखनी चाहिए आपको। ठीक है? तो ये आपको
  1978. 1:17:40लिखना है। ठीक है? यह आपने लिख दिया
  1979. 1:17:42फर्स्ट नेम और फिर यहां पर आपको आना है और
  1980. 1:17:45फिर यहां पर लिखना है लास्ट नेम। ठीक है?
  1981. 1:17:48ऐसे इसको आपने लिख दिया और फिर यहां पर
  1982. 1:17:53आपको क्रिएटेड एट क्रिएटेड एट को लिखना
  1983. 1:17:57है। ठीक है? और इसको कोलन और फिर ऐसे और
  1984. 1:18:01फिर आएगा अपडेटेड एट अपडेटेड एट। देखिए
  1985. 1:18:04दोस्तों, एक चीज़ मैं आपको बता दूं।
  1986. 1:18:06क्रिएटेड एट और अपडेटेड एट ये जो डेट्स
  1987. 1:18:08है, यह ऑटो पॉपुलेट होनी चाहिए। लेकिन,
  1988. 1:18:10अभी फिलहाल कैसे ऑटो पॉपुलेट करनी है, उस
  1989. 1:18:13पर मैं आता नहीं हूं। ठीक है? स्टेप बाय
  1990. 1:18:14स्टेप जाना है हमें। ठीक है? तो ईमेल में
  1991. 1:18:16लिख दूंगा। ईमेल में हम लिखेंगे
  1992. 1:18:18[email protected]
  1993. 1:18:20पासवर्ड आप दे दीजिए abc@ 1 2 3
  1994. 1:18:254 5 6 जो भी देना है आपको। फर्स्ट नेम आप
  1995. 1:18:28लिख सकते हो अ जॉन और फिर लास्ट नेम आप
  1996. 1:18:31लिख सकते हो डो इस तरीके से। देखिए
  1997. 1:18:33क्रिएटेड एट और अपडेटेड एट ना यह एक
  1998. 1:18:36पर्टिकुलर फॉर्मेट में जाना है। जैसे कि
  1999. 1:18:38लोकल डेट टाइम। ठीक है? तो आप इस पर क्लिक
  2000. 1:18:40कर सकते हो। यहां पर अगर आपको कुछ फॉर्मेट
  2001. 1:18:42दिखता है। अच्छा लकीली यहां पर एक
  2002. 1:18:46प्रीडफाइंड ये देखिए ये ये फॉर्मेट में
  2003. 1:18:49डेटा चाहिए होता है। डेट टाइम में अगर आप
  2004. 1:18:51डेट टाइम स्टोर करते हो डेटाबेस में तो ये
  2005. 1:18:53फॉर्मेट में चाहिए होता है ISO 8601
  2006. 1:18:55कैलेंडर सिस्टम। ठीक है? तो यहां पर देखिए
  2007. 1:18:58ये एक डेट एग्जांपल बनी हुई है। ये कॉपी
  2008. 1:19:00कर सकते हो आप। अगर आपको ये नहीं मिलता
  2009. 1:19:02है। ठीक है? तो आप क्या कर सकते हो? टाइम
  2010. 1:19:05स्टैंप हफन कन्व्टर पे आ सकते हो। और यहां
  2011. 1:19:07पर थोड़े प्रीपॉपुलेटेड वैल्यूज़ आपको दिख
  2012. 1:19:09जाएंगी। ठीक है? तो ये वाला जो है ISO
  2013. 1:19:118601 इसको कॉपी कर लेना है और मैं इसको
  2014. 1:19:15यहां पर पेस्ट कर दूंगा ऐसे ही। ठीक है?
  2015. 1:19:18ये हो गया और इसको गेट से पोस्ट जरूर कर
  2016. 1:19:20लीजिएगा। ठीक है? यह भूलिएगा नहीं तो गलत
  2017. 1:19:22रिक्वेस्ट टाइप हो जाएगा। तो देखिए पोस्ट
  2018. 1:19:24रिक्वेस्ट है। ये एंड पॉइंट है। ये बॉडी
  2019. 1:19:27है उसकी रॉ jसin। ठीक है? इसको सेंड करके
  2020. 1:19:29देखते हैं। होता क्या है? एक्चुअली क्रैश
  2021. 1:19:31ना करे तो बेहतर है। अच्छा क्रिएट हो गया।
  2022. 1:19:33चलो मुझे लगा कुछ एरर आएगी। कुछ डिबवक का
  2023. 1:19:36चांस मिलेगा। लेकिन कोई बात नहीं। चलो
  2024. 1:19:37क्रिएट हो चुकी है। देखिए डेटा क्रिएट हो
  2025. 1:19:40चुका है। ठीक है? और ये है डेट टाइम का
  2026. 1:19:43फॉर्मेट जिस जो सेव हो चुका है डेटाबेस
  2027. 1:19:45में। ठीक है? और यहां पर आप देख सकते हो
  2028. 1:19:47आईडी भी आपको मिली है यहां पर। ठीक है?
  2029. 1:19:51आईडी भी मिली है। क्यों मिली है आईडी?
  2030. 1:19:53क्योंकि आप सेव्ड यूजर का जो ऑब्जेक्ट है
  2031. 1:19:55उसको रिटर्न कर रहे हो। और उसमें सेव होने
  2032. 1:19:58के बाद आईडी ऑटोमेटिकली पॉपुलेट हो रही है
  2033. 1:20:00क्योंकि डेटाबेस लेवल पर आपने ऑटोमेटिकली
  2034. 1:20:02आईडी जो है उसे ऑटो जनरेट किया है। तो
  2035. 1:20:05इसीलिए आपको ये मिल रहा है डेटा। ठीक है?
  2036. 1:20:07तो उम्मीद करता हूं ये आपको समझ में आया।
  2037. 1:20:09आप चाहे तो यहां पर डेटाबेस में जाकर ठीक
  2038. 1:20:12है? अब यहां पर जाइए। अ यूजर टेबल कहां
  2039. 1:20:15चली गई? अ ये रही यूजर टेबल। इसको ऐसे
  2040. 1:20:17क्लिक कीजिए। और यहां पर आप देख सकते हो
  2041. 1:20:19एक यूजर की एंट्री भी मिल जाएगी आपको। यही
  2042. 1:20:21यूजर है जो आपको आपने रिक्वेस्ट की थी
  2043. 1:20:24उसकी और यहां पर आपको सेव्ड मिल रहा है
  2044. 1:20:26डेटाबेस में देख सकते हैं आप। ठीक है? तो
  2045. 1:20:29फ्रॉम एपीआई एपीआई से लेकर पोस्टमैन से
  2046. 1:20:33लेकर आपने डेटाबेस तक का सफर किया है आपके
  2047. 1:20:35डेटा ने और आपका एप्लीकेशन बिल्कुल सही
  2048. 1:20:37तरीके से वर्क कर रहा है। ठीक है? इसको और
  2049. 1:20:39इंप्रूव करिएगा। जैसे कि देखिए इसमें ये
  2050. 1:20:42ये जो क्रिएटेड अपडेटेड है ये ऐसा आपको
  2051. 1:20:45सेंड नहीं करना है एपीआई में। ये ऑटो
  2052. 1:20:47जनरेट होना चाहिए। करेक्ट? ये कैसे होगा
  2053. 1:20:48ऑटो जनरेट? ये सारी चीजें हम स्टेप बाय
  2054. 1:20:50स्टेप सीखेंगे। एक-एक करके जाएंगे। एक-एक
  2055. 1:20:52करके समझेंगे चीजों को। ठीक है? बड़ा मजा
  2056. 1:20:55आने वाला है। ठीक है? लेकिन अगर आप यहां
  2057. 1:20:57तक पहुंच चुके हो, तो मुझे प्लीज बताइए
  2058. 1:21:00आप। ठीक है? उम्मीद करता हूं ये हेल्पफुल
  2059. 1:21:01रहा।
  2060. 1:21:07तो दोस्तों, बात कर लेते हैं और समझ लेते
  2061. 1:21:10हैं डीटीओ पैटर्न क्या होता है। ठीक है?
  2062. 1:21:13तो देखिए डीटीओ। तो यह डीटीओ का मतलब क्या
  2063. 1:21:16है? डीटीओ। टीटीओ का मतलब है डेटा
  2064. 1:21:19ट्रांसफर ऑब्जेक्ट। ये मतलब नहीं है। ये
  2065. 1:21:22एक्चुअली एक हिसाब से फुल फॉर्म है। ठीक
  2066. 1:21:23है? मतलब मैं अभी समझा रहा हूं। ठीक है?
  2067. 1:21:25तो देखिए अभी ऐप में हो क्या रहा है?
  2068. 1:21:28हमारे पास एक कंट्रोलर है। ठीक है? तो ये
  2069. 1:21:31हो गई कंट्रोलर। ठीक है? और कंट्रोलर। तो
  2070. 1:21:35इस कंट्रोलर को जो रिक्वेस्ट आ रही है वो
  2071. 1:21:37एक्सटर्नल वर्ल्ड से आ रही है। तो
  2072. 1:21:38एक्सटर्नल वर्ल्ड से कोई भी हो सकता है।
  2073. 1:21:40मान लीजिए आपने एपीआई किसके साथ शेयर करी
  2074. 1:21:42है। फ्रंट एंड टीम यूज़ कर सकती है। एपीआई
  2075. 1:21:44इसका काफी इस्तेमाल होता है। जैसे कि
  2076. 1:21:46फ्रंट एंड टीम इस्तेमाल कर सकती है। बैक
  2077. 1:21:47एंड टीम कोई दूसरी बैक एंड टीम इसका
  2078. 1:21:49इस्तेमाल कर सकती है। कुछ काम के लिए कोई
  2079. 1:21:53मोबाइल ऐप की टीम इस्तेमाल कर सकती है।
  2080. 1:21:55ठीक है? तो ये एपीआई कोई भी यूज़ कर सकता
  2081. 1:21:57है। ठीक है? अब देखिए यहां पर अगर आप इस
  2082. 1:22:00कंट्रोलर में देखेंगे तो हमने क्या किया
  2083. 1:22:02हुआ है? हमने यहां पर यूजर का जो मॉडल है
  2084. 1:22:05उसको एक्सेप्ट किया है। यूजर का जो मॉडल
  2085. 1:22:09है उसको एक्सेप्ट किया है अ एज अ
  2086. 1:22:11पैरामीटर। ठीक है? और रिस्पांस में भी
  2087. 1:22:14यूजर के मॉडल को रिटर्न किया है। तो मैं
  2088. 1:22:16आपको दिखा देता हूं सोर्स कोड अगर आप यहां
  2089. 1:22:17पर आएंगे। ठीक है? ये मैं सोर्स कोड बता
  2090. 1:22:19रहा हूं। यहां पर आपको ये यूजर का जो अह
  2091. 1:22:22ऑब्जेक्ट है, इसे ऐज़ अ रिक्वेस्ट एक्सेप्ट
  2092. 1:22:25किया जा रहा है। और इसी को ऐज़ अ रिस्पांस
  2093. 1:22:27रिटर्न किया जा रहा है। आप देख सकते हो।
  2094. 1:22:29ठीक है? लेकिन, यह यूजर है क्या? ये एक
  2095. 1:22:31हिसाब से मॉडल है। मॉडल है। इसका मतलब ये
  2096. 1:22:33एंटिटी है जो डेटाबेस में पर्सिस्ट होनी
  2097. 1:22:36है। ठीक है? तो देखिए यहां पर आते हैं। ये
  2098. 1:22:40यूजर है। ठीक है? ये डेटाबेस में भी जाना
  2099. 1:22:43है। ठीक है? ये डेटाबेस में जाएगी। ठीक
  2100. 1:22:45है? यहां पर मैं बना देता हूं इस तरीके से
  2101. 1:22:47डेटाबेस। ठीक है? ठीक है? ऐसा। और ये एरो
  2102. 1:22:51पता नहीं बाहर चले गया। तो यहां से एक नया
  2103. 1:22:53एरो बना लेता हूं। ठीक है? तो देखिए ये जो
  2104. 1:22:56अ एंटिटी है ये पर्सिस्ट है डेटाबेस में।
  2105. 1:22:59अब होता क्या है देखिए यह एंटीटी को
  2106. 1:23:02डिज़ाइन किया गया था डेटाबेस पर्सिस्टेंस
  2107. 1:23:04को ध्यान में रखते हुए ठीक है यूजर को
  2108. 1:23:05हमें किस तरीके से हमारे एप्लीकेशन में
  2109. 1:23:07रिप्रेजेंट करना है ठीक है हम इस यूजर
  2110. 1:23:09क्लास को अक्रॉस दी एप्लीकेशन इस्तेमाल कर
  2111. 1:23:11सकते हैं और इसी क्लास को हम डेटाबेस में
  2112. 1:23:14परचेस भी कर रहे हैं तो ये एक हिसाब से
  2113. 1:23:16डेटाबेस का स्ट्रक्चर यानी टेबल का
  2114. 1:23:18स्ट्रक्चर कि किस तरीके से यूजर टेबल में
  2115. 1:23:20भी डेटाबेस में रिप्रेजेंट होगी वो भी
  2116. 1:23:22डिफाइन कर रहा है और इसको हम एक्सटर्नल
  2117. 1:23:25वर्ल्ड से भी एक्सपोज़ कर रहे हैं। तो एक
  2118. 1:23:27हिसाब से अगर हम कंट्रोलर लेयर में अगर
  2119. 1:23:29इसको एज अ पैरामीटर लेते हैं और इसको एज ए
  2120. 1:23:33रिस्पांस भी देते हैं तो यह एक हिसाब से
  2121. 1:23:36आप समझ सकते हो ये एक हिसाब से एक्सपोज्ड
  2122. 1:23:40है एक्सटर्नल वर्ल्ड को। ठीक है? तो
  2123. 1:23:41एक्सटर्नल वर्ल्ड को पता है अच्छा ये ये
  2124. 1:23:43सारी पैराटर्स इनपुट देने हैं। अब होता
  2125. 1:23:46क्या है? देखिए फ्यूचर में मान लीजिए
  2126. 1:23:47डेटाबेस का स्ट्रक्चर चेंज हो गया। मैंने
  2127. 1:23:49कुछ ऐसी फील्ड्स को ऐड किया है जिसका मुझे
  2128. 1:23:52ट्रैक रखना है डेटाबेस में इंटरनली। कहां
  2129. 1:23:54ट्रैक रखना है डेटाबेस में? इंटरनली। ठीक
  2130. 1:23:56है? तो मान लीजिए मैंने कुछ फील्ड्स को ऐड
  2131. 1:23:58किया। अब होगा क्या? क्योंकि ये यूजर का
  2132. 1:24:01जो ऑब्जेक्ट है वो यहां पर कंट्रोलर में
  2133. 1:24:03इस्तेमाल हो रहा है और उसी का अ उसी का जो
  2134. 1:24:07उसी को एक्सेप्ट किया जा रहा है रिक्वेस्ट
  2135. 1:24:09और रिस्पांस बॉडी में। ठीक है? तो होगा
  2136. 1:24:11क्या? जो एक्सटर्नल वर्ल्ड है इनको भी ये
  2137. 1:24:13चेंजेस करनी होगी और उनको भी वो पैरामीटर
  2138. 1:24:15पास करना होगा। तो देखिए यहां पर हम जो अ
  2139. 1:24:18पास कर रहे हैं वो बिल्कुल यूजर का जो
  2140. 1:24:20ऑब्जेक्ट है उसे पास कर रहे हैं। ठीक है?
  2141. 1:24:22तो ये एक हिसाब से सही नहीं है। सही क्यों
  2142. 1:24:25नहीं है? क्योंकि अगर आप कोई ऐसी फील्ड ऐड
  2143. 1:24:27करते हो जिसका आपको इंटरनली ट्रैक रखना है
  2144. 1:24:29डेटाबेस में तो आप कहां पर मॉडिफाई करोगे?
  2145. 1:24:31आप मॉडिफाई करोगे यूजर मॉडल में। लेकिन
  2146. 1:24:33यूजर मॉडल तो कंट्रोलर पे इस्तेमाल हो रखा
  2147. 1:24:35है। ठीक है? आप उसको रिक्वेस्ट और
  2148. 1:24:38रिस्पांस में इस्तेमाल कर रहे हो। तो
  2149. 1:24:40रिक्वेस्ट और रिस्पांस में इस्तेमाल कर
  2150. 1:24:41रहे हो तो जो अ इस एपीआई को यूज़ कर रहा है
  2151. 1:24:46उन सभी को भी ये चेंज एडप्ट करना होगा। तो
  2152. 1:24:49यहां पर प्रॉब्लम ये आती है कि बस डेटाबेस
  2153. 1:24:51में आप कुछ चेंज करना चाह रहे हो। इंटरनल
  2154. 1:24:53होना चाहिए। ये ये आउटसाइड द वर्ल्ड भी
  2155. 1:24:55एक्सपोज हो रहा है। ठीक है? तो जनरली क्या
  2156. 1:24:57किया जाता है? जो प्र जो कंट्रोलर ले लेयर
  2157. 1:25:00है जो जहां पर हमने एपीआई डिफाइन करी है
  2158. 1:25:03वहां पर मॉडल को इस्तेमाल नहीं किया जाता।
  2159. 1:25:05जनरली मॉडल को इस्तेमाल नहीं किया जाता।
  2160. 1:25:08वहां पर एक सेपरेट क्लास बनाई जाती है और
  2161. 1:25:11उस क्लास का काम है ये रिप्रेजेंट करना कि
  2162. 1:25:14किस तरीके से डेटा आउटसाइड द सिस्टम
  2163. 1:25:16ट्रांसफर होना है। ठीक है? तो मैं क्या
  2164. 1:25:18करूंगा? मैं एक हिसाब से यहां पर एक दूसरी
  2165. 1:25:20क्लास बना लूंगा। यूजर को हटा दूंगा और
  2166. 1:25:21दूसरी एक क्लास बना लूंगा और उसे कहूंगा अ
  2167. 1:25:25यूजर रिक्वेस्ट। अच्छा यहां पर इस तरीके
  2168. 1:25:27से नहीं लिखता हूं। यहां पर लिखता हूं।
  2169. 1:25:28ठीक है? यूजर रिक्वेस्ट ऐसे मैं लिखूंगा
  2170. 1:25:31इस क्लास को। ठीक है? तो यूजर रिक्वेस्ट
  2171. 1:25:33की क्लास का काम क्या होगा कि वो कंट्रोलर
  2172. 1:25:36में ये डिफाइन करेगा कि किस तरीके से यूजर
  2173. 1:25:38की रिक्वेस्ट आनी है। और एक और क्लास मैं
  2174. 1:25:41बना सकता हूं यूजर रिस्पांस जो कि ये
  2175. 1:25:43डिक्टेट करेगा कि किस तरीके का रिस्पांस
  2176. 1:25:45जाना है। ठीक है? तो उसको बेटर है मैं
  2177. 1:25:47यहां पर लिख लेता हूं। तो अ तो देखिए यहां
  2178. 1:25:50से रिक्वेस्ट आएगी इस तरीके से। ठीक है?
  2179. 1:25:53और यूजर रिस्पांस क्या करेगा? यूजर
  2180. 1:25:55रिस्पांस एक हिसाब से मैं इसको डुप्लीकेट
  2181. 1:25:58कर लेता हूं। ठीक है? यहां पर यूजर
  2182. 1:26:00रिस्पांस।
  2183. 1:26:04तो ये दो क्लासेस आप बना सकते हो। ठीक है?
  2184. 1:26:06तो यहां से जो भी रिस्पांस जाएगा वो इस
  2185. 1:26:08फॉर्म में जाएगा। कंट्रोलर से जो भी
  2186. 1:26:10रिस्पांस जाएगा वो इस फॉर्म में जाएगा।
  2187. 1:26:12ठीक है? तो उम्मीद करता हूं ये समझ में आ
  2188. 1:26:14रहा है आपको कि ये डीकपलिंग जो है यानी कि
  2189. 1:26:16हमने डेटाबेस लेयर पे जो एंटिटी हम
  2190. 1:26:20इस्तेमाल कर रहे हैं उसको हम कंट्रोलर में
  2191. 1:26:22एज अ रिक्वेस्ट रिस्पांस ऑब्जेक्ट क्यों
  2192. 1:26:24इस्तेमाल नहीं करते ठीक है इस्तेमाल कर
  2193. 1:26:26सकते हो देखिए अभी हमने वैसे ही कोड किया
  2194. 1:26:28हुआ है आप इस्तेमाल कर सकते हो कोई दिक्कत
  2195. 1:26:30इसमें नहीं आई लेकिन आगे चलकर इसमें
  2196. 1:26:32दिक्कत आएगी अगर आप कुछ प्राइवेट फील्ड्स
  2197. 1:26:34ऐड करते हो कुछ ऐसी चीजें ऐड करते हो
  2198. 1:26:36डेटाबेस लेवल पे जिसको आप आउटसाइड द
  2199. 1:26:38सिस्टम एक्सपोज नहीं करना चाहते कि आप
  2200. 1:26:40इसको ट्रैक कर रहे हो ठीक है तो वो दिक्कत
  2201. 1:26:42आ जाएगी और एक चेंज अगर आप डेटाबेस लेवल
  2202. 1:26:44पे करते हो तो सब जगह पे जहां-जहां एपीआई
  2203. 1:26:46यूज़ हो रही है वहां पे सब जगह चेंज होगा।
  2204. 1:26:48ठीक है? तो ये अच्छी बात नहीं है। तो इसके
  2205. 1:26:51लिए एक सेपरेट क्लासेस को बनाया जाता है।
  2206. 1:26:53एक और इन क्लासेस को कहा जाता है डीटीओस।
  2207. 1:26:57ठीक है? तो ये दो जो क्लासेस हैं यूजर
  2208. 1:26:59रिक्वेस्ट और यूजर रिस्पांस इसे कहा जाता
  2209. 1:27:01है डीटीओस। क्योंकि ये क्या कर रहे हैं?
  2210. 1:27:02ये डेटा को ट्रांसफर कर रहे हैं आउटसाइड द
  2211. 1:27:04सिस्टम और डेटा किस तरीके से ट्रांसफर
  2212. 1:27:06होना है उसको डिक्टेट कर रहे हैं। ठीक है?
  2213. 1:27:09क्योंकि देखिए यहां पर क्रिएटेड एट जो
  2214. 1:27:11रिक्वेस्ट और रिस्पांस है उसमें क्रिएटेड
  2215. 1:27:14ऐड, अपडेटेड ऐड ये सब मैं एक्सेप्ट नहीं
  2216. 1:27:16करना चाहता। लेकिन अभी फिलहाल क्योंकि मैं
  2217. 1:27:18मॉडल यूज़ कर रहा हूं यहां पर रिक्वेस्ट और
  2218. 1:27:20रिस्पांस में मैं नाम भी नहीं बोल सकता।
  2219. 1:27:23करेक्ट? क्योंकि ये यूजर जो मॉडल है उसका
  2220. 1:27:26पार्ट है। अगर यहां से हटाना है तो यूजर
  2221. 1:27:28मॉडल से हटाना होगा। इसका मतलब डेटाबेस से
  2222. 1:27:30हट जाएगा। तो सब इंटरलिंक्ड है। तो मैं
  2223. 1:27:32नहीं चाहता। मैं सिर्फ चाहता ये चार
  2224. 1:27:33फील्ड्स ही आए रिक्वेस्ट में और रिस्पांस
  2225. 1:27:35में और यूजर को ये चार फील्ड्स ही दिखे।
  2226. 1:27:37ये दो फील्ड्स मैं इंटरनल रखना चाहता हूं
  2227. 1:27:39ऑडिट पर्पस के लिए। ठीक है? ठीक है? मैं
  2228. 1:27:40अगर आगे चलके कुछ ऑडिट करना चाहता हूं कि
  2229. 1:27:42ये यूजर की इनेशन कब अ चेंज हुई है, कब
  2230. 1:27:45क्रिएट हुआ है ये यूजर? तो वो सारी चीजें
  2231. 1:27:47मैं कर पाऊं इसकी मदद से। ठीक है? इसके
  2232. 1:27:49लिए मैं इन दो फील्ड्स को इंटरनली ट्रैक
  2233. 1:27:51करना चाहता हूं। तो मैं एक्सपोज नहीं करना
  2234. 1:27:53चाहता। तो अगर वैसा करना है तो मुझे डीटीओ
  2235. 1:27:56पैटर्न का इस्तेमाल करना होगा। ये डीटीओ
  2236. 1:27:58पैटर्न एक तरीके का डिज़ाइन पैटर्न है।
  2237. 1:28:00जहां पर आप अलग क्लासेस की मदद से
  2238. 1:28:02रिक्वेस्ट का क्या ऑब्जेक्ट होना चाहिए और
  2239. 1:28:04रिस्पांस का क्या ऑब्जेक्ट होना चाहिए।
  2240. 1:28:06उसको आप डिक्टेट करते हो। और डिक्टेट
  2241. 1:28:08क्यों करते हो? ये भी मैंने आपको बता
  2242. 1:28:10दिया। ठीक है? तो ये यही रीज़न है कि डीटीओ
  2243. 1:28:14नाम का ये चीज़ एक्सिस्ट करता है। तो हम
  2244. 1:28:16हमारे जो डीटीओस है उसको थोड़ा बढ़िया सा
  2245. 1:28:18नाम भी दे सकते हैं। जैसे कि अ रजिस्टर
  2246. 1:28:21रिक्वेस्ट। ठीक है? रजिस्टर रिक्वेस्ट और
  2247. 1:28:24यहां पर जो रिस्पांस है उसको यूजर
  2248. 1:28:25रिस्पांस रख सकते हैं। ठीक है? तो उम्मीद
  2249. 1:28:28करता हूं यह समझ में आ गया आपको कि किस
  2250. 1:28:30तरीके से अ डीटीओस को इस्तेमाल किया जाता
  2251. 1:28:33है। क्यों इस्तेमाल किया जाता है? क्या
  2252. 1:28:34प्रॉब्लम्स हैं। देखिए मैं डीटीओ चाहता तो
  2253. 1:28:36पहले ही इंट्रोड्यूस करवा सकता था। लेकिन
  2254. 1:28:39जानबूझ के मैंने थोड़ा लेटर स्टेज पे
  2255. 1:28:40इंट्रोड्यूस किया है ताकि मॉडल्स भी
  2256. 1:28:42इस्तेमाल कर सकते हो। देखिए आपको यह पता
  2257. 1:28:44होना चाहिए कि मॉडल्स को आप इस्तेमाल कर
  2258. 1:28:46सकते हो यहां पर प्रेजेंटेशन लेयर पे कर
  2259. 1:28:48रहे हैं हम लोग। करेक्ट? हम लोग यहां पे
  2260. 1:28:50कर रहे हैं मॉडल्स का इस्तेमाल। लेकिन
  2261. 1:28:52क्यों नहीं करना चाहिए? ठीक है? आप कर
  2262. 1:28:54सकते हो। काफी सारी चीजें कर सकते हो। बट
  2263. 1:28:56क्यों नहीं करना चाहिए? ये समझना जरूरी
  2264. 1:28:58है। तो उसके लिए आपको पहले तो करके दिखाना
  2265. 1:29:01होगा और फिर क्यों नहीं करना चाहिए वो भी
  2266. 1:29:03जरूरी है समझना। तो उम्मीद करता हूं ये
  2267. 1:29:06समझ में आ गया हो। देखिए अब ये दोनों
  2268. 1:29:08क्लासेस अगर हम बना लेते हैं और इसको
  2269. 1:29:09कंट्रोलर में इस्तेमाल करते हैं रिक्वेस्ट
  2270. 1:29:11और रिस्पांस के लिए तो आपके पास कितना
  2271. 1:29:14कंट्रोल आ जाएगा रिक्वेस्ट और रिस्पांस
  2272. 1:29:16का। अगर आपको कोई फील्ड फ्यूचर में ऐड
  2273. 1:29:17करनी है, कोई कैलकुलेटेड फील्ड ऐड करनी है
  2274. 1:29:19जो डेटाबेस लेवल पे नहीं है तो आप उसे भी
  2275. 1:29:21ऐड कर सकते हो रिक्वेस्ट और रिस्पांस
  2276. 1:29:23ऑब्जेक्ट में। ठीक है? ये डेटाबेस लेयर से
  2277. 1:29:25काफी अलग हो गया। और जो डिपेंडेंसी दी
  2278. 1:29:28डेटाबेस लेयर पे वो काफी सेपरेट हो गई।
  2279. 1:29:31ठीक है? तो उम्मीद करता हूं ये हेल्पफुल
  2280. 1:29:33रहा। अब हम क्या करेंगे? अ हम आएंगे जल्दी
  2281. 1:29:36से हमारे सोर्स कोड की ओर। ठीक है? तो
  2282. 1:29:39सोर्स कोड में आ जाते हैं। और यहां पर
  2283. 1:29:41जैसे कि मैंने आपको बताया डीटीओ का
  2284. 1:29:42इस्तेमाल करना चाहिए हमें। तो मैं क्या
  2285. 1:29:44करूंगा? मैं यहां पर एक नई क्लास बना
  2286. 1:29:46लूंगा न्यू क्लास। और इसको बनाऊंगा मैं
  2287. 1:29:48डीटीओ पैकेज के अंदर। तो डीटीओ डॉट डीटीओ
  2288. 1:29:50डॉट लिखते हो तो ये पैकेज भी बना लेगा और
  2289. 1:29:52क्लास भी बना लेगा। तो रजिस्टर रिक्वेस्ट
  2290. 1:29:54नहीं तो आप सेपरेटली पहले पैकेज बना सकते
  2291. 1:29:56हो और फिर उसके अंदर क्लास भी क्रिएट कर
  2292. 1:29:58सकते हो। तो रजिस्टर रिक्वेस्ट नाम की ये
  2293. 1:30:00क्लास बना ली है मैंने। ठीक है? और यहां
  2294. 1:30:03पर अभी मैं मेंशन करूंगा प्राइवेट
  2295. 1:30:05स्ट्रिंग ईमेल। तो अभी मुझे क्या-क्या
  2296. 1:30:07फील्ड चाहिए रजिस्ट्रेशन रिक्वेस्ट में वो
  2297. 1:30:09मैं मेंशन करूंगा। प्राइवेट स्ट्रिंग ईमेल
  2298. 1:30:12प्राइवेट स्ट्रिंग
  2299. 1:30:15उप्स प्राइवेट स्ट्रिंग पासवर्ड। ठीक है?
  2300. 1:30:18फिर उसके बाद मुझे चाहिए इसको मैं
  2301. 1:30:20डुप्लीकेट कर लेता हूं कंट्रोल डी से।
  2302. 1:30:22उसके बाद मुझे चाहिए फर्स्ट नेम और फिर
  2303. 1:30:25यहां पर चाहिए लास्ट नेम इस तरीके से। ठीक
  2304. 1:30:28है? तो इतना मैंने मेंशन कर दिया यहां पर
  2305. 1:30:30और इतना तो हो चुका है। चलिए तो रजिस्टर
  2306. 1:30:33रिक्वेस्ट आ चुकी है यहां पर और यहां पर आ
  2307. 1:30:35जाऊंगा यहां पर रिक्वेस्ट बॉडी में यूजर
  2308. 1:30:37की बजाय मैं कहूंगा अ रजिस्टर रिक्वेस्ट
  2309. 1:30:40तो मुझे यहां पे यूजर को हटा देना चाहिए।
  2310. 1:30:43ठीक है? और यहां पर कहना चाहिए रजिस्टर
  2311. 1:30:45रिक्वेस्ट। ठीक है? और यहां पर रजिस्टर
  2312. 1:30:47रिक्वेस्ट इस तरीके से और यहां पर रजिस्टर
  2313. 1:30:50रिक्वेस्ट को पास भी कर देना चाहिए। ठीक
  2314. 1:30:51है? ठीक है? तो ये रजिस्टर रिक्वेस्ट पास
  2315. 1:30:53हो चुका है। अब यहां पर अगर आप अंदर आते
  2316. 1:30:55हो तो यहां पर सर्विस लेयर पर एरर आएगी
  2317. 1:30:57क्योंकि आप मॉडल को एक्सेप्ट कर रहे हो
  2318. 1:30:58यहां पर। तो यहां पर भी रजिस्टर रिक्वेस्ट
  2319. 1:31:00को एक्सेप्ट करना है। ठीक है? और
  2320. 1:31:02रिक्वेस्ट को ऐड कर दूंगा यहां पर इस
  2321. 1:31:04तरीके से और यहां पर देखिए यहां पर अब
  2322. 1:31:07प्रॉब्लम होगी। प्रॉब्लम नहीं कहूंगा। एक
  2323. 1:31:09छोटी सी चीज है। यहां पर आप यूजर को सेव
  2324. 1:31:12करना चाह रहे हो। यूजर का ऑब्जेक्ट है
  2325. 1:31:14उसको सेव करना है डेटाबेस लेयर पर। ठीक
  2326. 1:31:16है? लेकिन यूजर का ऑब्जेक्ट ही नहीं है
  2327. 1:31:18अभी आपके पास। करेक्ट? क्योंकि आपने
  2328. 1:31:19प्रेजेंटेशन लेयर जो कंट्रोलर है वहां से
  2329. 1:31:21इसको हटा दिया है। कंट्रोलर से आपने यूजर
  2330. 1:31:23के ऑब्जेक्ट को हटा दिया। तो अब यूजर का
  2331. 1:31:24ऑब्जेक्ट जो है वो आपको क्रिएट करना
  2332. 1:31:26पड़ेगा। ठीक है? तो क्रिएट करने के लिए हम
  2333. 1:31:29क्या करेंगे? यूजर यूजर इज़ इक्वल टू न्यू
  2334. 1:31:32यूजर इस तरीके से। और यहां पर अ देखिए
  2335. 1:31:36सारी फील्ड्स आपको पास करनी होगी। तो जैसे
  2336. 1:31:38कि आईडी ठीक है? स्ट्रिंग ईमेल आईडी ईमेल
  2337. 1:31:42पासवर्ड फर्स्ट नेम लास्ट नेम ये सारी
  2338. 1:31:45चीजें आपको पास करनी होगी एक-एक करके ठीक
  2339. 1:31:49है तो आईडी तो अभी फिलहाल हमारे पास है
  2340. 1:31:52नहीं मैं एक और चीज यहां पर बता देता हूं
  2341. 1:31:55कि यहां पर हम कंस्ट्रक्टर का इस्तेमाल
  2342. 1:31:56करेंगे यूजर ऑब्जेक्ट को क्रिएट करने के
  2343. 1:31:58लिए लेकिन आगे चलकर इसको भी एनहांस
  2344. 1:32:00करेंगे। तो अभी के लिए मैं यहां पर एक डमी
  2345. 1:32:01आईडी लिख देता हूं। x01 ठीक है? ऐसे एक
  2346. 1:32:05डमी आईडी। उसके बाद में ईमेल की जरूरत है
  2347. 1:32:07तो यहां पर रिक्वेस्ट डॉट गेट अच्छा गेटर
  2348. 1:32:11है नहीं देखिए यहां पर गेटर है नहीं तो
  2349. 1:32:13हमको हमें क्या करना है यहां पर अ थोड़ा
  2350. 1:32:15डेटा यहां पर डेटा एनोटेशन का इस्तेमाल
  2351. 1:32:18करेंगे और फिर हम इस्तेमाल करेंगे नो
  2352. 1:32:21आस्क् कंस्ट्रक्टर और फिर ऑल आस्क्
  2353. 1:32:23कंस्ट्रक्टर इस तरीके से और यहां पर अगर
  2354. 1:32:25आप आते हो तो गेट ईमेल इस तरीके से आएगा
  2355. 1:32:28ठीक है अच्छा और अब पासवर्ड की जरूरत है
  2356. 1:32:31तो रिक्वेस्ट डॉट गेट पासवर्ड देखिए किस
  2357. 1:32:34ऑर्डर में पास करना है यहां यहां पर आपको
  2358. 1:32:36सजेशन आ रहा है। अब आप पासवर्ड भरो।
  2359. 1:32:37पासवर्ड थोड़ा बोल्ड है। अब आपको फर्स्ट
  2360. 1:32:39नेम भी ऐड करना है। ठीक है? तो रिक्वेस्ट
  2361. 1:32:42डॉट गेट फर्स्ट नेम। ठीक है? उसके बाद
  2362. 1:32:44लास्ट नेम आएगा। तो रिक्वेस्ट डॉट गेट
  2363. 1:32:47लास्ट नेम यहां पर। फिर उसके बाद लोकल डेट
  2364. 1:32:49एंड टाइम क्रिएटेड एट और लोकल डेट एंड
  2365. 1:32:52टाइम अपडेटेड एट। ये दोनों चीजें आपको पास
  2366. 1:32:56करनी होगी। ठीक है? तो ये दोनों चीजों के
  2367. 1:32:58लिए मैं क्या करूंगा? अ यहां पर आऊंगा और
  2368. 1:33:03यहां पर अ डेट एंड टाइम यह क्रिएटेड एट और
  2369. 1:33:06फिर उसके बाद अपडेटेड एट ये दोनों ऐसे
  2370. 1:33:08मैनुअली पास कर दूंगा मैं ठीक है लोकल डेट
  2371. 1:33:11एंड टाइम तो देखिए मैंने जो सिंटेक्स है
  2372. 1:33:13उसको पूरा कर लिया है यहां पर ठीक है तो
  2373. 1:33:15कुछ क्लासेस का इस्तेमाल किया है जो कि
  2374. 1:33:17शायद नहीं लगेगी आपको ठीक है तो देखिए
  2375. 1:33:19मेरे पास क्या था यहां पर स्ट्रिंग में
  2376. 1:33:22डेट टाइम था करेक्ट स्ट्रिंग में था जो कि
  2377. 1:33:24हम रिक्वेस्ट में पास कर रहे थे मैंने
  2378. 1:33:26क्या किया उसको इंस्टेंट क्लास का
  2379. 1:33:28इस्तेमाल किया है ठीक है इंस्टेंट एक
  2380. 1:33:30क्लास है जिसमें आपको काफी सारे मेथड
  2381. 1:33:32मिलते हैं। तो इंस्टेंट डॉट पार्स और फिर
  2382. 1:33:34मैंने स्ट्रिंग में टेक्स्ट लिखा है इसको
  2383. 1:33:36और फिर मैंने ऐड ज़ोन ज़ोन ऑफसेट यूटीसी और
  2384. 1:33:38फिर उसको लोकल डेट टाइम में कन्वर्ट किया
  2385. 1:33:40है। तो इतनी तीन मेथड्स को चेंज करके मुझे
  2386. 1:33:44ये मिला है। ठीक है? और फिर अपडेटेड टाइम
  2387. 1:33:46के लिए भी मैंने ये किया है। और फिर लिस्ट
  2388. 1:33:48ऑफ के लिए एंप्टी लिस्ट ये एक्टिविटीज़ और
  2389. 1:33:50रिकमेंडेशन की एम्प्टी लिस्ट है जिसे
  2390. 1:33:52मैंने क्रिएट कर ली है। एक्टिविटीज़ और
  2391. 1:33:54रिकमेंडेशन। अभी इसको एम्प्टी रखा है
  2392. 1:33:55मैंने। ठीक है? और ये जो अप्रोच है इसको
  2393. 1:33:58हम अपडेट करेंगे आगे चलकर। इससे सिंपलर
  2394. 1:34:00अप्रोच भी है मैं उस पर भी आऊंगा। लेकिन
  2395. 1:34:01फिलहाल वो एक अलग कांसेप्ट है। ठीक है? तो
  2396. 1:34:04फिलहाल इसके थ्रू जाएंगे। और देखिए हमारे
  2397. 1:34:05पास यूजर का एक ऑब्जेक्ट है वो बन चुका
  2398. 1:34:07है। यहां पर कंस्ट्रक्टर का इस्तेमाल किया
  2399. 1:34:09है। ठीक है? और इस अ इस कंस्ट्रक्टर का
  2400. 1:34:13इस्तेमाल करने का ड्रॉबैक भी है जो कि मैं
  2401. 1:34:14आपको बता देता हूं। यहां पर आपको आईडी
  2402. 1:34:16मैनुअली हार्डकोड करनी है। और सारे जो
  2403. 1:34:19पैरामीटर्स हैं वो आपको ऑर्डर में लिखने
  2404. 1:34:21हैं। जैसे कि अगर कंस्ट्रक्टर आपका ईमेल
  2405. 1:34:23पहले एक्सेप्ट कर रहा है तो आपको ईमेल
  2406. 1:34:24पहले लिखना है और पासवर्ड बाद में। अगर आप
  2407. 1:34:26पासवर्ड पहले लिखोगे और ईमेल बाद में तो
  2408. 1:34:28गड़बड़ हो जाएगी। ठीक है? ईमेल की जगह
  2409. 1:34:30पासवर्ड सेव होगा और पासवर्ड की जगह ईमेल
  2410. 1:34:32सेव होगा। तो ये सारी चीजें हैं। इस मेथड
  2411. 1:34:34का ड्रॉबैक है। ठीक है? लेकिन अभी के लिए
  2412. 1:34:36फिलहाल हम डीटीओस पे फोकस करते हैं। इसको
  2413. 1:34:38रन करता हूं मैं। ठीक है? इसको रन करके
  2414. 1:34:40देखते हैं कि किस तरीके से आपको जो
  2415. 1:34:43एप्लीकेशन है वो दिखाई देती है। तो देखिए
  2416. 1:34:47ये एप्लीकेशन तो रन हो गई है। अच्छा सॉरी
  2417. 1:34:49मैंने कहीं क्लिक कर दिया। लेकिन यहां पर
  2418. 1:34:51देखिए अभी रजिस्टर रिक्वेस्ट में आप
  2419. 1:34:52देखोगे तो ईमेल फर्स्ट पासवर्ड फर्स्ट नेम
  2420. 1:34:55लास्ट नेम है। ठीक है? आप यहां पर आ जाइए।
  2421. 1:34:58यहां पर अब आपको ये दो चीजें पास करने की
  2422. 1:35:00जरूरत ही नहीं है। ठीक है? मैंने इसको हटा
  2423. 1:35:03दिया। इसको करूंगा इस तरीके से रन।
  2424. 1:35:07अच्छा एरर आ गई। क्या एरर आ गई? एरर देख
  2425. 1:35:10लेते हैं। तो एरर यहां पर आई है। ठीक है?
  2426. 1:35:14देखिए एरर आती है ना आपको जब भी यहां पर
  2427. 1:35:16यहां पर एरर आती है। यहां पर एरर का आपको
  2428. 1:35:19डिटेल्ड इनेशन नहीं मिलेगा। तो आपको यहां
  2429. 1:35:21पर आना है और यहां पर देखिए यहां पर आपको
  2430. 1:35:24ये दिखाई देगा। ठीक है? और ये आपको बोलेगा
  2431. 1:35:27कि रो वाज़ ऑलरेडी अपडेटेड और डिलीटेड बाय
  2432. 1:35:31अनदर ट्रांजैक्शन। अच्छा तो आईडी के बिना
  2433. 1:35:35आईडी के बिना वाला कंस्ट्रक्टर
  2434. 1:35:37कंस्ट्रक्टर चाहिए यहां पर। तो यहां पर यह
  2435. 1:35:39कह रहा है कि आईडी को पास नहीं करना है
  2436. 1:35:41आपको। तो यहां पर मैं क्या करता हूं? यहां
  2437. 1:35:43पर इसके बजाय एक आईडी सेट करने के बजाय
  2438. 1:35:46यहां पर नल लिख देता हूं। ठीक है? तो आईडी
  2439. 1:35:48है ही नहीं। ठीक है? इसको रन करके देखते
  2440. 1:35:50हैं। आईडी नल है अभी फिलहाल। तो आईडी
  2441. 1:35:53जनरेट करना है स्प्रिंग बूट को। ठीक है?
  2442. 1:35:56तो ये रन हो चुका है। ठीक है? और यहां पर
  2443. 1:35:58आ जाते हैं। यहां पर इसको फिर से रन करते
  2444. 1:36:00हैं। तो देखिए अब रन हो गया। और आईडी भी
  2445. 1:36:02ऑटो जनरेट हो गई और सारी की सारी इनेशन जो
  2446. 1:36:04है डेटाबेस में स्टोर भी हो गई। ठीक है?
  2447. 1:36:06यहां पर जो डेट मैंने ली है 2025 के लिए
  2448. 1:36:08है। ठीक है? थोड़ी पहले की डेट है। आपको
  2449. 1:36:10चाहिए तो आप 2026, 2027 जो डेट चाहिए आप
  2450. 1:36:13ले सकते हो। ठीक है? यहां पर हार्ड कोड कर
  2451. 1:36:15सकते हो। मैंने यहां पर 2025 की डेट ली
  2452. 1:36:17है। ठीक है? 2026 ले सकते हो, कुछ भी ले
  2453. 1:36:19सकते हो। ठीक है? लेकिन ये हो चुका है
  2454. 1:36:21यहां पर और जो डेटा है वो सेव हो रहा है।
  2455. 1:36:24अब देखिए मैं इस डीटीओ अप्रोच का एक
  2456. 1:36:27बेनिफिट बताता हूं आपको। अगर मुझे आगे
  2457. 1:36:29चलकर यहां पर कोई कैलकुलेटेड फील्ड ऐड
  2458. 1:36:31करनी है। कोई भी कैलकुलेटेड फील्ड जैसे कि
  2459. 1:36:33यूजर की ऐज ऐड करनी है। और मान लीजिए मैं
  2460. 1:36:36डेटाबेस में यूजर की एज स्टोर नहीं कर रहा
  2461. 1:36:38हूं। मैं डेट ऑफ़ बर्थ स्टोर कर रहा हूं।
  2462. 1:36:40ठीक है? यहां पर मैं स्टोर कर रहा हूं डेट
  2463. 1:36:42ऑफ़ बर्थ। एज नहीं स्टोर कर रहा हूं। लेकिन
  2464. 1:36:45जो रिस्पांस है, ठीक है? जो रिस्पांस है,
  2465. 1:36:48तो रिस्पांस अभी हमने बनाया नहीं है।
  2466. 1:36:49अच्छा, एक दिक्कत हो गई है। हमने यहां पर
  2467. 1:36:51अभी तक रिस्पांस नहीं बनाया। ये यूजर को
  2468. 1:36:52भी हटाना है यहां पर। तो रिस्पांस में मैं
  2469. 1:36:56डेट ऑफ़ बर्थ नहीं दिखाना चाहता। मैं
  2470. 1:36:58डायरेक्ट एज कैलकुलेट करके दिखाना था। तो
  2471. 1:36:59मैं वो कर्स अप कर सकता हूं क्योंकि मेरे
  2472. 1:37:01पास अब ये सेपरेट क्लास है। डेटाबेस पर
  2473. 1:37:04डिपेंडेंट नहीं है। ये सिर्फ कंट्रोलर में
  2474. 1:37:06इस्तेमाल हो रही है और ये सिर्फ डेटा
  2475. 1:37:07ट्रांसफर के लिए इस्तेमाल हो रही है। तो
  2476. 1:37:08मैं जो चाहूं वहां पर मॉडिफाई कर सकता
  2477. 1:37:10हूं। ठीक है? फ्यूचर में अगर आगे चलके कोई
  2478. 1:37:12फील्ड यहां पर आती है डेटाबेस लेवल पर तो
  2479. 1:37:15वो रजिस्टर रिक्वेस्ट को इंपैक्ट नहीं
  2480. 1:37:17करेगी। अनलेस एंड अंटिल मैं आकर उस फील्ड
  2481. 1:37:19को मैनुअली यहां पर ऐड करता हूं। ठीक है?
  2482. 1:37:21तो जनरली एपीआई जब भी चेंज होती है ना ये
  2483. 1:37:23ऐसे ही ऑन द फ्लाई चेंज नहीं होती है। ठीक
  2484. 1:37:25है? उसको प्लान किया जाता है। तो अगर आपकी
  2485. 1:37:27ईपीआई काफी सारे सिस्टम्स में इस्तेमाल हो
  2486. 1:37:29रही है जैसे कि मोबाइल एप्स, वेब एप्स और
  2487. 1:37:31आपने एक्सटर्नली भी शेयर कर रखी है एपीआई
  2488. 1:37:34को तो इसके लिए पहले कम्युनिकेशन सर्कुलेट
  2489. 1:37:36होता है कि ये पैरामीटर्स चेंज हो गए और
  2490. 1:37:38ईपीआई की नई वर्जन बनती है। काफी सारी
  2491. 1:37:41चीजें रहती है और चीजों को एक तरीके से
  2492. 1:37:42माइग्रेट किया जाता है क्योंकि एक नया
  2493. 1:37:44पैरामीटर ऐड हो रहा है। और आपको बैकवर्ड
  2494. 1:37:46कंपैटिबिलिटी भी देखनी होती है। क्योंकि
  2495. 1:37:48अगर आपने कोई नया पैरामीटर ऐड किया है,
  2496. 1:37:50कोई पैरामीटर को निकाला है, मॉडिफाई किया
  2497. 1:37:51है, कुछ रूल्स चेंजेस किए हैं, तो आपको ये
  2498. 1:37:54भी मेक श्योर करना है कि जो जो पुरानी
  2499. 1:37:56एपीआई को यूज़ कर रहे हैं सिस्टम्स वो चलने
  2500. 1:37:59चाहिए बिना किसी इशू के। ठीक है? तो इस
  2501. 1:38:02तरीके से चीजें प्लान की जाती है
  2502. 1:38:03प्रोडक्शन लेवल पर अगर काफी सारे लोग
  2503. 1:38:05एपीआई को इस्तेमाल कर रहे हैं। लेकिन लोकल
  2504. 1:38:08लेवल पे क्या है? आप तो कभी भी कुछ भी
  2505. 1:38:10चेंज कर सकते हो वैसे भी। ठीक है? तो इतना
  2506. 1:38:13मैंने कर दिया यहां पर। अब हमें क्या करना
  2507. 1:38:15है? ये जो रिस्पांस है उसको बनाना है तो
  2508. 1:38:17मैं क्या करूंगा यहां पर आऊंगा और यहां पर
  2509. 1:38:19अ रजिस्टर रिक्वेस्ट की बजाय ठीक है तो ये
  2510. 1:38:23है ऑथ कंट्रोलर और रजिस्टर रिक्वेस्ट की
  2511. 1:38:26बजाय मैं यहां पर बनाऊंगा इसको डुप्लीकेट
  2512. 1:38:29कर लेता हूं रजिस्टर रिक्वेस्ट की बजाय
  2513. 1:38:31यूजर रिस्पांस
  2514. 1:38:34ऐसे बना दूंगा ठीक है और यहां पर देखिए ये
  2515. 1:38:37यूजर रिस्पांस है स्ट्रिंग ईमेल वगैरह ये
  2516. 1:38:40सब लिख दिया मैंने और यहां पर लिख दूंगा
  2517. 1:38:42प्राइवेट
  2518. 1:38:44स्ट्रिंग लिंक आईडी
  2519. 1:38:48ठीक है ईमेल फर्स्ट नेम ये सारी चीजें तो
  2520. 1:38:50मैंने लिख दी है और फिर यहां पर लिख दूंगा
  2521. 1:38:52प्राइवेट लोकल डेट टाइम
  2522. 1:38:56ठीक है इस तरीके से और क्रिएटेड एट ऐसा
  2523. 1:38:59लिख दिया मैंने और इसको डुप्लीकेट कर लेता
  2524. 1:39:01हूं और यहां पर लिख दूंगा अपडेटेड एट
  2525. 1:39:04ठीक है इस तरीके से तो मुझे रिस्पांस का
  2526. 1:39:07स्ट्रक्चर यही रखना है आईडी भी पास करनी
  2527. 1:39:09है सब कुछ पास करना है और यह जो यूजर
  2528. 1:39:10रिस्पांस है इसको अब मैं इस्तेमाल करूंगा
  2529. 1:39:12कंट्रोलर में तो यहां पर यूजर की बजाय
  2530. 1:39:15यूजर रिस्पांस लिख दूंगा। ठीक है? लेकिन
  2531. 1:39:17अब यहां पर दिक्कत क्या है? देखिए, अब अगर
  2532. 1:39:19आप यहां पर यूजर रिस्पांस का इस्तेमाल कर
  2533. 1:39:22रहे हो। ठीक है? यूजर रिस्पांस का
  2534. 1:39:24इस्तेमाल कर रहे हो। लेकिन रिटर्न आप यूजर
  2535. 1:39:25कर रहे हो। ठीक है? रिटर्न आप यूजर कर रहे
  2536. 1:39:28हो। क्यों? क्योंकि रजिस्टर जो है ये यूजर
  2537. 1:39:31को रिटर्न कर रही है। तो यहां पर प्रॉब्लम
  2538. 1:39:32हो गई ना? तो यहां पर अब क्या करना होगा?
  2539. 1:39:34आपके पास ये जो है सेव मेथड ये यूजर को
  2540. 1:39:38रिटर्न करती है। तो आपको अब इस यूजर को
  2541. 1:39:41कन्वर्ट करना होगा यूजर रिस्पांस के
  2542. 1:39:44स्ट्रक्चर में। ठीक है? और फिर आपको
  2543. 1:39:46रिटर्न करना होगा इसको। तो मैं क्या
  2544. 1:39:48करूंगा? इसको यहां पर ले लेता हूं। और
  2545. 1:39:49यहां पर एक दूसरा ऑब्जेक्ट बनाता हूं।
  2546. 1:39:51यूजर सेव्ड यूजर इज़ इक्वल टू यूजर इस
  2547. 1:39:56तरीके से। और फिर यहां पर मैप टू अ
  2548. 1:40:00रिस्पांस ऐसे एक मेथड बना दूंगा। तो यह
  2549. 1:40:02मेथड का काम सिर्फ यह रहेगा कि यह जो यूजर
  2550. 1:40:05के ऑब्जेक्ट है उसको रिस्पांस स्ट्रक्चर
  2551. 1:40:06में सिर्फ मैप करेगा। ठीक है? और यहां पर
  2552. 1:40:09यूजर के बजाय रजिस्टर अ सॉरी रजिस्टर नहीं
  2553. 1:40:13यूजर रिस्पांस इस तरीके से मैं इसको
  2554. 1:40:15क्रिएट कर दूंगा। और यहां पर आ जाऊंगा और
  2555. 1:40:17यह मेथड को क्रिएट कर दूंगा यहां पर। ठीक
  2556. 1:40:19है? तो देखिए ये मेथड क्रिएट हो चुकी है।
  2557. 1:40:21अब मैं क्या करूंगा? यहां पर यूजर
  2558. 1:40:22रिस्पांस का ऑब्जेक्ट बनाऊंगा। यूजर
  2559. 1:40:24रिस्पांस रिस्पांस इज़ इक्वल टू न्यू यूजर
  2560. 1:40:27रिस्पांस इस तरीके से। अच्छा सॉरी यूजर
  2561. 1:40:30नेम यूजर रिस्पांस ऐसे बना दूंगा और फिर
  2562. 1:40:34यहां पर रिस्पांस डॉट सेट आईडी और यहां पर
  2563. 1:40:38यूजर डॉट गेट आईडी ऐसे सेव्ड यूजर डॉट गेट
  2564. 1:40:42आईडी ठीक है यहां पर रिस्पांस डॉट सेट
  2565. 1:40:47ईमेल और फिर यहां पर यूजर डॉट गेट ईमेल
  2566. 1:40:50इसे कर दूंगा ठीक है और फिर यहां पर आएगा
  2567. 1:40:54रिस्पांस डॉट सेट पासवर्ड और फिर यहां पर
  2568. 1:40:58आ जाएगा
  2569. 1:40:59गेट पासवर्ड ठीक है रिस्पांस डॉट गेट
  2570. 1:41:04फर्स्ट नेम ठीक है तो हर फील्ड को आपको
  2571. 1:41:06मैप करना है और सही तरीके से मैप करना है
  2572. 1:41:08ये ध्यान रखिएगा कि यहां पर अगर फर्स्ट
  2573. 1:41:10नेम का सेटर कॉल कर रहे हो तो यहां पर
  2574. 1:41:12फर्स्ट नेम का ही गेटर कॉल होना है फर्स्ट
  2575. 1:41:14नेम का सेटर कॉल कर रहे हो और लास्ट नेम
  2576. 1:41:16का गेटर अगर कॉल कर रहे हो तो फर्स्ट नेम
  2577. 1:41:18की बजाय क्या सेट होगा लास्ट नेम करेक्ट
  2578. 1:41:21तो ये सारी चीजें छोटी-छोटी चीजें हैं जो
  2579. 1:41:23अक्सर लोग गलतियां कर देते हैं ठीक है तो
  2580. 1:41:26टेस्टिंग काफी जरूरी हो जाती है यहां
  2581. 1:41:28ठीक है? अब यहां पर देखिए क्रिएटेड डेट
  2582. 1:41:31क्रिएटेड सेट क्रिएटेड एट और यहां पर गेट
  2583. 1:41:35क्रिएटेड एट ऐसे फिर इसको सेव कर देना है
  2584. 1:41:40और फिर गेट अपडेटेड
  2585. 1:41:43एट ऐसे और फिर यहां पर आएगा सेट अपडेटेड
  2586. 1:41:47एट
  2587. 1:41:49इस तरीके से। ठीक है? और यहां पर रिटर्न
  2588. 1:41:51कर देना है इसको। तो रिटर्न करूंगा मैं
  2589. 1:41:53रिस्पांस।
  2590. 1:41:55ठीक है? ऐसा तो ये मैप टू रिस्पांस तो
  2591. 1:41:57यहां पर मैं क्या कर रहा हूं? यह मेथड
  2592. 1:41:58क्या कर रहा है? यूजर का जो टाइप है, यूजर
  2593. 1:42:02क्लास का जो टाइप उसको एक्सेप्ट करेगा और
  2594. 1:42:04यूजर रिस्पांस में कन्वर्ट करके रिटर्न कर
  2595. 1:42:06देगा बस। क्योंकि यहां पर जो जरूरत है
  2596. 1:42:08हमें वो यूजर रिस्पांस की जरूरत है रिटर्न
  2597. 1:42:10टाइप में। ठीक है? तो इसको रन कर देते हैं
  2598. 1:42:12अब और रन करके देखते हैं ये ठीक से रन
  2599. 1:42:14होता है या नहीं। ठीक है? तो रन तो होना
  2600. 1:42:17ही है क्योंकि हमने लॉजिक में कुछ चेंज
  2601. 1:42:20नहीं किया है। सिर्फ जो कंट्रोलर पे जो
  2602. 1:42:22क्लासेस यूज़ हो रही थी और जो मॉडल है
  2603. 1:42:24हमारा उसमें डीकप्लिंग कर दी है हमने।
  2604. 1:42:26यहां पर आओगे आप। अब फिर से क्रिएट करोगे
  2605. 1:42:28इसको तो देखिए ये रिस्पांस और रिक्वेस्ट
  2606. 1:42:30में कुछ चेंज नहीं हुआ है। ठीक है? चेंज
  2607. 1:42:33विज़िबल नहीं है लेकिन चेंज काफी कुछ हुआ
  2608. 1:42:35है। आपने जो डेटाबेस लेयर है और जो
  2609. 1:42:38प्रेजेंटेशन लेयर है यानी कि जो कंट्रोलर
  2610. 1:42:40है जो आउटसाइड वर्ल्ड को दिखाई दे रहा है
  2611. 1:42:42उन दोनों को डीकपल कर दिया। इसका मतलब
  2612. 1:42:44दोनों अब एक दूसरे पे डिपेंडेंट नहीं है।
  2613. 1:42:45अगर आप डेटाबेस लेवल पे कुछ चेंज करते हो,
  2614. 1:42:47कुछ फील्ड ऐड करते हो यहां पर। ठीक है?
  2615. 1:42:50मान लीजिए मैंने जैसे कि मैंने पहले
  2616. 1:42:51एग्जांपल दिया, मैं यहां पर डेट ऑफ़ बर्थ
  2617. 1:42:53ऐड कर देता हूं। लेकिन यहां पे यूजर
  2618. 1:42:55रिस्पांस में ठीक है? यहां पर रजिस्टर्ड
  2619. 1:42:57यूजर में आएगा डेट ऑफ़ बर्थ। डेट ऑफ़ बर्थ
  2620. 1:42:59एक्सेप्ट कर रहा हूं। लेकिन यूजर रिस्पांस
  2621. 1:43:00में मैं एज रिटर्न कर सकता हूं कैलकुलेट
  2622. 1:43:02करके। कैलकुलेट कहां करूंगा उसको? बिज़नेस
  2623. 1:43:05लॉजिक है वह। तो, वह होगा यहां पर अ जो
  2624. 1:43:09क्या बोलते हैं? यूजर सर्विस में। तो,
  2625. 1:43:11यहां पर जब मैप कर रहा हूं मैं ठीक है?
  2626. 1:43:13यूजर रिस्पांस में तो मैं एज को लेके सॉरी
  2627. 1:43:17डेट ऑफ बर्थ को लेके एज में कन्वर्ट करके
  2628. 1:43:18सेट करूंगा यहां पर। ठीक है? तो इस तरीके
  2629. 1:43:20से आप कंट्रोल कर सकते हो चीजों पे।
  2630. 1:43:22डेटाबेस लेवल पे कुछ चीजें हैं और जो
  2631. 1:43:25लोगों को दिख रही है एपीआई के थ्रू वो अलग
  2632. 1:43:27चीज है। ठीक है? तो ये है कॉनंसेप्ट ऑफ
  2633. 1:43:30डीटीओ। डीडीओ देखिए डीडीओ पैटर्न काफी
  2634. 1:43:33इंपॉर्टेंट है। ठीक है? और अगर आप
  2635. 1:43:35प्रोडक्शन लेवल एप्लीकेशनेशंस पर काम करते
  2636. 1:43:37हैं तो डीडीओ पैटर्न का काफी इस्तेमाल
  2637. 1:43:39होगा। इंटरव्यू फेवरेट भी है यह। अगर आप
  2638. 1:43:42इंटरव्यूज़ के लिए अपीयर करते हो, तो आपको
  2639. 1:43:44इंटरव्यू में काफ़ी अह ग्रिल किया जा सकता
  2640. 1:43:46है कि डीटीओ पैटर्न क्यों इस्तेमाल करते
  2641. 1:43:48हैं। हां, बट आप मॉडल्स को भी तो इस्तेमाल
  2642. 1:43:51कर सकते हो और मॉडल्स को इस्तेमाल करोगे
  2643. 1:43:52तो अलग क्लासेस आपको मेंटेन करने की जरूरत
  2644. 1:43:54नहीं है। यहां पर दो अलग क्लासेस मेंटेन
  2645. 1:43:56करने की जरूरत आ रही है यहां पर। ठीक है?
  2646. 1:43:58तो फ्यूचर प्रूफ बना रहे हैं हम सिस्टम
  2647. 1:44:01को। देखिए, अभी ऐसी कोई क्लास, ऐसी कोई
  2648. 1:44:03फील्ड्स हमने ऐड नहीं की है हमारे रजिस्टर
  2649. 1:44:05रिक्वेस्ट और यूजर रिस्पांस में जो
  2650. 1:44:08डेटाबेस से अलव हो। अभी हमने नहीं की है।
  2651. 1:44:10अभी आपने की है क्या? अभी नहीं की है।
  2652. 1:44:12क्योंकि अभी तो यह जो यूजर रिस्पांस की
  2653. 1:44:14क्लास है, डेटाबेस की तरह ही दिख रही है।
  2654. 1:44:16लेकिन, हमने अभी से इसको इंट्रोड्यूस कर
  2655. 1:44:18दिया है क्योंकि फ्यूचर प्रूफ बनाना चाहते
  2656. 1:44:19हैं हम सिस्टम। ठीक है? आगे चलके अगर आप
  2657. 1:44:23कोई डेटाबेस में चेंज करते हो जो कि होने
  2658. 1:44:26ही वाला है। ठीक है? आप कोई भी एप्लीकेशन
  2659. 1:44:28पर काम करो, कोई भी प्रोडक्शन ग्रिड
  2660. 1:44:30एप्लीकेशन पर काम करो। हर डेवलपमेंट
  2661. 1:44:32साइकिल के साथ कुछ चेंजेस आती है जिसमें
  2662. 1:44:34डेटाबेस स्ट्रक्चर भी चेंज हो सकता है। हर
  2663. 1:44:37इसमें चेंज नहीं होगा लेकिन हो सकता है।
  2664. 1:44:39ठीक है? तो चेंज को आप रोक नहीं सकते हो।
  2665. 1:44:42ठीक है? इंप्रूवमेंट्स है वो। अगर आप चेंज
  2666. 1:44:44कर रहे हो और अगर आपने ये डीकपलिंग नहीं
  2667. 1:44:47कर रखा है। डीडीओ पैटर्न का इस्तेमाल नहीं
  2668. 1:44:48किया है तो आपने डेटाबेस पे चेंज किया तो
  2669. 1:44:50वो सारी एपीआई में भी चेंज हो गया। और
  2670. 1:44:52ईपीएस जहां-जहां यूज हो रही है, मान लीजिए
  2671. 1:44:54आपके मोबाइल एप्स में यूज हो रही है,
  2672. 1:44:56फ्रंट एंड वेब एप्लीकेशन पर यूज हो रही
  2673. 1:44:58है, 1 2 मिलियन यूज़र्स यूज़ कर रहे हैं
  2674. 1:44:59एप्लीकेशन को। सब ब्रेक होने लग जाएगा।
  2675. 1:45:01ब्रेक होने लग जाएगा, तो दिक्कत आने लग
  2676. 1:45:03जाएगी। ठीक है? तो ये बेसिकली फ्यू आप
  2677. 1:45:07फ्यूचर प्रूफ बना रहे हो। ठीक है? अपनी
  2678. 1:45:08ईपीआई को तो ऐसा क्वेश्चंस भी लोग पूछते
  2679. 1:45:11हैं इंटरव्यू्यूज में कि अच्छा बट इनिशियल
  2680. 1:45:14स्टेज पे आपने तो आपका जो अ कंट्रोलर में
  2681. 1:45:18आप जो यूज़ कर रहे हो डेटा जो दिखा रहे हो
  2682. 1:45:19कंट्रोलर में वो डेटाबेस में आपने जो
  2683. 1:45:22स्टोर किया हुआ है उससे तो अलग नहीं है।
  2684. 1:45:24तो क्यों क्यों इस्तेमाल करना है आपको
  2685. 1:45:26डीटीओ पैटर्न? तो इसका आंसर यह है कि आप
  2686. 1:45:29फ्यूचर प्रूफ बना रहे हो। ये प्रोजेक्ट
  2687. 1:45:30ग्रो ही होगा। आगे चलकर आप यह सब चेंजेस
  2688. 1:45:32करने जाओगे तो काफी दिक्कत हो सकती है।
  2689. 1:45:34इसका इसका बेस्ट वे है कि स्टार्टिंग से
  2690. 1:45:37ही डे वन से ही आप बेस्ट प्रैक्टिससेस को
  2691. 1:45:39फॉलो कीजिए। इतना एफर्ट टेकिंग भी है नहीं
  2692. 1:45:41है। ठीक है? तो उम्मीद करता हूं डीटीओ
  2693. 1:45:43पैटर्न आपको समझ में आया कि क्या है डीटीओ
  2694. 1:45:45पैटर्न? क्यों इस्तेमाल करते हैं हम डीटीओ
  2695. 1:45:47पैटर्न और क्या प्रॉब्लम सॉल्व करता है
  2696. 1:45:49डीटीओ पैटर्न? और डीटीओ पैटर्न का जो फुल
  2697. 1:45:51फॉर्म है उसे जरूर याद रखना। डेटा
  2698. 1:45:53ट्रांसफर ऑब्जेक्ट। और हमारे प्रोजेक्ट
  2699. 1:45:55में क्या है डेटा ट्रांसफर ऑब्जेक्ट?
  2700. 1:45:57रजिस्टर रिक्वेस्ट और यूजर रिस्पांस दोनों
  2701. 1:45:59डेटा ट्रांसफर ऑब्जेक्ट है। रजिस्टर
  2702. 1:46:01रिक्वेस्ट का काम है जो इनकमिंग रिक्वेस्ट
  2703. 1:46:03है उसका स्ट्रक्चर डिफाइन करना। तो वो
  2704. 1:46:05इनकमिंग डेटा का जो ट्रांसफर ऑब्जेक्ट है
  2705. 1:46:08उसको डिफाइन करता है और यूजर रिस्पांस का
  2706. 1:46:10काम है आउटगोइंग जो डेटा है यूजर जो
  2707. 1:46:13आउटगोइंग डेटा है उसका जो स्ट्रक्चर है
  2708. 1:46:15उसको डिफाइन करता है। जो यूजर को रिस्पांस
  2709. 1:46:17दिखता है उसको डिफाइन करता है। उम्मीद
  2710. 1:46:19करता हूं यह हेल्पफुल रहा और क्लियर भी।
  2711. 1:46:26तो देखिए दोस्तों, बात करते हैं अब बिल्डर
  2712. 1:46:29पैटर्न के बारे में और समझते हैं यह हमारी
  2713. 1:46:31जो लाइफ है उसको किस तरीके से आसान कर
  2714. 1:46:34देता है। ठीक है? ये काफी बढ़िया अ तरीके
  2715. 1:46:37से मैं डेमोंस्ट्रेट करने वाला हूं। ठीक
  2716. 1:46:38है? तो यहां पर देखिए यूजर सर्विस में आ
  2717. 1:46:40जाते हैं और यहां पर मैं एक आपको प्रॉब्लम
  2718. 1:46:42बताता हूं। ठीक है? तो यूजर सर्विस में
  2719. 1:46:45अगर आप आते हो यहां पर आप देखोगे यहां पर
  2720. 1:46:47हम यूजर का ऑब्जेक्ट बना रहे हैं। इस
  2721. 1:46:48तरीके से काफी अ काफी लंबा या काफी लें्थी
  2722. 1:46:54कंस्ट्रक्टर लिखा है हमने ये कंस्ट्रक्टर
  2723. 1:46:56का इस्तेमाल किया है। ठीक है? और यहां पर
  2724. 1:46:58प्रॉब्लम क्या है? देखिए कंस्ट्रक्टर
  2725. 1:46:59इस्तेमाल करना ऐसी कोई बुरी बात नहीं है।
  2726. 1:47:01ठीक है? कंस्ट्रक्टर इस्तेमाल करते हो।
  2727. 1:47:02लेकिन अगर आपका जो कंस्ट्रक्टर है वो काफी
  2728. 1:47:05सारे पैरामीटर्स को एक्सेप्ट करता है। ठीक
  2729. 1:47:07है? तो कंस्ट्रक्टर का इस्तेमाल करना
  2730. 1:47:09थोड़ा सा प्रॉ प्रॉब्लमेटिक हो जाता है।
  2731. 1:47:11मैं आपको बताता हूं कैसे। यहां पे सबसे
  2732. 1:47:12पहली प्रॉब्लम तो ये है कि आपको हर फील्ड
  2733. 1:47:15को पास करना है। आपके पास उसकी वैल्यू हो
  2734. 1:47:17या ना हो। अगर नहीं है उसकी उसकी वैल्यू
  2735. 1:47:19आपके पास तो आपको नल लिख देना है। ठीक है?
  2736. 1:47:21तो यहां पर देखिए मैं इसको भी नल लिख सकता
  2737. 1:47:23हूं। ये इतना बड़ा कोड लिखने की जरूरत
  2738. 1:47:24नहीं है। इसको नल लिख सकता हूं। ठीक है?
  2739. 1:47:26ये सारी चीजों को भी नल लिख सकता हूं। ठीक
  2740. 1:47:28है? लेकिन नल लिख दिया तो रीडेबिलिटी हट
  2741. 1:47:30जाती है। देखिए यहां पर अगर मैं नल लिख
  2742. 1:47:31दूं इस तरीके से यह रीडेबिलिटी हट गई। ठीक
  2743. 1:47:34है? यहां पर मैं अगर नल लिख दूं तो यह
  2744. 1:47:36रीडेबिलिटी हट गई। यह क्या नल डाला है
  2745. 1:47:38मैंने? कौन सा फील्ड है? यह सब। चलो आईडी
  2746. 1:47:40तो हाईलाइट कर रहा है लेकिन मतलब ये सही
  2747. 1:47:44बात नहीं है। ठीक है? तो यहां पर आ जाता
  2748. 1:47:47है बिल्डर पैटर्न। बिल्डर पैटर्न का
  2749. 1:47:48बेनिफिट ये है कि आप आपका जो कोड है ये जो
  2750. 1:47:52कोड था उसको क्लियर और रीडेबल बना देता है
  2751. 1:47:54सबसे पहले तो और आपको पैरामीटर की जो
  2752. 1:47:58ऑर्डर है उसको रिमेंबर करने की कोई जरूरत
  2753. 1:48:00नहीं है। तो देखिए यहां पर क्या है? एक
  2754. 1:48:01दूसरी दिक्कत मैं आपको बता दूं। यहां पर
  2755. 1:48:02पैरामीटर का ऑर्डर है ना वह अह सही सही
  2756. 1:48:06होना चाहिए। ठीक है? तो यहां पर अगर आप
  2757. 1:48:08ईमेल लिख रहे हो पहले ठीक है और अगर आपका
  2758. 1:48:12कंस्ट्रक्टर एक्सेप्ट करता है ईमेल यहां
  2759. 1:48:13पर तो आपको पहले ईमेल लिखना है पासवर्ड
  2760. 1:48:15नहीं अगर आप पासवर्ड पहले लिखते हो तो
  2761. 1:48:16ईमेल की जगह पासवर्ड चले जाएगा ठीक है ये
  2762. 1:48:19दिक्कत है तो आपको कंस्ट्रक्टर में आप किस
  2763. 1:48:21ऑर्डर से पैरामीटर आप एक्सेप्ट कर रहे हो
  2764. 1:48:23वो सारी चीजें मालूम होनी चाहिए ठीक है वो
  2765. 1:48:25एक दिक्कत है तो यहां पर देखिए बिल्डर
  2766. 1:48:27पैटर्न में हम क्या करेंगे यहां पर हम
  2767. 1:48:29ऑब्जेक्ट तो बनाएंगे ऑब्जेक्ट वही बनेगा
  2768. 1:48:32लेकिन एक अलग सिंटेक्स की मदद से बनेगा
  2769. 1:48:34ठीक है और इसके लिए हमें एक एन एनोटेशन का
  2770. 1:48:36इस्तेमाल करना पड़ेगा जो कि लॉन्ग बॉक्स
  2771. 1:48:38हमें आसानी से प्रोवाइड करता है। तो मैं
  2772. 1:48:41यहां पर आ जाऊंगा और यहां पर एक एनोटेशन
  2773. 1:48:43का इस्तेमाल करूंगा। मैं यहां पर बोलूंगा
  2774. 1:48:44बिल्डर।
  2775. 1:48:45ठीक है? और यहां पर आ जाऊंगा फिर अ यूजर
  2776. 1:48:48सर्विस में और यहां पर अ इसे मैं कमेंट कर
  2777. 1:48:52देता हूं फिलहाल के लिए। ठीक है? ऐसे और
  2778. 1:48:55यहां पर मैं क्या करूंगा? यहां पर लिखूंगा
  2779. 1:48:56यूजर यूजर इज़ इक्वल टू। ठीक है? और यहां
  2780. 1:49:00पर मैं लिखूंगा यूजर क्लास डॉट देखिए
  2781. 1:49:03बिल्डर डॉट बिल्ड। ठीक है? तो, यह जो है
  2782. 1:49:07हमें ऑब्जेक्ट बिल्ड करने में मदद करने
  2783. 1:49:09वाला है। ठीक है? और इसकी मदद से हम काफी
  2784. 1:49:12आसानी से हमारा जो ऑब्जेक्ट है उसे हम बना
  2785. 1:49:15सकते हैं। ठीक है? तो मैं आपको देखिए
  2786. 1:49:16एग्जांपल दे देता हूं। तो यहां पर अ मैं आ
  2787. 1:49:19जाता हूं और यहां पर मैं लिखूंगा डॉट और
  2788. 1:49:22देखिए अ सॉरी डॉट ऐसे लिखूंगा तो मुझे
  2789. 1:49:24सारे मेथड्स का एक्सेस मिल जाता है। तो जो
  2790. 1:49:25भी फील्ड नेम्स हैं वो मेथड के एक उसका
  2791. 1:49:28मेथड्स हमें मिल जाता है। ठीक है? तो अगर
  2792. 1:49:30मुझे मान लीजिए ईमेल सेट करना है। ठीक है?
  2793. 1:49:32तो मुझे मेथड को बुलाना है और फिर यहां पर
  2794. 1:49:34अ रिक्वेस्ट डॉट गेट ईमेल ईमेल को पास कर
  2795. 1:49:37देना है। ठीक है? मुझे फर्स्ट नेम पास
  2796. 1:49:39करना है तो मुझे लिखना है फर्स्ट नेम और
  2797. 1:49:41फिर रिक्वेस्ट डॉट गेट फर्स्ट नेम इस
  2798. 1:49:43तरीके से। ठीक है? फिर मुझे लास्ट नेम
  2799. 1:49:46लिखना है यहां पर और फिर लिखना है
  2800. 1:49:47रिक्वेस्ट डॉट गेट लास्ट नेम। ठीक है? तो
  2801. 1:49:49इस तरीके से हम ऑब्जेक्ट क्रिएट करते जा
  2802. 1:49:51रहे हैं। ठीक है? और यहां पर कोई कंफ्यूजन
  2803. 1:49:53नहीं है कि कौन सा पैरामीटर पहले डालना
  2804. 1:49:55है, कौन सा पैरामीटर सेकंड डालना है। कोई
  2805. 1:49:57कंफ्यूजन नहीं है। क्यों? क्योंकि हम
  2806. 1:49:58बिल्डर पैटर्न का इस्तेमाल कर रहे हैं। हम
  2807. 1:50:00कंस्ट्रक्टर का नहीं कर रहे हैं। आपको अगर
  2808. 1:50:02फर्स्ट नेम पहले डालना है, आप फर्स्ट नेम
  2809. 1:50:03पहले डालिए। आपको अगर लास्ट नेम पहले
  2810. 1:50:05डालना है, आप लास्ट नेम पहले डालें। यह
  2811. 1:50:06पूरा आपका डिसीजन है, आपका चॉइस है। तो
  2812. 1:50:09काफी बढ़िया है जैसा आपको समझ में आ रहा
  2813. 1:50:11है। ठीक है? और यहां पर फर्स्ट नेम लिख
  2814. 1:50:12दिया मैंने। लास्ट नेम लिख दिया। और
  2815. 1:50:14रजिस्टर रिक्वेस्ट में और क्या आ रहा है?
  2816. 1:50:15ईमेल, पासवर्ड, फर्स्ट नेम, लास्ट नेम। बस
  2817. 1:50:17ये चार ही चीज़ आ रही है। तो मैं क्या
  2818. 1:50:18करूंगा? ईमेल, फर्स्ट नेम, लास्ट नेम और
  2819. 1:50:21यहां पर मुझे पासवर्ड ऐड करना है। तो मैं
  2820. 1:50:23पासवर्ड ऐड कर दूंगा। और फिर मैं कहूंगा
  2821. 1:50:25अच्छा मैं कहूंगा रिक्वेस्ट डॉट गेट
  2822. 1:50:28पासवर्ड। ऐसे। ठीक है? और बिल्ड कॉल कर
  2823. 1:50:30दूंगा। बस इतना ही करना है मुझे। और बाकी
  2824. 1:50:32की जो सारी फील्ड्स है वो नल सेट हो
  2825. 1:50:34जाएगी। ठीक है? नल सेट हो जाएगी। तो मुझे
  2826. 1:50:36सारी फील्ड्स में ऐसा नल नल लिखने की
  2827. 1:50:38जरूरत है नहीं। अगर नल पास करना है तो ये
  2828. 1:50:40बेनिफिट है बिल्डर पैटर्न का। ठीक है?
  2829. 1:50:42देखिए कंस्ट्रक्टर से भी आप क्रिएट कर
  2830. 1:50:44सकते हो। लेकिन कंस्ट्रक्टर्स इतना
  2831. 1:50:45कन्वीनिएंट नहीं है। कल को अगर आप यहां पर
  2832. 1:50:47एक और फील्ड ऐड करते हो तो कंस्ट्रक्टर
  2833. 1:50:49आपको एरर देने लग जाएगा। क्योंकि
  2834. 1:50:51कंस्ट्रक्टर में वो पैरामीटर ऐड हो जाएगी।
  2835. 1:50:52क्योंकि कंस्ट्रक्टर आप ऑटो जनरेट कर रहे
  2836. 1:50:54हो। ऑल आस्क् कंस्ट्रक्टर। करेक्ट? तो एक
  2837. 1:50:56नई फील्ड ऐड करी तो कंस्ट्रक्टर एरर देने
  2838. 1:50:58लग जाएगा। अब ये सेम कंस्ट्रक्टर आपने 20
  2839. 1:51:00जगह इस्तेमाल कर रखा है अक्रॉस द
  2840. 1:51:02प्रोजेक्ट। सब जगह रेड मार्क्स आएंगे और
  2841. 1:51:04सब जगह आपको जाके मॉडिफाई करना है। बिल्डर
  2842. 1:51:06पैटर्न में क्या है? आपको आपने यहां पर
  2843. 1:51:09फील्ड ऐड करी। अब यहां पर एरर नहीं आने
  2844. 1:51:10वाली आपको। नहीं आने वाली है। आपको अगर
  2845. 1:51:13पास करना है वो फील्ड की वैल्यू तो यहां
  2846. 1:51:15पर आके मैनुअली पास करना है। आपको एरर
  2847. 1:51:17नहीं आएगी। जो चल रहा है वो चलता रहेगा।
  2848. 1:51:19ठीक है? तो यह बेनिफिट है बिल्डर पैटर्न
  2849. 1:51:22का और उम्मीद करता हूं यह आपको समझ में आ
  2850. 1:51:24रहा है कि किस तरीके से ये आपकी जो चीजें
  2851. 1:51:27हैं यानी कि जो डेवलपमेंट का जो फ्लो है
  2852. 1:51:30उसको किस तरीके से एनहांस कर देता है और
  2853. 1:51:32इसको मैं रन करता हूं। देखिए रन भी सिंपल
  2854. 1:51:34तरीके से होगा जैसे पहले हो रहा था। ठीक
  2855. 1:51:36है? अगर आप चाहते हो क्रिएटेड डेट और ये
  2856. 1:51:39सब भी पास करो तो यहां पर देखिए क्रिएटेड
  2857. 1:51:41एट यह सब भी आप पास कर सकते हो। ऐसी कोई
  2858. 1:51:42दिक्कत वाली बात नहीं है। आप जितने
  2859. 1:51:44फील्ड्स चाहो पास कर सकते हो। एप्लीकेशन
  2860. 1:51:46रन हो चुकी है। मैं फिर से एप्लीकेशन
  2861. 1:51:47क्रिएट करूंगा। देखिए एप्लीकेशन क्रिएट हो
  2862. 1:51:49चुकी है। ये यूजर क्रिएट हो चुका है और
  2863. 1:51:51यहां पर देखिए क्रिएटेड ऐड और अपडेटेड ऐड
  2864. 1:51:53नल सेट हो गए क्योंकि हमने उसको उसकी
  2865. 1:51:55वैल्यू पास नहीं करी है। ठीक है? आईडी भी
  2866. 1:51:58जनरेट हो चुकी है। तो देखिए इस तरीके से
  2867. 1:52:00आप बिल्डर पैटर्न का इस्तेमाल कर सकते हो
  2868. 1:52:02और बिल्डर पैटर्न आपको आपके जो प्रोडक्शन
  2869. 1:52:04ग्रेड प्रोजेक्ट्स है उसमें काफी इस्तेमाल
  2870. 1:52:06होता दिखेगा। क्योंकि जनरली क्या होता है?
  2871. 1:52:08प्रोडक्शन ग्रेड जो प्रोजेक्ट्स होते हैं
  2872. 1:52:10उसमें जो मॉडल्स होते हैं, क्लासेस होती
  2873. 1:52:11है उसमें बहुत सारे फील्ड्स होते हैं। ठीक
  2874. 1:52:14है? 50 फील्ड ऐसे फील्ड्स ज्यादा होते
  2875. 1:52:16हैं। तो अभी उतने फील्ड्स वाला
  2876. 1:52:19कंस्ट्रक्टर आप इस्तेमाल करने लग जाओगे तो
  2877. 1:52:21बैंड बज जाएगी। ठीक है? तो काफी आसान
  2878. 1:52:23तरीके से आपको इस्तेमाल करना है इसको। और
  2879. 1:52:25काफी सिंपल कांसेप्ट है। ये ऐसा कुछ
  2880. 1:52:27डिफिकल्ट कांसेप्ट नहीं है। इसका एक
  2881. 1:52:28सिंटेक्स है जो आपको ध्यान रखना है। ठीक
  2882. 1:52:30है? और बिल्डर बिल्डर पैटर्न का यूज़ केस
  2883. 1:52:32क्या है? अगर आपको कोई यूज़ केस पूछे तो
  2884. 1:52:34बिल्डर पैटर्न हेल्प करता है कॉम्प्लेक्स
  2885. 1:52:37ऑब्जेक्ट्स क्रिएट करने में। ठीक है? और
  2886. 1:52:40वो ऑब्जेक्ट को आप क्रिएट कर सकते हो एक
  2887. 1:52:42रीडेबल तरीके से, फ्लैक्सिबल तरीके से और
  2888. 1:52:44सेफ तरीके से। ठीक है? आपको लंबे लेंथी
  2889. 1:52:48कंस्ट्रक्टर्स इस्तेमाल करने की जरूरत
  2890. 1:52:50नहीं है और आपको कंफ्यूज होने की भी जरूरत
  2891. 1:52:52नहीं है। आप आसानी से बिल्डर पैटर्न की
  2892. 1:52:54मदद से कितनी भी बड़ी क्लास हो आप उसको
  2893. 1:52:57डील कर सकते हो, मैनेज कर सकते हो। तो ये
  2894. 1:52:59है बिल्डर पैटर्न। उम्मीद करता हूं
  2895. 1:53:01हेल्पफुल रहा और आप इसको फॉलो कर पाए।
  2896. 1:53:08तो अब हमारी एप्लीकेशन में हो क्या रहा
  2897. 1:53:10है? देखिए यह जो क्रिएटेड ऐट और अपडेटेड
  2898. 1:53:13ऐट है इसको हम मैनुअली पास कर रहे थे। ठीक
  2899. 1:53:15है? और अब पास नहीं कर रहे तो नल आ रही
  2900. 1:53:17है। तो मैं आपको एक ऐसा तरीका दिखाऊंगा
  2901. 1:53:19जिसकी मदद से आप जो क्रिएटेड ऐट, अपडेटेड
  2902. 1:53:22ऐट ये जो फील्ड्स है इसको ऑटो जनरेट कर
  2903. 1:53:25सकते हो। ऑटो जनरेशन का मतलब क्या है? जब
  2904. 1:53:28कभी भी आप कोई रिकॉर्ड क्रिएट करते हो
  2905. 1:53:30डेटाबेस में तो ये क्रिएटेड ऐड और अपडेटेड
  2906. 1:53:32ऐड ऑटोमेटिकली जनरेट हो जाएंगे। उस टाइम
  2907. 1:53:34स्टैंप को सेव कर लेगा यह फील्ड में जेपीए
  2908. 1:53:37ठीक है इतना हो जाएगा और अगर आप फ्यूचर
  2909. 1:53:39में कोई अपडेट करते हो उस रिकॉर्ड में
  2910. 1:53:41यानी कि आपने यूजर का नाम चेंज कर दिया तो
  2911. 1:53:43क्रिएटेड एट चेंज नहीं होगा क्रिएटेड एट
  2912. 1:53:44फिक्स है एक ही बार जनरेट होगा वो अपडेटेड
  2913. 1:53:47एट अपडेट होगा हर फील्ड अपडेट पे या हर
  2914. 1:53:50रिकॉर्ड अपडेट पे ठीक है उम्मीद करता हूं
  2915. 1:53:52ये समझ में आ रहा है आपको तो ये हम कैसे
  2916. 1:53:54कर सकते हैं हमें मैनुअली मैनेज नहीं करना
  2917. 1:53:56और हाइबनेट का इस्तेमाल कर रहा है जेपीए
  2918. 1:53:58तो करेक्ट इंटरनली तो हबनेट में बढ़िया से
  2919. 1:54:01एनोटेशंस है जिसकी मदद से ये काफी काफी
  2920. 1:54:03आसानी से डील कर सकते हो आप इस चीज से।
  2921. 1:54:06ठीक है? तो मैं आपको बताता हूं। यहां पर आ
  2922. 1:54:08जाइए आप। ठीक है? यहां पर अपने सोर्स कोड
  2923. 1:54:11पर आ जाइए और मॉडल में चले जाइए। अब देखिए
  2924. 1:54:13मॉडल में यहां पर आपको एक एनोटेशन लगाना
  2925. 1:54:16है। ठीक है? एनोटेशन पे यहां पे @ लिखना
  2926. 1:54:19है ये फील्ड के ऊपर और यहां पर लिखना है
  2927. 1:54:20क्रिएटेड या क्रिएशन टाइम स्टैंप। तो
  2928. 1:54:23देखिए ये जो एनोटेशन है वो आपको कहां से आ
  2929. 1:54:26रहा है? वो आ रहा है आपको हबनेट से। ये
  2930. 1:54:28हबनेट प्रोवाइड कर रहा है। ठीक है? और
  2931. 1:54:31यहां पर आप एंटर कर दीजिए। तो ये जो
  2932. 1:54:33टाइम्स ये जो एनोटेशन है ये क्या करेगा?
  2933. 1:54:35अगर आप यहां पर जाते हो डाउनलोड
  2934. 1:54:36सोर्सर्सेस करोगे। ठीक है? तो अच्छा
  2935. 1:54:39सोर्सर्सेस डाउनलोड होने में थोड़ा टाइम
  2936. 1:54:41लग रहा है। लेकिन अगर आप इस एनोटेशन के
  2937. 1:54:43अंदर जाते हो तो देखिए क्रिएशन टाइम
  2938. 1:54:45स्टैंप। ठीक है? तो देखिए स्पेसिफाई दैट द
  2939. 1:54:48एनोटेटेड फील्ड ऑफ़ प्रॉपर्टी इज़ जनरेटेड
  2940. 1:54:52क्रिएशन टाइम स्टैंप। द टाइम स्टैंप इज़
  2941. 1:54:54जनरेटेड जस्ट वंस व्हेन द एंटिटी इंस्टेंस
  2942. 1:54:57इज़ इंसर्टेड इन द डेटाबेस। इसका मतलब यह
  2943. 1:54:59है कि हम कहना चाह रहे हैं कि इस फील्ड का
  2944. 1:55:03इस फील्ड में जो क्रिएशन टाइम स्टैंप है
  2945. 1:55:05उसको ऑटोमेटिकली जनरेट किया जाए और वो कब
  2946. 1:55:08जनरेट होगा? जब एंटिटी को पहली बार
  2947. 1:55:12डेटाबेस में सेव किया जा रहा है। तो अगर
  2948. 1:55:14आप कोई रिकॉर्ड को सेव करते हो पहली बार
  2949. 1:55:17डेटाबेस में तब उसका एक क्रिएटेड टाइम
  2950. 1:55:19स्टैंप जनरेट होगा। ठीक है? और यह इन
  2951. 1:55:22मेमोरी जनरेट होता है और फिर यह डेटाबेस
  2952. 1:55:25में स्टोर किया जाता है। ठीक है? और यहां
  2953. 1:55:27पर आप देख सकते हो यहां पर। ठीक है? तो ये
  2954. 1:55:30सारी चीजें हैं। यह क्रिएशन टाइम स्टैंप
  2955. 1:55:32और अपडेशन के लिए भी एक एनोटेशन आता है।
  2956. 1:55:35तो यहां पर एक अपडेट
  2957. 1:55:37टाइम स्टैंप। ये आप देख पा रहे हो। ये भी
  2958. 1:55:39हाइबनेट से आ रहा है। ठीक है? इसमें भी
  2959. 1:55:40जाकर आप मैं आपको दिखा देता हूं। देखिए
  2960. 1:55:42अपडेट टाइम स्टैंप। यह भी सिमिलर है।
  2961. 1:55:45स्पेसिफाई दैट एनोटेटेड फील्ड ऑफ़ द
  2962. 1:55:47प्रॉपर्टी इज़ अ जनरेटेड अपडेटेड टाइम
  2963. 1:55:49स्टैंप। द टाइम स्टैंप इज़ रीजनरेटेड एव्री
  2964. 1:55:52टाइम एन इंस्टेंस इज़ अपडेटेड इन द
  2965. 1:55:54डेटाबेस। तो यह जो टाइम स्टैंप है यह वाला
  2966. 1:55:56अपडेटेड एट यह हर बार रीजेनरेट होगा जब
  2967. 1:55:59कभी भी आप कोई अपडेट करते हो कोई भी
  2968. 1:56:01रिकॉर्ड में। तो अगर मान लीजिए आपके पास
  2969. 1:56:04एक रिकॉर्ड है। ठीक है? यहां पर मैं आ
  2970. 1:56:06जाता हूं। ठीक है? तो यहां पर मान लीजिए
  2971. 1:56:08मेरे पास ये यूजर की जो टेबल है मैं मान
  2972. 1:56:12लीजिए इस इसका ईमेल चेंज करता हूं। ये जो
  2973. 1:56:14यूजर है पहला यूजर इसका ईमेल चेंज करता
  2974. 1:56:16हूं। ठीक है? अगर मैं ईमेल चेंज करता हूं
  2975. 1:56:18तो क्रिएटेड एट चेंज नहीं होगा। क्रिएटेड
  2976. 1:56:20एट का मतलब है ये एंटिटी कब क्रिएट हुआ?
  2977. 1:56:22ये रिकॉर्ड जो है ये कब क्रिएट हुआ है? यह
  2978. 1:56:24अपडेट नहीं होगा। क्रिएटेड ऐड क्या अपडेट
  2979. 1:56:26होगा? अपडेटेड ऐड अपडेट होगा। ठीक है?
  2980. 1:56:29दोनों के दोनों जब आप पहली बार इंसर्ट
  2981. 1:56:31करते हो तब क्रिएट हो जाएंगे। दोनों के
  2982. 1:56:33दोनों टाइम स्टैंप क्रिएट हो जाएंगे। और
  2983. 1:56:35क्रिए पहली बार जब आप इंसर्ट करते हो तो
  2984. 1:56:37ये दोनों टाइम स्टैंप सेम रहेंगे। लेकिन
  2985. 1:56:39जब आप कोई अपडेट करते हो यानी कि कोई भी
  2986. 1:56:42फर्स्ट नेम, लास्ट नेम, पासवर्ड, ईमेल जो
  2987. 1:56:44भी अपडेट करो आप। ठीक है? तो ये जो
  2988. 1:56:46अपडेटेड है ये अपडेट हो जाएगा। ठीक है?
  2989. 1:56:49उम्मीद करता हूं ये हेल्पफुल रह रहा है और
  2990. 1:56:51इसको अब थोड़ा एक्शन में देखते हैं। इसको
  2991. 1:56:53रन करता हूं मैं। ठीक है? तो रन करने के
  2992. 1:56:56पहले तो देखिए यहां पर नल आ रहा था जब मैं
  2993. 1:56:57यूजर क्रिएट करता था। लेकिन अब ये रन होने
  2994. 1:57:00के बाद नल तो आना नहीं चाहिए क्योंकि हमने
  2995. 1:57:02वो दो टाइम स्टैंप ऐड कर दिए। ये दोनों
  2996. 1:57:04हाइबनेट दे रहा है हमें टाइम स्टैंप अ
  2997. 1:57:06सॉरी एनोटेशन जो है वो हाइबनेट दे रहा है।
  2998. 1:57:08तो यहां पर आ जाता हूं। फिर से यूजर
  2999. 1:57:09क्रिएट करता हूं। और यहां पर देखिए ऑटो
  3000. 1:57:12जनरेट हो चुकी है। ऑटो जनरेट है कि नहीं
  3001. 1:57:15मैजिक? ठीक है? पहले हम लोग खुद से क्रिएट
  3002. 1:57:17कर रहे थे। अब यह ऑटो क्रिएट हो रहा है।
  3003. 1:57:19अब आप इसमें कोई अपडेट करते हो, कुछ भी
  3004. 1:57:21करते हो। देखिए यह जो भी डेट रहेगी आपकी
  3005. 1:57:232026, 27, 28 आप जब भी यह वीडियो देख रहे
  3006. 1:57:25हो, ठीक है? ये एनोटेशन का इस्तेमाल कीजिए
  3007. 1:57:28और ये एनोटेशन चलेगा उसी तरह से। ठीक है?
  3008. 1:57:31तो देखिए ये कैसे और यहां पर डेटाबेस में
  3009. 1:57:32भी अगर आप आते हो इसको रन करोगे आप। रन
  3010. 1:57:36कीजिए तो देखिए आपको यहां पर ये जो एंट्री
  3011. 1:57:38दिखाई दी है वो है एंट्री। ठीक है? तो जी
  3012. 1:57:42हां। तो इस तरीके से काम करता है। ये ये
  3013. 1:57:44वाली एंट्री सॉरी। तो इस तरीके से काम
  3014. 1:57:47करता है यह वाला एनोटेशन। ये वाले एनोटेशन
  3015. 1:57:49की मदद से ये जो टाइम स्टैंप की जो
  3016. 1:57:51मैनेजमेंट है उससे आप बच सकते हो। ठीक है?
  3017. 1:57:54आपको अभी टाइम स्टैंप खुद से जनरेट नहीं
  3018. 1:57:56करना है। आपको डील नहीं करना है। आपने बस
  3019. 1:57:57एक एनोटेशन लगा दिया और काम बन गया। ठीक
  3020. 1:57:59है? और कौन प्रोवाइड कर रहा है हमें ये
  3021. 1:58:01एनोटेशन? कहां से आ रही है एनोटेशन? हबनेट
  3022. 1:58:04से आ रही है। ठीक है? और जनरली मैं आपको
  3023. 1:58:07एक चीज़ बता दूं। आप कभी भी प्रोडक्शन लेवल
  3024. 1:58:09पे काम करते हो ना, तो यह क्रिएटेड एट,
  3025. 1:58:11अपडेटेड एट या रिकॉर्ड कब क्रिएट हुआ है?
  3026. 1:58:13कब अपडेट हुआ है? यह जनरली ट्रैक रखते ही
  3027. 1:58:16है हर एंटिटी में इसका। ठीक है? क्योंकि
  3028. 1:58:19अगर कुछ चेक करना है, पेमेंट की डिटेल चेक
  3029. 1:58:21करनी है तो पेमेंट का अगर एक टेबल है, आप
  3030. 1:58:23पेमेंट की इनेशन स्टोर कर रहे हो तो
  3031. 1:58:24पेमेंट कब हुई है वो आपको इससे पता चल
  3032. 1:58:26जाएगा और पेमेंट होने के बाद कुछ अपडेट
  3033. 1:58:29हुआ है या नहीं वो इससे पता चल जाएगा। ठीक
  3034. 1:58:31है? तो ये काफी स्टैंडर्ड है और ऑडिटिंग
  3035. 1:58:34वगैरह अगर कुछ होता है, आपको देखना है कि
  3036. 1:58:36क्या हुआ है, क्या नहीं, डेटा कैसे अपडेट
  3037. 1:58:38हुआ है, तो ये चीजें काफी हेल्प करती है
  3038. 1:58:41अगर आप ट्रैक कर रहे हो तो। ठीक है?
  3039. 1:58:43उम्मीद करता हूं यह दोनों के दोनों चीजें
  3040. 1:58:45जो है वह काफी हेल्पफुल रही।
  3041. 1:58:54तो दोस्तों अब हम क्या करने वाले हैं?
  3042. 1:58:56यहां पर आप जो एंड पॉइंट देखोगे तो यहां
  3043. 1:58:58पर आपको एक चीज़ रियलाइज़ होगी कि हमने ये
  3044. 1:59:01जो अ रिस्पांस है उसको रिस्पांस एंटिटी
  3045. 1:59:04में रैप नहीं किया है। ठीक है? तो
  3046. 1:59:06रिस्पांस एंटिटी में मेरे हिसाब से रैप
  3047. 1:59:09करना जरूरी है ताकि हमें बेटर कंट्रोल मिल
  3048. 1:59:11पाए स्टेटस कोड्स वगैरह पर। ठीक है? तो
  3049. 1:59:14रिस्पांस एंटिटी का इस्तेमाल करेंगे हम
  3050. 1:59:16यहां पर रिस्पांस एंटिटी। इस तरीके से
  3051. 1:59:19ज्यादा कुछ करना नहीं है। यहां पर बस इसको
  3052. 1:59:21इस तरीके से रिस्पांस एंटिटी में रैप कर
  3053. 1:59:23देना है और यहां पर आपको कहना है रिस्पांस
  3054. 1:59:26एंटिटी
  3055. 1:59:27डॉट ओके और इसके अंदर यहां पर आपको पास कर
  3056. 1:59:32देना है ऐसे। ठीक है? ठीक है? ओके? का
  3057. 1:59:34मतलब है स्टेटस कोड 200 चला जाएगा। ठीक
  3058. 1:59:36है? अगर आपको कुछ और पास करना है जैसे कि
  3059. 1:59:39एरर या वगैरह 404 तो वो सारी चीजें आप
  3060. 1:59:42रिस्पांस एंटिटी को अगर इस्तेमाल कर रहे
  3061. 1:59:44हो तो वो सारी चीजें भी आप कर सकते हो।
  3062. 1:59:47ठीक है? तो रिस्पांस एंटिटी का हेल्पफुल
  3063. 1:59:48हेल्प ये रहता है और अब आप इसको स्टार्ट
  3064. 1:59:51करोगे तो रिस्पांस में तो वैसे कुछ चेंज
  3065. 1:59:53नहीं होगा लेकिन यह बेटर प्रैक्टिस है
  3066. 1:59:56जिसकी मदद से आप चीज़ों को कर सकते हो
  3067. 1:59:58कंट्रोल। ठीक है? तो आप यहां पर भेजोगे
  3068. 2:00:00डेटा तो देखिए ये उसी तरीके से डाटा आपको
  3069. 2:00:02मिले मिलेगा। ठीक है? तो इतना हो चुका है।
  3070. 2:00:06ठीक है? अब हम क्या करेंगे? अब हम यहां पर
  3071. 2:00:08आ जाते हैं। ठीक है? और हम
  3072. 2:00:11अब एक्टिविटी कंट्रोलर पे काम करेंगे। ठीक
  3073. 2:00:14है? एक्टिविटी कंट्रोलर में हम कुछ एपीआई
  3074. 2:00:16बनाएंगे। ठीक है? पहली एपीआई है स्लैश
  3075. 2:00:18एपीआई स्लश एक्टिविटीज़ इस तरीके से। ठीक
  3076. 2:00:22है? ये है और यह पहली एपीआई है। ठीक है?
  3077. 2:00:26तो यहां पर क्या करने वाले हैं? हम पोस्ट
  3078. 2:00:28रिक्वेस्ट को एक्सेप्ट करेंगे। ठीक है? तो
  3079. 2:00:30यह रहने वाला है पोस्ट रिक्वेस्ट और इस
  3080. 2:00:32एक्टिविटी का काम यह है कि यह जो है सॉरी
  3081. 2:00:36इस एपीआई का काम यह है यह ट्रैक करेगा।
  3082. 2:00:38ट्रैक एक्टिविटी। ठीक है? ये एक्टिविटीज़
  3083. 2:00:40को ट्रैक करेगा। इसका मतलब आपको अगर कोई
  3084. 2:00:42एक्टिविटी एप्लीकेशन में सेव करनी है किसी
  3085. 2:00:45यूजर के अगेंस्ट, तो आप इस एपीआई का
  3086. 2:00:47इस्तेमाल कर सकते हो। ठीक है? तो, यह हो
  3087. 2:00:50गई पहली एपीआई। दूसरी एपीआई जो है वो होगी
  3088. 2:00:52गेट रिक्वेस्ट सेम एंड पॉइंट पर। ठीक है?
  3089. 2:00:55यह सेम एंड पॉइंट है। और इसी एंड पॉइंट पर
  3090. 2:00:57अगर आपको यूजर की सारी जो एक्टिविटीज है
  3091. 2:01:00उसको आपको रिट्रीव करना है तो आप इस एपीआई
  3092. 2:01:05का इस्तेमाल कर सकते हो। रिट्रीव
  3093. 2:01:07एक्टिविटीज़।
  3094. 2:01:09ठीक है? तो ये यूजर की यानी कि आप जो भी
  3095. 2:01:11यूजर आईडी पास कर रहे हो इस एंड पॉइंट
  3096. 2:01:13में। ठीक है? यूजर स्पेसिफिक एंड पॉइंट है
  3097. 2:01:15ये। जो भी यूजर आईडी आप पास कर रहे हो
  3098. 2:01:17हेडर में। ठीक है? उस यूजर के लिए तो वो
  3099. 2:01:21यूजर की सारी एक्टिविटीज़ यानी कि उसने
  3100. 2:01:23रनिंग करा है, वॉकिंग करा है, जॉगिंग करा
  3101. 2:01:25है, साइकिलिंग, स्विमिंग जो भी करा है वो
  3102. 2:01:27सारी चीजें आपको इस एंड पॉइंट की मदद से
  3103. 2:01:29रिट्रीव हो जाएगी। और ये वाली एंड पॉइंट
  3104. 2:01:30क्या करेगी? ये वाली एंड पॉइंट किसी एक
  3105. 2:01:32यूजर के अगेंस्ट जो भी एक्टिविटी है उसको
  3106. 2:01:34सेव करने में मदद करेंगी। ठीक है? तो ये
  3107. 2:01:36दो एंड पॉइंट्स पे हम काम करेंगे। तो
  3108. 2:01:38देखिए यहां पर मैं एक रेकमेंडेशन दे दूंगा
  3109. 2:01:40आपको। आप ये दोनों एंड पॉइंट्स को बनाने
  3110. 2:01:43का जो काम है उसको एज अ चैलेंज लीजिए। ठीक
  3111. 2:01:45है? ठीक है? उसको एज अ चैलेंज लीजिए और आप
  3112. 2:01:47कोशिश कीजिए कि इन दोनों एंड पॉइंट्स को
  3113. 2:01:49आप बना पाऊं। ठीक है? बनाने के बाद आप
  3114. 2:01:53मुझको बताइए कि आप सक्सेसफुल हुए या नहीं।
  3115. 2:01:56नहीं होते तो कोई बात नहीं। कोशिश करना
  3116. 2:01:59जरूरी है। देखिए ट्राई करना जरूरी है।
  3117. 2:02:01आपको खुद से कोड लिखना ये अटेम्प्ट करना।
  3118. 2:02:04कोड लिखना ये काफी जरूरी है। क्योंकि अगर
  3119. 2:02:07आप देखते रहोगे ट्यूटोरियल्स देख के कर
  3120. 2:02:09रहे हो, देख के कर रहे हो। ठीक है? लेकिन
  3121. 2:02:10एक पॉइंट पर आपको खुद से भी सोचना है, खुद
  3122. 2:02:13से भी एंड पॉइंट्स बनाने हैं। खुद से
  3123. 2:02:14चीजें करनी है। अगर आप वो नहीं करोगे तो
  3124. 2:02:16बस देखते ही रह जाओगे ट्यूटोरियल्स। ठीक
  3125. 2:02:18है? खुद से कोड कभी लिख ही नहीं पाओगे। तो
  3126. 2:02:21लिखना जरूरी है कोड। देखिए ट्यूटोरियल्स
  3127. 2:02:23तो आप देखते रहोगे। बहुत ट्यूटोरियल्स
  3128. 2:02:24हैं। आप देखते रहो ट्यूटोरियल्स। कोई
  3129. 2:02:26दिक्कत नहीं है। आप नई चीजें सीखते हो।
  3130. 2:02:28लेकिन आपको यहां पर देखिए ये एक
  3131. 2:02:30अपॉर्चुनिटी है। ये एंड पॉइंट्स में आप जो
  3132. 2:02:32भी कांसेप्ट यूज़ करने वाले हो वो
  3133. 2:02:33कांसेप्ट्स आपको पता है। अगर आप यहां तक
  3134. 2:02:35देख रहे हो वीडियोस तो। ठीक है? वो
  3135. 2:02:37कांसेप्ट्स आपको पता है तो आप उन
  3136. 2:02:39कांसेप्ट्स को यूज़ करके कोई नई एपीआई
  3137. 2:02:41बनाना। मैंने आपको बता भी दिया कि आप ये
  3138. 2:02:43एंड पॉइंट्स क्या होने वाले हैं। ठीक है?
  3139. 2:02:46और आप डेटा को स्टोर करने वाले हो इस एंड
  3140. 2:02:48पॉइंट की मदद से और यहां पर डेटा को
  3141. 2:02:49रिट्रीव कर रहे हो। ठीक है? एक यूजर के
  3142. 2:02:52अगेंस्ट मल्टीपल एक्टिविटी स्टोर हो सकती
  3143. 2:02:54है। करेक्ट? एक एक्टिविटी तो नहीं होगी।
  3144. 2:02:57एक यूजर मल्टीपल एक्टिविटीज़ करेगा। तो ये
  3145. 2:02:59बेसिकली लिस्ट रिटर्न करेगा। गेट एंड
  3146. 2:03:00पॉइंट और ये एक टाइम पे एक ही एक्टिविटी
  3147. 2:03:02को एक्सेप्ट करके स्टोर करेगा। बस इतना सा
  3148. 2:03:05काम है। तो सारे कॉन्सप्ट्स को इस्तेमाल
  3149. 2:03:06करके इसको अटेम्प्ट कीजिए। सारे
  3150. 2:03:09कांसेप्ट्स को देखिए। आप कर पा रहे हो
  3151. 2:03:11नहीं कर पा रहे हो। और फिर यहां पर वीडियो
  3152. 2:03:13को आकर प्ले कीजिए और देखिए कि आपने जो
  3153. 2:03:16बनाया है सॉल्यूशन। ठीक है? आप अगर बना भी
  3154. 2:03:18नहीं पाते हो तो भी कोई बात नहीं। देखिए
  3155. 2:03:19अटेम्प्ट करना जरूरी है। ये जो चैलेंजेस
  3156. 2:03:21मैं बीच में देता हूं ना ये चैलेंजेस का
  3157. 2:03:23मकसद ये होता है कि आप एटलीस्ट वाचिंग मोड
  3158. 2:03:26से डूइंग मोड में आइए। ठीक है? डूइंग मोड
  3159. 2:03:29में अगर आप आते हो तो क्या है? आप चीजों
  3160. 2:03:32को इस्तेमाल करना सीखते हो। ठीक है? आप
  3161. 2:03:34खुद को चैलेंज करते हो और एक नेक्स्ट लेवल
  3162. 2:03:36पर जाते हो आप। आप जो भी लेवल पर अभी हो
  3163. 2:03:38उस लेवल से नेक्स्ट लेवल पर जाते हो। तो
  3164. 2:03:40सही गलत यह जरूरी नहीं है। देखिए आप आप
  3165. 2:03:44अगर कर पाए तो काफी बढ़िया है। नहीं कर
  3166. 2:03:46पाए तो बुरा नहीं मानना है। डीमोटिवेट
  3167. 2:03:48नहीं होना है। आपको फिर वीडियो को आकर
  3168. 2:03:50प्ले करना है और स्यूशन देखना है। आप कर
  3169. 2:03:51भी पाए हो अगर तो भी स्यूशन जरूर देखिएगा
  3170. 2:03:54और मेरे स्यूशन और आपके सॉल्यूशन को
  3171. 2:03:55कंपेयर कीजिएगा। ठीक है? आपने एक चीज एक
  3172. 2:03:58इस तरीके से क्यों की और मैंने ये चीज
  3173. 2:04:00दूसरी तरीके से क्यों की? इसको समझिएगा।
  3174. 2:04:03ठीक है? लर्निंग्स हर जगह पर होगी। ठीक
  3175. 2:04:05है? तो, यह जरूर अटेम्प्ट कीजिए, पॉज
  3176. 2:04:07कीजिए कीजिए वीडियो को और यह दो एपीआई
  3177. 2:04:10बनाइए आप। एक सेपरेट कंट्रोलर बनेगा इसका।
  3178. 2:04:12ठीक है? सेपरेट मॉडल तो बना हुआ है।
  3179. 2:04:15सेपरेट कंट्रोलर, सेपरेट रिपॉज़िटरी,
  3180. 2:04:17सेपरेट मॉडल, सेपरेट सर्विस लेयर सब कुछ
  3181. 2:04:19सेपरेट होगा। ठीक है? इसमें डीडीओस का भी
  3182. 2:04:21इस्तेमाल करना और अटेम्प्ट करो। ठीक है?
  3183. 2:04:24और उम्मीद करता हूं आपने पॉज़ किया और
  3184. 2:04:26अटेम्प्ट किया इसको। मैं यहां पर वेट नहीं
  3185. 2:04:28करूंगा। मैं यहां पर अ आगे बढूंगा क्योंकि
  3186. 2:04:31वीडियो को तो आप पॉज कर सकते हो अगर आपको
  3187. 2:04:32अटेम्प्ट करना है तो। ठीक है? तो मैं आगे
  3188. 2:04:34बढ़ता हूं इस पर। ठीक है? तो ये दोनों एंड
  3189. 2:04:35पॉइंट्स को मुझे बनाना है। तो सबसे पहले
  3190. 2:04:37तो मैं आ जाता हूं इंटेलिजें में। ठीक है?
  3191. 2:04:39इंटेलिजेंट में यहां पर आऊंगा और यहां पर
  3192. 2:04:41सब कुछ क्लोज कर दूंगा। ठीक है? और यहां
  3193. 2:04:43पर कंट्रोलर में मैं एक नया कंट्रोलर
  3194. 2:04:46बनाऊंगा। और यहां पर कंट्रोलर का नाम क्या
  3195. 2:04:48होगा? एक्टिविटी कंट्रोलर। ठीक है? तो, यह
  3196. 2:04:50कंट्रोलर बन चुका है। ठीक है? अब कंट्रोलर
  3197. 2:04:52में एक चीज़ तो मैंडेटरी है रेस्ट
  3198. 2:04:54कंट्रोलर। क्योंकि यह रेस्ट कंट्रोलर है।
  3199. 2:04:57रेस्ट एपीआई बना रहे हैं हम। तो रेस्ट
  3200. 2:04:58कंट्रोलर लिखना जरूरी है। रिक्वेस्ट
  3201. 2:05:00मैपिंग भी लिख दूंगा क्योंकि मैं चाहता
  3202. 2:05:01हूं कि यह पूरा जो कंट्रोलर है वो एक एंड
  3203. 2:05:05पॉइंट को मैप रहे। ठीक है? तो यहां पर
  3204. 2:05:06देखिए कॉमन क्या है? एपीआई स्लैश
  3205. 2:05:08एक्टिविटीज़। दोनों में एपीआई स्लैश
  3206. 2:05:10एक्टिविटीज़ रिपीट हो रहा है। ठीक है? तो
  3207. 2:05:12इसको पेस्ट कॉपी कर लूंगा और यहां पर मैं
  3208. 2:05:14पेस्ट भी कर दूंगा। स्लैश एपीआई स्लैश
  3209. 2:05:16एक्टिविटीज़। अच्छा अह न्यू लाइन
  3210. 2:05:18कररेक्टर्स भी आ गए शायद। ठीक है? गलती
  3211. 2:05:20से। लेकिन ये हो गया है हमारा यहां पर।
  3212. 2:05:23ठीक है? कंट्रोलर बन चुकी है। अब मैं क्या
  3213. 2:05:25करूंगा? यहां पर आऊंगा और यहां पर मैपिंग
  3214. 2:05:27भी बना दूंगा। पोस्ट मैपिंग। ठीक है? और
  3215. 2:05:29यहां पर कहूंगा अ पब्लिक
  3216. 2:05:33रिस्पांस एंटिटी। अच्छा रिस्पांस एंटिटी।
  3217. 2:05:36रिस्पांस नहीं रिस्पांस एंटिटी। और यहां
  3218. 2:05:38पर कहूंगा एक्टिविटी रिस्पांस। एक्टिविटी
  3219. 2:05:40रिस्पांस क्या है? ये डीटीओ क्लास है जो
  3220. 2:05:42कि एग्ज़िस्ट नहीं करती। आपको रेडमार्क
  3221. 2:05:44आएगा। कोई बात नहीं। डरना नहीं है
  3222. 2:05:46रेडमार्क। ठीक है? रेड मार्क देखने की अभी
  3223. 2:05:48आदत डाल दो। ठीक है? ट्रैक एक्टिविटी।
  3224. 2:05:52ठीक है? यहां पर कुछ पैरामीटर्स एक्सेप्ट
  3225. 2:05:53हो गए। पैरामीटर्स को अभी डिफाइन नहीं कर
  3226. 2:05:55रहा हूं मैं यहां पर। ठीक है? लेकिन यहां
  3227. 2:05:56पर फिर हमें कुछ रिटर्न भी करना है। तो
  3228. 2:05:58रिटर्न और यहां पर इसे एम्प्टी लिख देता
  3229. 2:06:00हूं अभी फिलहाल। ठीक है? इसको डिफाइन
  3230. 2:06:01करेंगे बढ़िया तरीके से। ये हो गई पोस्ट
  3231. 2:06:03मैपिंग। एक और मैपिंग मैं बना देता हूं
  3232. 2:06:05यहां पर जो कि होगी गेट मैपिंग। ठीक है?
  3233. 2:06:08ये गेट मैपिंग है। ये गेट रिक्वेस्ट को
  3234. 2:06:09एडियर करेगी। और यहां पर एक्टिविटी
  3235. 2:06:12रिस्पांस की बजाय हम रिटर्न करेंगे लिस्ट
  3236. 2:06:15ऑफ एक्टिविटी रिस्पांस। क्यों? क्योंकि हम
  3237. 2:06:19मल्टीपल एक्टिविटीज़ रिटर्न करेंगे। एक
  3238. 2:06:21यूजर के अगेंस्ट मल्टीपल एक्टिविटी स्टर्ड
  3239. 2:06:23होगी। ठीक है? तो लिस्ट ऑफ़ एक्टिविटी
  3240. 2:06:25रिस्पांस होगी। ये तो सिर्फ एक एक्टिविटी
  3241. 2:06:27को रिप्रेजेंट करता है। ठीक है? तो ये हो
  3242. 2:06:30गई बात यहां तक। ठीक है? अब हमारा काम
  3243. 2:06:33क्या है? हमें डीटीओ ऑब्जेक्ट्स बनाने हैं
  3244. 2:06:36रिक्वेस्ट की और रिस्पांस की। ठीक है? तो
  3245. 2:06:38मैं यहां पर आ जाता हूं डीटीओ। ठीक है? और
  3246. 2:06:40यहां पर मैं बनाता हूं यहां पर मुझे बनाना
  3247. 2:06:43है एक्टिविटी रिस्पांस को बनाना है पहले
  3248. 2:06:46तो और फिर एक्टिविटी रिक्वेस्ट। तो
  3249. 2:06:48एक्टिविटी रिस्पांस
  3250. 2:06:51ठीक है? इस तरीके से और एक्टिविटी
  3251. 2:06:53रिक्वेस्ट को भी बनाऊंगा मैं। लेकिन यहां
  3252. 2:06:55पर उससे पहले मैं आ जाता हूं मेरी जो मॉडल
  3253. 2:06:59है जो मैंने डिफाइन कर रखा है वहां पर आ
  3254. 2:07:01जाता हूं। ठीक है? ये एक्टिविटी का मॉडल
  3255. 2:07:02है। तो इसको मैं पूरी तरीके से कॉपी कर
  3256. 2:07:04लेता हूं क्योंकि जो मेरा रिस्पांस
  3257. 2:07:06स्ट्रक्चर है वो सिमिलर रहेगा जिससे
  3258. 2:07:08इंस्पायर्ड रहेगा। ठीक है? अब यहां से
  3259. 2:07:10चीजों को हटाना स्टार्ट करते हैं। ठीक है?
  3260. 2:07:12तो टाइपिंग एफर्ट सेव कर रहे हैं हम
  3261. 2:07:14थोड़ा। आईडी तो रिटर्न करनी है हमें। ठीक
  3262. 2:07:16है? और यूजर का डेटा हमें पूरा रिटर्न
  3263. 2:07:18नहीं करना है। तो यूजर के बजाय मैं क्या
  3264. 2:07:21कर सकता हूं? यूजर आईडी रिटर्न कर सकता
  3265. 2:07:23हूं। ठीक है? यहां पर या पूरा यूजर अगर
  3266. 2:07:25आपको रिटर्न करना है तो वो भी आप कर सकते
  3267. 2:07:27हो। यहां पर इसको ऐसे ही छोड़ते हैं। बाद
  3268. 2:07:28में इसको अपडेट करेंगे। ठीक है? एक्टिविटी
  3269. 2:07:31टाइप हो गया ये। ठीक है? एक्टिविटी टाइप आ
  3270. 2:07:34गई यहां पर। और फिर यहां पर आपने या तो
  3271. 2:07:37फिर इसको चेंज ही कर देता हूं मैं। ये
  3272. 2:07:39थोड़ा सही फीलिंग नहीं दे रहा है मेरे को।
  3273. 2:07:40पूरा यूजर का ऑब्जेक्ट भी रिटर्न कर सकते
  3274. 2:07:42हैं हम लोग। लेकिन यहां पर स्ट्रिंग और
  3275. 2:07:44यूजर आईडी कर देता हूं इसको। ठीक है?
  3276. 2:07:46एडिशनल मैट्रिक्स जो है ठीक है? उसको
  3277. 2:07:49मैंने ऐसे ही रखा है। ड्यूरेशन ऐसे ही है।
  3278. 2:07:52कैलरीज़ बर्न और लोकल डेट एंड टाइम भी ऐसे
  3279. 2:07:55ही है। ठीक है? स्टार्ट टाइम क्रिएटेड एट
  3280. 2:07:57और अपडेटेड एट ये सब ऐसे ही है। ठीक है?
  3281. 2:08:00रेकमेंडेशंस। तो लिस्ट ऑफ़ रेकमेंडेशंस को
  3282. 2:08:03अभी मैं फिलहाल यहां पर ऐड नहीं कर रहा
  3283. 2:08:04हूं। मैं नहीं चाहता कि रेकमेंडेशंस इस
  3284. 2:08:06चीज़ का पार्ट हो। अब देखिए यहां पर थोड़ी
  3285. 2:08:08अनयूज़ इंपोर्ट्स भी है क्योंकि मैंने वहां
  3286. 2:08:09से कॉपी पेस्ट किया था। तो ये सारे अनयूज़
  3287. 2:08:11इंपोर्ट को हटा दूंगा मैं। ठीक है? और
  3288. 2:08:14क्योंकि ये एक डीटीओ क्लास है तो यहां पर
  3289. 2:08:17मुझे थोड़े कंस्ट्रक्टर्स गेटर सेटर्स
  3290. 2:08:19लगेंगे। तो डेटा एनोटेशन नो आस्क्
  3291. 2:08:21कंस्ट्रक्टर इस तरीके से। ठीक है? और फिर
  3292. 2:08:24ऑल आस्क् कंस्ट्रक्टर इस तरीके से मैंने
  3293. 2:08:26ऐड कर दिया है। ठीक है? ऐसे। अब ये हो
  3294. 2:08:29चुकी है इस क्लास की बात। ठीक है? अब हमें
  3295. 2:08:33आना चाहिए अह जो रिक्वेस्ट है। ठीक है? तो
  3296. 2:08:36हमें एक एक्टिविटी रिक्वेस्ट भी बनानी
  3297. 2:08:38होगी। ठीक है? ठीक है? ये तो रिस्पांस
  3298. 2:08:40हमने बना लिया। अब यहां पर इसको इंपोर्ट
  3299. 2:08:41कर लेते हैं। इंपोर्ट कर लेंगे तो ये एरर
  3300. 2:08:43चली जाएगी। ठीक है? क्योंकि अब ये क्लास
  3301. 2:08:44एकज़िस्ट करती है। यहां पर आ जाऊंगा मैं और
  3302. 2:08:47यहां पर मैं बनाऊंगा एक क्लास एक्टिविटी
  3303. 2:08:50रिक्वेस्ट जो कि रिप्रेजेंट करेंगी एक
  3304. 2:08:53इनकमिंग रिक्वेस्ट को। तो जो एक्टिविटी का
  3305. 2:08:55जो ऑब्जेक्ट होता है, एक्टिविटी रिक्वेस्ट
  3306. 2:08:57होगा। ठीक है? अब उसमें भी मैं क्या
  3307. 2:08:59करूंगा? ये जो रिस्पांस में मैंने डाला
  3308. 2:09:01हुआ है, ये सब कुछ कॉपी कर लूंगा इस तरीके
  3309. 2:09:03से। ठीक है? और रिक्वेस्ट में थोड़े कम
  3310. 2:09:05फील्ड्स हो गए। लेकिन फील्ड्स को फिर
  3311. 2:09:06हटाएंगे हम तो देखिए आईडी की ज़रूरत है ही
  3312. 2:09:08नहीं। एक्टिविटी की आईडी तो ऑटो जनरेट
  3313. 2:09:10होनी है। डेटाबेस लेवल पर। स्ट्रिंग यूज़र
  3314. 2:09:12आईडी ज़र है। ठीक है? एक्टिविटी टाइप ज़र
  3315. 2:09:14है। एडिशनल मैट्रिक्स भी ज़र है। ड्यूरेशन
  3316. 2:09:19जरूरी है। अ कैलरीज़ बर्न ज़रूरी है। और
  3317. 2:09:22स्टार्ट टाइम जरूरी है। क्रिएटेड एट और
  3318. 2:09:24अपडेटेड एट जरूरी नहीं है। तो इसको हटा
  3319. 2:09:26देते हैं। ठीक है? तो ये रिक्वेस्ट की
  3320. 2:09:29क्लास बन गई। इस तरीके से हमारा रिक्वेस्ट
  3321. 2:09:30स्ट्रक्चर डिफाइंड हो गया। यहां पर डेटा
  3322. 2:09:32लिख देता हूं। यहां पर लिखता हूं नो आस्क्
  3323. 2:09:34कंस्ट्रक्टर और ऑल आस्क् कंस्ट्रक्टर। तो
  3324. 2:09:36देखिए रिक्वेस्ट का जो स्ट्रक्चर है वो यह
  3325. 2:09:38है। रिक्वेस्ट में हमें यह फील्ड्स तो
  3326. 2:09:40चाहिए। जो अनवांटेड फील्ड्स है जो हम
  3327. 2:09:42हमारे एंड पे जनरेट कर रहे हैं। जैसे कि
  3328. 2:09:44आईडी एक्टिविटी की आईडी स्टार्ट टाइम अ
  3329. 2:09:47स्टार्ट टाइम तो हमें लेना है। सॉरी
  3330. 2:09:48एक्टिविटी का स्टार्ट टाइम ये कब स्टार्ट
  3331. 2:09:50हुआ ये जनरेट नहीं कर सकते हम। और हमें अ
  3332. 2:09:53क्रिएटेड एट, अपडेटेड एट ये सब अह क्या
  3333. 2:09:55है? डेटाबेस लेवल पे जनरेट होती है फील्ड।
  3334. 2:09:57सो इसको मैंने रिक्वेस्ट से हटा दिया। ठीक
  3335. 2:09:58है? यह सारे बेनिफिट्स हैं देखिए डीटीओ के
  3336. 2:10:00और रिस्पांस में मैं दे रहा हूं वह
  3337. 2:10:02क्योंकि मैं मैंने रिक्वेस्ट और रिस्पांस
  3338. 2:10:04को अलग-अलग रखा है। तो रिक्वेस्ट में मुझे
  3339. 2:10:06यह चाहिए और रिस्पांस में मुझे ये सब
  3340. 2:10:07दिखाना है। ठीक है? आईडी भी दे रहा हूं
  3341. 2:10:09यहां पर कि कौन से आईडी से एक्टिविटी
  3342. 2:10:11क्रिएट हुई है। ठीक है? तो ये हो गई बात
  3343. 2:10:13यहां तक। अब यहां पर आएंगे हम। ठीक है? तो
  3344. 2:10:17सबसे पहले तो मैं इसको है ना थोड़ा कमेंट
  3345. 2:10:19कर देता हूं। ठीक है? ये जो गेट मैपिंग है
  3346. 2:10:21इसको कमेंट कर देता हूं। नहीं तो रेड
  3347. 2:10:22मार्क्स आते ही रहेंगे। ठीक है? अब यहां
  3348. 2:10:24पर ट्रैक एक्टिविटी में मैं क्या करूंगा?
  3349. 2:10:26ठीक है? ट्रैक एक्टिविटी यहां पर तो यहां
  3350. 2:10:30पर मुझे एक इनपुट लेना होगा। ठीक है? एक
  3351. 2:10:33पैरामीटर ऐड करूंगा। तो वह होगा एक्टिविटी
  3352. 2:10:36रिक्वेस्ट। ठीक है? ऐसे और यहां पर आएगी
  3353. 2:10:39रिक्वेस्ट ऐसे। और यहां पर मैं लिख दूंगा
  3354. 2:10:42रिक्वेस्ट बॉडी।
  3355. 2:10:44ठीक है? तो रिक्वेस्ट बॉडी आएंगी इस तरीके
  3356. 2:10:46से। ठीक है? और इतना हो गया है यहां पर और
  3357. 2:10:50कुछ तो है नहीं। ठीक है? तो इतनी चीज हो
  3358. 2:10:53चुकी है। यह रिक्वेस्ट बॉडी है। अब यहां
  3359. 2:10:55पर देखिए मुझे ना सर्विस लेयर को कॉल करना
  3360. 2:10:57है। अब इसकी सर्विस लेयर तो एक्सिस्ट नहीं
  3361. 2:10:58करती एक्टिविटी की। तो मैं क्या करूंगा?
  3362. 2:11:01यहां पर आ जाता हूं। ठीक है? और यहां पर
  3363. 2:11:03आके मैं एक सर्विस लेयर बना लेता हूं। तो
  3364. 2:11:05एक्टिविटी सर्विस इस तरीके से बना लिया
  3365. 2:11:09मैंने। ठीक है? और यहां पर सर्विस बना
  3366. 2:11:12लिया मैंने। ठीक है? और यहां पर मुझे
  3367. 2:11:15एक्टिविटी की रिपॉज़िटरी भी लगेगी क्योंकि
  3368. 2:11:17हमें डेटाबेस से बात करनी है। ठीक है? तो
  3369. 2:11:19यहां पर एक्टिविटी रिपॉजिटरी
  3370. 2:11:23इस तरीके से बना दिया मैंने एक्टिविटी
  3371. 2:11:25रिपॉजिटरी को। अब एक्टिविटी रिपॉज़िटरी
  3372. 2:11:28अच्छा क्लास नहीं है। ये क्लास नहीं होनी
  3373. 2:11:30चाहिए। यह होना चाहिए इंटरफ़ेस। इंटरफ़ेस इस
  3374. 2:11:33तरीके से और इसको मार्क करना है एज़ ए
  3375. 2:11:35रिपॉज़िटरी। और इंटरफ़ेस को किससे एक्सटेंड
  3376. 2:11:38करना है हमें? एक्सटेंड्स जीपीए
  3377. 2:11:40रिपॉज़िटरी। और यहां पर मेंशन करना है
  3378. 2:11:43एक्टिविटी जो कि है मॉडल हमारा। और फिर
  3379. 2:11:45यहां पर मेंशन करना है स्ट्रिंग जो कि है
  3380. 2:11:48प्राइमरी की का टाइप। तो प्राइमरी की का
  3381. 2:11:51टाइप है स्ट्रिंग। ठीक है? इतना मैंने
  3382. 2:11:53डिफाइन कर दिया है। अब सर्विस लेयर पे आ
  3383. 2:11:54जाते हैं। सर्विस लेयर में हमें क्या
  3384. 2:11:56लगेगा? हमें लगेगा इंस्टेंस। तो हमें किस
  3385. 2:11:58चीज का इंस्टेंस लगेगा? प्राइवेट फाइनल
  3386. 2:12:00एक्टिविटी रिपॉज़िटरी। इस चीज़ का इंस्टेंस
  3387. 2:12:03लगने वाला है हमें यहां पर। क्यों लगने
  3388. 2:12:05वाला है? क्योंकि एक्टिविटी सर्विस जो है
  3389. 2:12:07वो रिपॉज़िटरी से बात करके रिपॉज़िटरी की
  3390. 2:12:10मदद से डेटाबेस से बात करेगी। करेक्ट?
  3391. 2:12:12एक्टिविटी सेव करने रिट्रीव करने में।
  3392. 2:12:14यहां पर मैं ऐड कर देता हूं ऑल आस्क्
  3393. 2:12:17रिक्वायर्ड आस्क् कंस्ट्रक्टर। ठीक है?
  3394. 2:12:20रिक्वायर्ड आस्क् कंस्ट्रक्टर यह मैंने ऐड
  3395. 2:12:21कर दिया। ठीक है? तो इतना हो गया सेटअप।
  3396. 2:12:23अब यहां पर हमें इंस्टेंस लगेगा सर्विस
  3397. 2:12:26लेयर का। तो यहां पर मैं कहता हूं
  3398. 2:12:28प्राइवेट फाइनल एक्टिविटी सर्विस कहां है?
  3399. 2:12:32एक्टिविटी सर्विस।
  3400. 2:12:37सर्विस। ठीक है? और फिर एक्टिविटी सर्विस
  3401. 2:12:39इस तरीके से और इसको रिक्वायर्ड आस्क्
  3402. 2:12:42कंस्ट्रक्टर भी लिखना पड़ेगा। नहीं तो रेड
  3403. 2:12:43मार्क्स आएंगे क्योंकि इनिशियलाइज़ नहीं हो
  3404. 2:12:45रहा है ये। ठीक है? और ये स्ट्रिंग मैनेज
  3405. 2:12:46कंपोनेंट है तो ये इनिशियलाइज़ भी हो
  3406. 2:12:48जाएगा। अब ठीक है? सर्विस लेयर से सर्विस
  3407. 2:12:50एनोटेशन से हमने इसको एनोटेट भी किया हुआ
  3408. 2:12:52है। अब यहां पर आ जाते हैं और यहां पर मैं
  3409. 2:12:55लिखूंगा एक्टिविटी सर्विस डॉट और यहां पर
  3410. 2:12:58मैं कहूंगा ट्रैक एक्टिविटी इस तरीके से।
  3411. 2:13:02ठीक है? अब ये करूंगा और यहां पर ये होगा
  3412. 2:13:07मेथड जिसमें जाएगी रिक्वेस्ट की ऑब्जेक्ट।
  3413. 2:13:11ठीक है? और फिर मैं यहां पर इसको ग्रुप कर
  3414. 2:13:13दूंगा तो मैं कहूंगा रिस्पांस एंटिटी ठीक
  3415. 2:13:17है तो रिस्पांस एंटिटी
  3416. 2:13:21डॉट ओके
  3417. 2:13:24डॉट ओके ऐसे और
  3418. 2:13:29ऐसे क्लोज करना है ठीक है तो ये मैं कर
  3419. 2:13:33दूंगा तो इसको रिस्पांस एंटिटी में रैप कर
  3420. 2:13:35दिया मैंने इसके रिस्पांस को ठीक है अब
  3421. 2:13:38एक्टिविटी ट्रैक एक्टिविटी में आते हैं और
  3422. 2:13:40यहां पर ट्रैक एक्टिविटी को क्रिएट करते
  3423. 2:13:43हैं। ठीक है? इस तरीके से तो ट्रैक
  3424. 2:13:45एक्टिविटी बन चुका है। अब ट्रैक एक्टिविटी
  3425. 2:13:47का रिस्पांस क्या है? या रिस्पांसिबिलिटी
  3426. 2:13:49क्या है? ट्रैक एक्टिविटी का जॉब यह है कि
  3427. 2:13:52यहां पर हम बिज़नेस लॉजिक डिफाइन करेंगे
  3428. 2:13:54जिसकी मदद से एक्टिविटी को ट्रैक किया
  3429. 2:13:56जाएगा और डीडबीएस लेवल पर जो है उसे स्टोर
  3430. 2:13:59किया जाएगा। ठीक है? तो देखिए सबसे पहले
  3431. 2:14:02तो मुझे क्या करना चाहिए? यहां पर यहां पर
  3432. 2:14:05आ जाता हूं। ठीक है? यहां पर सबसे पहले तो
  3433. 2:14:07यह एक्टिविटी रिक्वेस्ट का ऑब्जेक्ट है।
  3434. 2:14:09किसका ऑब्जेक्ट हमें मिल रहा है?
  3435. 2:14:11एक्टिविटी रिक्वेस्ट का। ठीक है? मैं क्या
  3436. 2:14:13करना चाहता हूं? एक्टिविटी रिपॉज़िटरी डॉट
  3437. 2:14:15सेव। मेरा गोल क्या है? एक्टिविटी
  3438. 2:14:17रिपॉज़िटरी डॉट सेव। और यहां पर क्या पास
  3439. 2:14:19करना चाहिए मुझे? एक्टिविटी का ऑब्जेक्ट।
  3440. 2:14:22तो जो एक्टिविटी का ऑब्जेक्ट है जिसको मैं
  3441. 2:14:24सेव करना चाह रहा हूं। ठीक है? देखिए
  3442. 2:14:26लॉजिक कैसे डिसाइड करना है ना मैं वो आपको
  3443. 2:14:28सिखा रहा हूं। ठीक है? मुझे पता है क्या
  3444. 2:14:30लिखना है? कोड मैं डायरेक्टली लिख सकता
  3445. 2:14:32हूं। लेकिन लॉजिक कैसे डिसाइड करना है?
  3446. 2:14:34आपको करना क्या चाहिए? लिखना क्या है यहां
  3447. 2:14:36पर? ये मैं आपको दिखा रहा हूं। ठीक है? तो
  3448. 2:14:38देखिए, यहां पर ट्रैक एक्टिविटी का मकसद
  3449. 2:14:40क्या है? व्हाट इज़ द यूज़ ऑफ़ ट्रैक
  3450. 2:14:41एक्टिविटी? ट्रैक एक्टिविटी का काम यह है
  3451. 2:14:44कि वो जो भी एक्टिविटी रिक्वेस्ट की जो
  3452. 2:14:46ऑब्जेक्ट आ रही है, उसके बिहाफ पर
  3453. 2:14:48एक्टिविटी ऑब्जेक्ट को सेव कर देगा।
  3454. 2:14:50एक्टिविटी सेव कर देगा डेटाबेस में।
  3455. 2:14:52एक्टिविटी सेव करने के लिए हमें क्या
  3456. 2:14:54चाहिए? सबसे पहले हमें रिपॉज़िटरी चाहिए जो
  3457. 2:14:56कि हमारे पास है। क्योंकि इसकी मदद से ही
  3458. 2:14:58हम डेटाबेस से बात करके सेव करेंगे। और
  3459. 2:15:00हमें सेव करने के लिए सेव मेथड कॉल करना
  3460. 2:15:02है। अब सेव मेथड में क्या चाहिए हमें?
  3461. 2:15:03एक्टिविटी का जो मॉडल है उसका ऑब्जेक्ट
  3462. 2:15:06चाहिए विद ऑल द डिटेल्स फिल्ड। सारी
  3463. 2:15:08डिटेल्स उसमें फिल्ड होनी चाहिए जो हमें
  3464. 2:15:10सेव करनी है। करेक्ट? यह चाहिए हमें। यह
  3465. 2:15:12गोल है। अब ये गोल है। अगर ये सेव करना है
  3466. 2:15:16तो पहले तो एक्टिविटी का इन ऑब्जेक्ट
  3467. 2:15:18बनाना होगा और उसमें सारी फील्ड्स
  3468. 2:15:20इनिशियलाइज़ करनी होगी। करेक्ट? तो वो कर
  3469. 2:15:23लेते हैं। चलिए तो यहां पर आ जाते हैं
  3470. 2:15:25एक्टिविटी और फिर एक्टिविटी। और फिर यहां
  3471. 2:15:28पर अब हमें बिल्डर पैटर्न का इस्तेमाल
  3472. 2:15:30करना है। ठीक है? तो बिल्डर पैटर्न के लिए
  3473. 2:15:33मैं एक्टिविटी के मॉडल में आ जाऊंगा और
  3474. 2:15:36यहां पर एक एनोटेशन ऐड कर दूंगा जो कि है
  3475. 2:15:37बिल्डर। ठीक है? इसकी मदद से हम एक्टिविटी
  3476. 2:15:41का जो ऑब्जेक्ट है उसमें बिल्डर पैटर्न
  3477. 2:15:43इस्तेमाल कर पाएंगे। तो एक्टिविटी डॉट
  3478. 2:15:45बिल्डर डॉट बिल्ड। ठीक है? और बिल्ड करने
  3479. 2:15:48के पहले हम सारी जो डिटेल्स है वो एज अ
  3480. 2:15:51पैरामीटर पास कर सकते हैं। ठीक है? तो
  3481. 2:15:53देखिए सबसे पहले हमें पास करना है टाइप।
  3482. 2:15:56तो टाइप में अभी क्या आएगा? रिक्वेस्ट डॉट
  3483. 2:15:57गेट टाइप। ठीक है? ये सारी डिटेल्स हमें
  3484. 2:16:00रिक्वेस्ट ऑब्जेक्ट में आ रही है। ठीक है?
  3485. 2:16:02डॉट टाइप आ गया। यहां पर आएगा ड्यूरेशन।
  3486. 2:16:04ड्यूरेशन भी हमें मिल रहा है रिक्वेस्ट
  3487. 2:16:06डॉट गेट ड्यूरेशन में। ठीक है? यहां पर
  3488. 2:16:09आना है अ कैलरीज़ बर्न जो कि आएगा
  3489. 2:16:12रिक्वेस्ट डॉट गेट कैलोरीज़ बर्न। ठीक है?
  3490. 2:16:15फिर यहां पर आएगा अ डॉट स्टार्ट टाइम। और
  3491. 2:16:20स्टार्ट टाइम भी हमें मिल रहा है
  3492. 2:16:22रिक्वेस्ट डॉट गेट स्टार्ट टाइम। इस तरीके
  3493. 2:16:24से। ठीक है? और फिर डॉट एडिशनल मैट्रिक्स
  3494. 2:16:27हमें चाहिए। वह भी हमें मिल रहे हैं कहां
  3495. 2:16:29से? रिक्वेस्ट डॉट गेट एडिशनल मैट्रिक्स।
  3496. 2:16:31सारी चीज़ें हमें मेजर चीज़ें एक्टिविटी
  3497. 2:16:33रिक्वेस्ट से मिल रही है। ठीक है? अब एक
  3498. 2:16:37चीज़ मिसिंग है जो कि हमें चाहिए। तो मैं
  3499. 2:16:39आपको बता देता हूं। यहां पर एक चीज़ आप
  3500. 2:16:41देखोगे तो देखिए आईडी तो ऑटो जनरेट होनी
  3501. 2:16:44है। ठीक है? यूजर मिसिंग है। हमने यूजर को
  3502. 2:16:47सेट नहीं किया है। तो ये पेंडिंग है। ठीक
  3503. 2:16:49है? टाइप हमने सेट कर दिया। एडिशनल
  3504. 2:16:51मैट्रिक्स सेट कर दिया। ये सारे फील्ड सेट
  3505. 2:16:53कर दिए हमने। क्रिएटेड एट और अपडेटेड एट
  3506. 2:16:55पेंडिंग है और रेकमेंडेशन पेंडिंग है
  3507. 2:16:58क्योंकि ठीक है रेमेंडेशन को बाद में
  3508. 2:16:59देखते हैं हम। ठीक है? क्रिएटेड एट और
  3509. 2:17:02अपडेटेड एट पेंडिंग। तो क्रिएटेड एंड
  3510. 2:17:04अपडेटेड एट के लिए हमें दो एनोटेशन ऐड
  3511. 2:17:06करने हैं। क्रिएशन टाइम स्टैंप और फिर
  3512. 2:17:08अपडेट टाइम स्टैंप। इस तरीके से। तो ये
  3513. 2:17:11ऑटो जनरेट हो जाएगा। ठीक है? तो तीन चीजें
  3514. 2:17:13अभी ऑटो जनरेट हो रही है। एक तो क्रिएटेड
  3515. 2:17:15एट, अपडेटेड ऐड और फिर आईडी। करेक्ट? यूजर
  3516. 2:17:18पेंडिंग है। बाकी सारी चीजें हमने सेट कर
  3517. 2:17:20ली है। एक्सेप्ट रेकमेंडेशंस। यूजर
  3518. 2:17:22पेंडिंग है। तो यूजर के लिए हम क्या
  3519. 2:17:24करेंगे? यहां पर आ जाते हैं एक्टिविटी
  3520. 2:17:26सर्विस में। हमें यूजर का ऑब्जेक्ट सेट
  3521. 2:17:28करना है। तो यहां पर क्या करना है हमें?
  3522. 2:17:29डॉट सेट अ सॉरी सेट नहीं यहां पर यूजर
  3523. 2:17:33देखिए ये क्या एक्सेप्ट कर रहा है यूजर?
  3524. 2:17:35यूजर का ऑब्जेक्ट एक्सेप्ट कर रहा है।
  3525. 2:17:37हमारे पास यूजर का ऑब्जेक्ट है क्या?
  3526. 2:17:39एक्टिविटी रिक्वेस्ट में क्या है? यूजर का
  3527. 2:17:42ऑब्जेक्ट है? नहीं है। यूजर आईडी है खाली।
  3528. 2:17:44तो यूजर आईडी के बिहाफ पर आप डेटाबेस से
  3529. 2:17:46यूजर का ऑब्जेक्ट रिट्रीव कर सकते हो? यस
  3530. 2:17:48और नो? कर सकते हो? कर सकते हैं। क्यों
  3531. 2:17:51नहीं कर सकते? कर सकते हैं। तो यहां पर हम
  3532. 2:17:53आएंगे। यहां पर हम कहेंगे यूजर यूजर इज
  3533. 2:17:56इक्वल टू अच्छा यूजर को इंपोर्ट भी करना
  3534. 2:17:58पड़ेगा। नहीं तो इंटेलिजेंट बुरा मान
  3535. 2:18:00जाएगा। ठीक है? ये हमने कर दिया। अब यहां
  3536. 2:18:02पर यूजर रिपॉजिटरी होने की जरूरत है।
  3537. 2:18:05करेक्ट? क्योंकि यूजर अ यूजर हम रिट्रीव
  3538. 2:18:09कर रहे हैं। करेक्ट? तो यहां पर हम
  3539. 2:18:10लिखेंगे प्राइवेट फाइनल यूजर रिपॉजिटरी इस
  3540. 2:18:14तरीके से। और यहां पर यूजर रिपॉजिटरी
  3541. 2:18:16मेंशन कर देंगे। और यहां पर यूजर
  3542. 2:18:18रिपॉजिटरी को इस्तेमाल करेंगे और फाइंड
  3543. 2:18:21बाय आईडी का इस्तेमाल करेंगे। तो फाइंड
  3544. 2:18:23बाय आईडी और हमारे पास आईडी ऑलरेडी है तो
  3545. 2:18:26हम कहेंगे रिक्वेस्ट डॉट गेट यूजर आईडी।
  3546. 2:18:29करेक्ट? ये हो गया। अब यहां पर एरर आ रही
  3547. 2:18:33है। एरर क्यों आ रही है? क्योंकि ये फाइंड
  3548. 2:18:35बाय आईडी जो रिटर्न कर रहा है वो रिटर्न
  3549. 2:18:37कर रहा है ऑप्शनल। क्या रिटर्न कर रहा है?
  3550. 2:18:39ऑप्शनल। तो यहां पर अगर यूजर नहीं मिलता
  3551. 2:18:42है इस आईडी से उसको भी हैंडल करने की
  3552. 2:18:44जरूरत है। करेक्ट? तो यहां पर मैं कहूंगा
  3553. 2:18:47अ डॉट और एल्स
  3554. 2:18:50और एल्स थ्रो और यहां पर मेंशन करूंगा एक
  3555. 2:18:54लैम्ब्डा इस तरीके से और यहां पर रन टाइम
  3556. 2:18:56एक्सेप्शन को थ्रो कर दूंगा और मैं कहूंगा
  3557. 2:18:58इनवैलिड
  3558. 2:19:00यूजर इसे और यूजर जो भी है रिक्वेस्ट डॉट
  3559. 2:19:05गेट यूजर आईडी इस तरीके से। ठीक है? और
  3560. 2:19:08यहां पर जो यूजर ऑब्जेक्ट हमें मिला है
  3561. 2:19:10उसको हम सेट कर देंगे यहां पर। ठीक है? अब
  3562. 2:19:12सारी फील्ड्स सेट हो चुकी हैं यहां पर।
  3563. 2:19:14ठीक है? लेकिन अभी भी एक दिक्कत है। ठीक
  3564. 2:19:17है? यहां पर यह यूजर एक्टिविटी क्रिएशन तो
  3565. 2:19:19हो गया। एक्टिविटी की ऑब्जेक्ट हमने
  3566. 2:19:21क्रिएट की और हमारे पास ये डेटा जो है
  3567. 2:19:24एक्टिविटी का उसको हमने सेव कर दिया। ठीक
  3568. 2:19:26है? तो कैसे किया हमने? पहले यूजर को
  3569. 2:19:28रिट्रीव किया। यूजर को रिट्रीव क्यों
  3570. 2:19:30किया? क्योंकि एक्टिविटी बनाने के लिए
  3571. 2:19:31हमें यूजर का ऑब्जेक्ट चाहिए। यूजर आईडी
  3572. 2:19:34से काम नहीं चलेगा। ऑब्जेक्ट पूरा चाहिए।
  3573. 2:19:36तो यूजर को रिट्रीव करो डेटाबेस से। फिर
  3574. 2:19:38एक्टिविटी को कंस्ट्रक्ट करो। एक्टिविटी
  3575. 2:19:40ऑब्जेक्ट जो है उसको और फिर उसको
  3576. 2:19:42रिपॉज़िटरी की मदद से सेव कर दो। ठीक है?
  3577. 2:19:45अब दिक्कत यह है कि हमें यहां पर रिटर्न
  3578. 2:19:47करना है एक्टिविटी रिस्पांस का ऑब्जेक्ट।
  3579. 2:19:50क्या रिटर्न करना है? एक्टिविटी रिस्पांस
  3580. 2:19:53का ऑब्जेक्ट। हमारे पास है क्या एक्टिविटी
  3581. 2:19:54रिस्पांस का ऑब्जेक्ट? नहीं है। तो हमें
  3582. 2:19:56कंस्ट्रक्ट करना होगा। कैसे कंस्ट्रक्ट
  3583. 2:19:58करेंगे हम? हम कंस्ट्रक्ट करेंगे। ये जो
  3584. 2:20:01सेव कर रहे हैं ना हम ऑब्जेक्ट उस सेव्ड
  3585. 2:20:03ऑब्जेक्ट को लेकर हम एक्टिविटी रिस्पांस
  3586. 2:20:06का ऑब्जेक्ट मैनुअली कंस्ट्रक्ट करेंगे।
  3587. 2:20:08ठीक है? तो मैं यहां पर क्या करूंगा?
  3588. 2:20:10एक्टिविटी कहूंगा और यहां पर कहूंगा सेव्ड
  3589. 2:20:12एक्टिविटी। क्योंकि देखिए यह सेव मेथड जो
  3590. 2:20:15है ना यह सेव्ड एक्टिविटी को रिटर्न करता
  3591. 2:20:18है। सेव्ड ऑब्जेक्ट को रिटर्न करता है।
  3592. 2:20:20रिटर्न्स द सेव्ड एंटिटी विल नेवर बी नल।
  3593. 2:20:23अगर सेव सक्सेसफुल हुआ है तो रिटर्न करना
  3594. 2:20:25ही है सेव्ड एक्टिविटी। तो उसको मैं ये
  3595. 2:20:27सेव्ड एक्टिविटी नाम का ऑब्जेक्ट बना लेता
  3596. 2:20:29हूं। उसमें कलेक्ट कर लूंगा। सेव्ड
  3597. 2:20:32एक्टिविटी नाम क्यों दिया मैंने इसको?
  3598. 2:20:34एक्टिविटी नाम से तो ऑलरेडी ऑब्जेक्ट है।
  3599. 2:20:35तो सेव्ड एक्टिविटी देना पड़ेगा। ठीक है?
  3600. 2:20:38तो यह मैंने कर दिया। अब यहां पर मैं
  3601. 2:20:40करूंगा रिटर्न
  3602. 2:20:42मैप टू रिस्पांस नाम का एक मेथड क्रिएट
  3603. 2:20:45करूंगा जिसका काम सिर्फ होगा कि सेव्ड
  3604. 2:20:47एक्टिविटी के इंस्टेंस को लेकर रिस्पांस
  3605. 2:20:50में मैप करना। ठीक है? और उसको मैं यहां
  3606. 2:20:52पर क्रिएट कर दूंगा। तो ये क्रिएट हो गया।
  3607. 2:20:54देखिए यहां पर क्रिएट हो गया। मैप टू
  3608. 2:20:57रिस्पांस। अब यहां पर मैं क्या करूंगा?
  3609. 2:20:59यहां पर एक्टिविटी रिस्पांस का पहले
  3610. 2:21:00ऑब्जेक्ट बनाऊंगा। एक्टिविटी रिस्पांस ऐसे
  3611. 2:21:04और फिर रिस्पांस इज़ इक्वल टू न्यू
  3612. 2:21:06एक्टिविटी रिस्पांस ऐसे
  3613. 2:21:08और फिर यहां पर कहूंगा रिस्पांस डॉट सेट
  3614. 2:21:12आईडी और फिर एक्टिविटी ऊप्स सेव्ड
  3615. 2:21:15एक्टिविटी डॉट गेट आईडी ऐसे। अब सेव्ड
  3616. 2:21:19एक्टिविटी मैं नहीं चाहता। यहां पर
  3617. 2:21:20एक्टिविटी नाम दे सकता हूं क्योंकि यह विद
  3618. 2:21:22इन द मेथड है। ठीक है? तो इतना मैंने कर
  3619. 2:21:24दिया। और फिर यहां पर सेट यूजर आईडी। अब
  3620. 2:21:29यूजर आईडी सेट करना है मुझे तो एक्टिविटी
  3621. 2:21:32डॉट गेट यूजर
  3622. 2:21:35डॉट गेट आईडी ऐसे ठीक है क्योंकि आईडी
  3623. 2:21:38रिट्रीव करना है तो यूजर को पहले गेट किया
  3624. 2:21:40है हमने एक्टिविटी में क्या स्टोर हो रहा
  3625. 2:21:42है यूजर ऑब्जेक्ट है उसमें से यूजर को
  3626. 2:21:44रिट्रीव किया है और फिर उसकी आईडी रिट्रीव
  3627. 2:21:47की है और फिर वो आईडी को हम यहां पर सेट
  3628. 2:21:49कर ठीक है उम्मीद करता हूं ये क्लियर हो
  3629. 2:21:52रहा है और समझ में आ रहा है क्या हो रहा
  3630. 2:21:53है देखिए जिनको ये समझ में नहीं आ रहा है
  3631. 2:21:55काफी सिंपल रीज़न है अगर मैं सिर्फ गेट
  3632. 2:21:56यूजर करता हूं तो ये यूजर का ऑब्जेक्ट
  3633. 2:21:58रिटर्न रन करेगा। लेकिन यहां पर मैं यूजर
  3634. 2:22:00आईडी सेट कर रहा हूं। पूरा यूजर का
  3635. 2:22:02ऑब्जेक्ट नहीं। मुझे सिर्फ आईडी चाहिए। तो
  3636. 2:22:04इसी पर मैं गेट आईडी कर लूंगा। ठीक है? ये
  3637. 2:22:06मेथड को चेंज किया है मैंने। ये जो
  3638. 2:22:08कांसेप्ट है इसको मेथड चेंजिंग बोलते हैं।
  3639. 2:22:09लाइक एक मेथड के आउटपुट को आप दूसरा मेथड
  3640. 2:22:12लगा रहे हो। ठीक है? इसको सेव नहीं कर रहे
  3641. 2:22:15हो कहीं पर। आप डायरेक्टली दूसरा मेथड लगा
  3642. 2:22:17रहे हो। इसको चेनिंग बोलते हैं। मेथड
  3643. 2:22:19चेंजिंग। ठीक है? खैर ये सही है। अब
  3644. 2:22:21रिस्पांस डॉट सेट टाइप यहां पर और फिर
  3645. 2:22:25हमें करना है एक्टिविटी डॉट गेट टाइप।
  3646. 2:22:27ऐसे।
  3647. 2:22:28ठीक है? फिर हम करेंगे रिस्पांस डॉट सेट
  3648. 2:22:33ड्यूरेशन और फिर यहां पर कहेंगे एक्टिविटी
  3649. 2:22:35डॉट गेट ड्यूरेशन। ये हो गया। फिर कहेंगे
  3650. 2:22:38रिस्पांस डॉट सेट कैलोरीज़ बर्न। एंड यहां
  3651. 2:22:41पर कहेंगे एक्टिविटीज़ डॉट गेट कैलोरीज़
  3652. 2:22:43बर्न। ठीक है? इतना हो गया। और फिर हम
  3653. 2:22:46कहेंगे रिस्पांस डॉट सेट स्टार्ट टाइम।
  3654. 2:22:52ठीक है? और फिर यहां पर हम कहेंगे
  3655. 2:22:53एक्टिविटी डॉट गेट स्टार्ट टाइम। ठीक है?
  3656. 2:22:56स्टार्ट टाइम को सेट कर रहे हैं। फिर उसके
  3657. 2:22:58बाद रिस्पांस डॉट सेट एडिशनल मैट्रिक्स और
  3658. 2:23:03फिर एक्टिविटी डॉट गेट एडिशनल मैट्रिक्स।
  3659. 2:23:06देखिए थोड़ा मैनुअल हो रहा है। मुझे पता
  3660. 2:23:08है ये करने में थोड़ा बोरिंग भी लगता है।
  3661. 2:23:10सेटिंग सेटर गेटर ये सब क्या कर रहे हैं
  3662. 2:23:12हम? लेकिन ये करना जरूरी है। ठीक है?
  3663. 2:23:15एक्टिविटी डॉट गेट क्रिएटेड एट। ठीक है?
  3664. 2:23:18और फिर यहां पर आएंगे रिस्पांस डॉट अ सेट
  3665. 2:23:21अपडेटेड एट। अच्छा सॉरी सेट यूजर आईडी
  3666. 2:23:24नहीं सेट अपडेटेड एट और फिर एक्टिविटी डॉट
  3667. 2:23:27गेट अपडेटेड एट इस तरीके से ठीक है तो यह
  3668. 2:23:30पूरा हो गया है सारी फील्ड्स को उम्मीद
  3669. 2:23:32करता हूं हमने सेट तो कर दिया है और फिर
  3670. 2:23:34हमें क्या करना है रिटर्न
  3671. 2:23:36रिस्पांस ऐसे ठीक है तो ये हमने कर दिया
  3672. 2:23:40और यहां से ये जो रिस्पांस है वो रिटर्न
  3673. 2:23:42हो जाएगा यहां से ठीक है तो इतना हो चुका
  3674. 2:23:45है और अब आई थिंक हम लोग एक्टिविटी को सेव
  3675. 2:23:50करने कर पानी चाहिए ठीक है कोई दिक्कत
  3676. 2:23:52वैसे से होनी नहीं चाहिए। तो अब फिलहाल
  3677. 2:23:55मैं क्या करता हूं? इस एप्लीकेशन को रन
  3678. 2:23:56करता हूं। ठीक है? देखते हैं इस एप्लीकेशन
  3679. 2:23:58को रन पर अ कैसा क्या होता है बेसिकली।
  3680. 2:24:03ठीक है? वो देखते हैं। तो ये रन हो रहा
  3681. 2:24:05है। ठीक है? रन हो चुका है सक्सेसफुली।
  3682. 2:24:07कोई दिक्कत नहीं है वैसे। तो ये रन होने
  3683. 2:24:09के बाद हम क्या कर सकते हैं? यहां पर
  3684. 2:24:10पोस्टमैन में आ जाते हैं। ठीक है? यहीं पर
  3685. 2:24:12मैं एक नई एंड पॉइंट बना लेता हूं। ठीक
  3686. 2:24:16है? इस तरीके से। और यह होगी
  3687. 2:24:20ट्रैक एक्टिविटी एंड पॉइंट। ठीक है? इस यह
  3688. 2:24:24पोस्ट रिक्वेस्ट है सबसे पहले तो और यहां
  3689. 2:24:26पर लोकल होस्ट स्लश ठीक है? ईपीआई
  3690. 2:24:30एक्टिविटीज ऐसे तो यही एंड पॉइंट है ना?
  3691. 2:24:32एक बार चेक कर लीजिएगा। ठीक है? बहुत बार
  3692. 2:24:35क्या होता है? हम गलत है। एंड पॉइंट हिट
  3693. 2:24:36कर रहे हैं और फिर पता नहीं चल क्यों नहीं
  3694. 2:24:38रहा। ठीक है? ये हो गया। अब यहां पर आ
  3695. 2:24:41जाते हैं बॉडी में। ठीक है? बॉडी में मैं
  3696. 2:24:42रॉ सेलेक्ट कर लेता हूं jसन यहां पर। ठीक
  3697. 2:24:46है? और यहां पर अब मुझे जो रिक्वेस्ट है
  3698. 2:24:50वो मुझे इस फॉर्मेट में देनी है। ठीक है?
  3699. 2:24:53यहां पर देख लीजिए ये जो रिक्वेस्ट है
  3700. 2:24:54यूजर आईडी टाइप एडिशनल मैट्रिक्स ड्यूरेशन
  3701. 2:24:58कैलरीज़ बर्न और अ स्टार्ट टाइम। ठीक है?
  3702. 2:25:02तो यहां पर मैं आ जाता हूं। यहां पर मैं
  3703. 2:25:05लिखूंगा टाइप सबसे पहले। ठीक है? टाइप
  3704. 2:25:07क्या है एक्टिविटी का? तो ठीक है? टाइप को
  3705. 2:25:10मैं बाद में डिफाइन करता हूं। वैल्यूज़ को
  3706. 2:25:12बाद में डिफाइन करते हैं। पहले JSN को
  3707. 2:25:14फाइनल कर लेते हैं। ड्यूरेशन। ठीक है? यह
  3708. 2:25:16ड्यूरेशन है। ड्यूरेशन किसी फॉर्म में
  3709. 2:25:20आएगा। ठीक है? और फिर यहां पर आएगी
  3710. 2:25:22कैलोरीज बर्न। कैलोरीज बर्न इस तरीके से।
  3711. 2:25:25और यहां पर कुछ वैल्यू होगी उसकी कैलोरीज
  3712. 2:25:27बर्न की। ठीक है? फिर होगा स्टार्ट टाइम
  3713. 2:25:31इस तरीके से। और यहां पर स्टार्ट टाइम को
  3714. 2:25:33मेंशन किया जाएगा। ओके? सॉरी।
  3715. 2:25:36स्टार्ट टाइम। फिर उसके बाद आएगी हु्स
  3716. 2:25:43एडिशनल
  3717. 2:25:44मैट्रिक्स ऐसे और यहां पर ऐसा होगा और फिर
  3718. 2:25:49एक्सरसाइजज़
  3719. 2:25:52एक्सरसाइजज़ लिखेंगे हम और फिर यहां पर
  3720. 2:25:56एक्सरसाइजज़ को डिफाइन करेंगे। ठीक है? और
  3721. 2:25:58फिर यहां पर सेट्स लिखेंगे। देखिए एडिशनल
  3722. 2:26:01मैट्रिक्स में ना आप कुछ भी ऐड कर सकते हो
  3723. 2:26:03एक हिसाब से। एडिशनल मैट्रिक्स जो है
  3724. 2:26:05देखिए मैं इसको कट कर लेता हूं। ये एडिशनल
  3725. 2:26:07मैट्रिक्स इतना आपने लिख दिया ना ये जेसन
  3726. 2:26:09बन चुकी है। ठीक है? ओप्स सॉरी तो यहां पर
  3727. 2:26:13एडिशनल मैट्रिक्स में ऐसा आपने इतना लिख
  3728. 2:26:15दिया तो ये जेसन बन चुकी है वैसे भी। ठीक
  3729. 2:26:17है? टाइप ड्यूरेशन, कैलोरीज बर्न, स्टार्ट
  3730. 2:26:19टाइम और एडिशनल मैट्रिक्स। ठीक है? टाइप,
  3731. 2:26:21ड्यूरेशन, कैलोरीज बर्न, स्टार्ट टाइप,
  3732. 2:26:23एडिशनल मैट्रिक्स। यूजर आईडी रह गई ये।
  3733. 2:26:25ठीक है? यूजर आईडी डालना जरूरी है। तो,
  3734. 2:26:28यहां पर यूजर आईडी कौन से यूजर के अगेंस्ट
  3735. 2:26:30आप क्रिएट कर रहे हो ये पूरा डेटा। तो, यह
  3736. 2:26:33आपने लिख दिया। इतना लिख दिया। जसन बन
  3737. 2:26:35चुकी है। अब मैं क्या करूंगा? देखिए
  3738. 2:26:37एडिशनल मैट्रिक्स में मैं थोड़ा डाटा डाल
  3739. 2:26:38रहा हूं। जैसे कि एक्सरसाइजज़ कौन सी की
  3740. 2:26:40है, कितना सेट लिया है और फिर रैप्स कितने
  3741. 2:26:43हैं? ये खुद से आप लिख सकते हो। खुद से
  3742. 2:26:46क्यों लिख सकते हो? क्यों लिख सकते हो?
  3743. 2:26:48क्योंकि ये मैप है। देखिए ये मैप है इसका
  3744. 2:26:51टाइप। तो कोई भी स्ट्रिंग लाइक कोई भी की
  3745. 2:26:53आप लिखो और उसकी वैल्यूज़ प्रोवाइड कर दो।
  3746. 2:26:56वो काम करेगा। ठीक है? तो यहां पर सबसे
  3747. 2:26:57पहले तो मैं एक्सरसाइजज़ लिख रहा हूं।
  3748. 2:26:59एक्सरसाइज़ज़ में मैं लिख रहा हूं बेंच
  3749. 2:27:01प्रेस। ठीक है? और फिर यहां पर लिख रहा
  3750. 2:27:04हूं स्क्वाट्स।
  3751. 2:27:06ठीक है? फिर यहां पर लिख रहा हूं डेड
  3752. 2:27:08लिफ्ट्स।
  3753. 2:27:10ठीक है? और फिर सेट्स मैं लिख रहा हूं 12
  3754. 2:27:12के सेट मारे इसने। और रेप्स किए हैं 120।
  3755. 2:27:16ठीक है? जो भी जो भी आपको लिखना है डेटा।
  3756. 2:27:18ठीक है? आप लिख दीजिए। टाइप यहां पर देखिए
  3757. 2:27:20टाइप यहां पर आप लिख सकते हो। अब टाइप
  3758. 2:27:22कहां से आना है आपको? ठीक है? एक्टिविटी
  3759. 2:27:25टाइप जो है उसमें जो टाइप्स आपने डिफाइन
  3760. 2:27:27किए हैं आपको याद होगा यह आपने एक्टिविटी
  3761. 2:27:28टाइप जहां पर प्रीसेट टाइप्स है तो आप वेट
  3762. 2:27:32ट्रेनिंग ले लीजिए कोई भी ले लीजिए आपके
  3763. 2:27:33हिसाब से टाइप ले लीजिए यूजर आईडी आपको
  3764. 2:27:36डालनी है यूजर आईडी के लिए आपको आप जो
  3765. 2:27:38रजिस्टर कर रहे हो यूजर को ठीक है तो किसी
  3766. 2:27:41भी रजिस्टर्ड यूजर की आईडी ले लीजिए और वो
  3767. 2:27:44आईडी यहां पर पेस्ट कीजिए ये आईडी करेक्ट
  3768. 2:27:46होनी चाहिए क्योंकि सर्विस लेयर पर आप
  3769. 2:27:48यूजर का जो ऑब्जेक्ट है उसे फैच कर रहे हो
  3770. 2:27:51करेक्ट ये आईडी की मदद से जो आप पास कर
  3771. 2:27:53रहे हो तो यह आईडी सही होनी चाहिए। ठीक
  3772. 2:27:55है? आईडी सही नहीं होगी तो वहां पर क्रैश
  3773. 2:27:57कर जाएगा प्रोग्राम। ड्यूरेशन आप लिख सकते
  3774. 2:27:59हो 45 तो 45 मिनट्स कैलोरीज बर्न आप लिख
  3775. 2:28:02सकते हो 300। फॉर एग्जांपल स्टार्ट टाइम
  3776. 2:28:05आपको देना है। तो स्टार्ट टाइम देखिए इस
  3777. 2:28:06फॉर्मेट में देना है आपको। ये टाइम स्टैंप
  3778. 2:28:08वाला जो फॉर्मेट है। तो ये आप देख सकते हो
  3779. 2:28:11इस तरीके से। कॉपी कर लीजिए। इसको मेंशन
  3780. 2:28:15कर दीजिए यहां पर। ठीक है? इतना हो गया।
  3781. 2:28:17jसन तो बन चुकी है। ठीक है? और पुट के
  3782. 2:28:19बजाय इसको पोस्ट कर दूंगा। मैंने गलती से
  3783. 2:28:21पुट सेलेक्ट कर लिया था। ठीक है? इतना हो
  3784. 2:28:23गया। अब इसको रन करके देखते हैं। ये रन
  3785. 2:28:24होती है क्या? अभी फिलहाल अगर आप डेटाबेस
  3786. 2:28:26में आओगे तो एक्टिविटी टेबल में देखोगे तो
  3787. 2:28:29कुछ डेटा नहीं है। ठीक है? इसको रन करके
  3788. 2:28:31देखते हैं। चलिए रन किया मैंने। अच्छा चलो
  3789. 2:28:34एरर तो आना एरर जभी भी आता है जब भी लाइव
  3790. 2:28:38रिकॉर्डिंग के टाइम पे तो मुझे बहुत खुशी
  3791. 2:28:39होती है क्योंकि एरर दिखाने का और डीबग
  3792. 2:28:41करने का चांस मिल जाता है और आपको भी कुछ
  3793. 2:28:43नया सीखने मिल जाता है कि डीबगिंग कैसे
  3794. 2:28:45करनी है। तो देखिए एरर आपको यहां पर आएगी।
  3795. 2:28:48ठीक है? ठीक है? लोग क्या यहां पर एरर का
  3796. 2:28:50मैसेज ढूंढते हैं। ऐसे नहीं होता है।
  3797. 2:28:52पोस्टमैन में आपको दिख रहा है कि एरर आई
  3798. 2:28:54है। कुछ इंटरनल सर्वर एरर। इसका मतलब कुछ
  3799. 2:28:56एरर आई है। अब आपको एरर की जो डिटेल्स है
  3800. 2:28:58वो स्टक ट्रेस पे दिखेगी। यहां पर देखिए
  3801. 2:29:01पूरी स्टक ट्रेस आई है। ठीक है? पूरी की
  3802. 2:29:03पूरी स्टैक ट्रेस। यहां पर अभी क्या डाटा
  3803. 2:29:05आया है वो आपको देखना है। पूरा स्क्रॉल
  3804. 2:29:06करना है ऊपर। तो एक पॉइंट तक आप स्क्रॉल
  3805. 2:29:09करोगे ऊपर तो आपको दिखाई देगा। यहीं कहीं
  3806. 2:29:12देखिए स्टार्टिंग में आपको दिखाई दे रहा
  3807. 2:29:15है। ठीक है? क्या बोल रहा है यह? तो यह
  3808. 2:29:18बोल रहा है कुड नॉट फाइंड फॉर्मेट मैपर
  3809. 2:29:22फॉर jसन फॉर्मेट व्हिच इज रिक्वायर्ड फॉर
  3810. 2:29:23मैपिंग jसन टाइप्स। ठीक है? jसन फॉर्मेट
  3811. 2:29:27मैपर इज़ ऑटोमेटिक बट रिक्वायर्स दैट यू
  3812. 2:29:30इदर हैव जैक्सन और jसन बी लाइक यासन ऑन द
  3813. 2:29:34क्लासेस। अच्छा कुडाइट कुड नॉट फाइंड अ
  3814. 2:29:36फॉर्मेट मैपर। तो ठीक है। यह एरर सिंपली
  3815. 2:29:40यह बोल रहा है दोस्तों कि आप JSN में डाटा
  3816. 2:29:44भेज रहे हो। ठीक है? यहां से हम JSN में
  3817. 2:29:45डाटा भेज रहे हैं। यह वाला डाटा एक्चुअली
  3818. 2:29:48रिक्वेस्ट ही पूरी jसn में है। लेकिन ये
  3819. 2:29:50वाला जो डाटा है एडिशनल मैट्रिक्स का इतना
  3820. 2:29:53ये भी जेएसएन है। करेक्ट। और हम jसn को एज
  3821. 2:29:56इट इज़ स्टोर कर रहे हैं डेटाबेस में। तो
  3822. 2:29:58आप यहां पर देखोगे अगर एक्टिविटी अ की जो
  3823. 2:30:02टेबल है सॉरी एक्टिविटी का जो क्लास है
  3824. 2:30:04उसमें हम एडिशनल मैट्रिक्स को JSN फॉर्मेट
  3825. 2:30:07में स्टोर कर रहे हैं। JSN जो भी आ रही है
  3826. 2:30:09उसको स्टोर कर रहे हैं एडिशनल मैट्रिक्स
  3827. 2:30:10में। ठीक है? तो प्रॉब्लम ये हो रही है
  3828. 2:30:13यहां पर कोई जेसन मैपर नहीं है अ सेव करने
  3829. 2:30:17के लिए डेटा तो एक jसn मैपर की जरूरत होती
  3830. 2:30:19है तो मैं क्या करूंगा यहां पर आ जाऊंगा
  3831. 2:30:20pmsl में और यहां पर एक डिपेंडेंसी हम ऐड
  3832. 2:30:23करेंगे मैनुअली ठीक है तो एक डिपेंडेंसी
  3833. 2:30:25का टैग ऐसे लिख लेंगे हम लोग ठीक है तो
  3834. 2:30:27डिपेंडेंसी का टैग जैसे ही लिखते हो आप तो
  3835. 2:30:29देखिए आपको यहां पर आ जाएगी ग्रुप आईडी और
  3836. 2:30:31आर्टिफेक्ट आईडी और ये डिपेंडेंसी का टैग
  3837. 2:30:33आपको डिपेंडेंसी के अंदर लिखना है ठीक है
  3838. 2:30:36यहां पर ऐसे और यहां पर ग्रुप आईडी आपको
  3839. 2:30:38लिखना है कॉम डॉट फास्ट मास्टर xml jxinc
  3840. 2:30:43तो देखिए मुझे ऑटो सजेस्ट में भी आ गया
  3841. 2:30:45ठीक है और यहां पर ये जैक्सिन एनोटेशंस की
  3842. 2:30:48बजाय जैक्सिन डेटा बाइंड कर देना है ठीक
  3843. 2:30:50है तो इतना आपको ऐड कर देना है ये
  3844. 2:30:53डिपेंडेंसी और यहां पर मेवन रीलोड कर लेना
  3845. 2:30:55है ठीक है और आपको रिस्टार्ट कर देते हैं
  3846. 2:30:59तो ये बेसिकली jसन के साथ काम करने के लिए
  3847. 2:31:02हेल्प करती है ये वाली जो डिपेंडेंसी है
  3848. 2:31:05वो और वो एडेड नहीं थी तो इसके लिए वो जो
  3849. 2:31:07डेट डेटा है वो डेटाबेस में स्टोर नहीं हो
  3850. 2:31:10पा रहा था तो ये हो गया। ठीक है? और अब
  3851. 2:31:12इसको फिर से रन करते हैं। और यहां पर
  3852. 2:31:14देखिए अब डेटा जो है वो बढ़िया तरीके से
  3853. 2:31:17सेव हो रहा है। यहां पर आप देख पा रहे हो
  3854. 2:31:19आईडी जनरेट जनरेट हुई है। यूजर आईडी जो
  3855. 2:31:21हमने पास की थी वो है वेट ट्रेनिंग एडिशनल
  3856. 2:31:24मैट्रिक्स सेट्स रैप्स ये सारी चीजें
  3857. 2:31:27स्टार्ट टाइम क्रिएटेड एट अपडेटेड एट सब
  3858. 2:31:29कुछ जनरेट हो रहा है खुद ब खुद। ठीक है?
  3859. 2:31:31और यहां पर अगर आप डेटाबेस लेवल पर आते हो
  3860. 2:31:33और इसको रन करते हो तो देखिए आपको डेटा भी
  3861. 2:31:35दिखाई देगा। यहां पर देख पा रहे हैं आप
  3862. 2:31:37डेटा दिखाई दे रहा है आपको। ठीक है? ठीक
  3863. 2:31:38है? एडिशनल मैट्रिक्स देखिए जेसन फॉर्मेट
  3864. 2:31:40में स्टोर हुआ है। देखिए एडिशनल मैट्रिक्स
  3865. 2:31:43ये पूरा का पूरा JSN फॉर्मेट में स्टोर
  3866. 2:31:45हुआ है। क्यों? क्योंकि हमने फील्ड को ही
  3867. 2:31:46नाम दिया jसन। तो जो भी डेटा आ रहा है
  3868. 2:31:49उसको हम ऐसे ही डंप कर रहे हैं डेटाबेस
  3869. 2:31:50में। देखिए एडिशनल मैट्रिक्स एक ऐसी चीज
  3870. 2:31:53है कि आप कुछ भी ऐड करना चाहो। जैसे कि
  3871. 2:31:55अभी वेट ट्रेनिंग की एक्सरसाइज़ थी। हमने
  3872. 2:31:58वेट ट्रेनिंग को ट्रैक किया। तो यहां पर
  3873. 2:31:59आप रैप्स और कौन सी एक्सरसाइज किए उसको
  3874. 2:32:02ट्रैक किया आपने। अगर हम स्विमिंग ट्रैक
  3875. 2:32:03कर रहे हैं तो यहां पर लैप्स आएंगे। कितने
  3876. 2:32:05लैप्स आपने कंप्लीट किए स्विमिंग में क्या
  3877. 2:32:07स्पीड थी वो सारी चीजें आएंगी। अगर आप
  3878. 2:32:10रनिंग ट्रैक कर रहे हो तो इसमें कैड्स पेस
  3879. 2:32:13आपने कितना किलोमीटर रन किया ये सारी
  3880. 2:32:14चीजें आएंगी। ठीक है? तो डिपेंडिंग ऑन दी
  3881. 2:32:16एक्टिविटी क्या है? ये एडिशनल मैट्रिक्स
  3882. 2:32:18चेंज होते रहता है। तो इसके लिए हमने इसका
  3883. 2:32:20स्ट्रक्चर डिफाइन नहीं किया है। jसn जो भी
  3884. 2:32:22आ रही है सीधा-सीधा हम उसको डंप कर देते
  3885. 2:32:23हैं यहां पर। ठीक है? और आपको JSN लेवल पे
  3886. 2:32:26मेक श्योर करना है कि आप सही डाटा पास करो
  3887. 2:32:28उसमें जो भी आपको दिखाना है। और यहां पर
  3888. 2:32:30देखिए सब कुछ सेव हो चुका है जैसे हमने
  3889. 2:32:32पास किया था और यूजर आईडी भी आ चुकी है
  3890. 2:32:34यहां पर। ठीक है? तो पूरा का पूरा डेटा जो
  3891. 2:32:36है वो आ चुका है और काफी बढ़िया तरीके से
  3892. 2:32:39सेव हुआ है। ठीक है? तो ये जो डेटा है एक
  3893. 2:32:42पर्टिकुलर यूजर के अगेंस्ट मैप्ड है। तो
  3894. 2:32:44ये यूजर है उसके अगेंस्ट मैप्ड है। ठीक
  3895. 2:32:46है? और हम डेटा को स्टोर भी कर पा रहे
  3896. 2:32:49हैं। ठीक है? उम्मीद करता हूं इतना क्लियर
  3897. 2:32:51रहा है अब तक। ठीक है? ये वाली एंड पॉइंट
  3898. 2:32:52क्लियर रही है। ठीक है? ये वाली एंड पॉइंट
  3899. 2:32:55क्यों थी? ये वाली एंड पॉइंट हमने
  3900. 2:32:57एक्टिविटी को ट्रैक करने के लिए बनाई थी।
  3901. 2:32:59काफी सारे कांसेप्ट्स को फिर से टच किया
  3902. 2:33:01हमने। ठीक है? और थोड़ी प्रैक्टिस भी हो
  3903. 2:33:04गई और चीजें किस तरीके से ईपीआई लेवल पर
  3904. 2:33:07काम कर रही है एक साथ वो भी हमें देखने
  3905. 2:33:09मिल गया। ठीक है? उम्मीद करता हूं यह
  3906. 2:33:11हेल्पफुल रहा। अब आगे ये एंड पॉइंट पर काम
  3907. 2:33:14करेंगे। मैं तो बोलता हूं ये एंड पॉइंट को
  3908. 2:33:15भी चैलेंज की तरह लीजिए। एटलीस्ट अगर आपने
  3909. 2:33:17ये वाली एपीआई नहीं बना पाए तो एटलीस्ट
  3910. 2:33:19इसको चैलेंज की तरह लीजिए। ये सिंपल वाली
  3911. 2:33:21है। इसमें सिर्फ गेट करना है, डेटा और
  3912. 2:33:23दिखा देना है बस। ठीक है? लीजिए चैलेंज की
  3913. 2:33:26तरह और नहीं कर पाते तो कोई बात नहीं।
  3914. 2:33:29डीमोटिवेट नहीं होना है। वीडियो को
  3915. 2:33:30कंटिन्यू रखना है और आगे मैं कैसे बनाते
  3916. 2:33:32जा रहा हूं वो देखते रहना है। ठीक है?
  3917. 2:33:40तो दोस्तों बात करते हैं अब नेक्स्ट एंड
  3918. 2:33:42पॉइंट के बारे में जो कि यहां पर हमने
  3919. 2:33:44कमेंट किया हुआ है। तो इस एंड पॉइंट की
  3920. 2:33:46मदद से हमें क्या करना है? हमें जो
  3921. 2:33:48एक्टिविटी क्रिएटेड ही क्रिएटेड की है
  3922. 2:33:51हमने यहां पर जो क्रिएट की है उसको
  3923. 2:33:53रिट्रीव करना है। ठीक है? तो इसको मैं
  3924. 2:33:56जल्दी से अनकमेंट कर देता हूं क्योंकि
  3925. 2:33:57यहां पर कोड लिखना है अब हमें और देखिए
  3926. 2:33:59यहां पर सबसे पहली चीज़ हमें करनी है कि
  3927. 2:34:01यहां पर ट्रैक एक्टिविटी ये मेथड का नेम
  3928. 2:34:03है और यहां पर भी हमने ट्रैक एक्टिविटी
  3929. 2:34:05रखा है। ठीक है? तो इसको ट्रैक एक्टिविटी
  3930. 2:34:07नहीं इसको हम कुछ बढ़िया सा नाम दे सकते
  3931. 2:34:09हैं जो कि बताए हमें कि ये मेथड क्या करता
  3932. 2:34:11है? तो हम कहेंगे गेट यूजर एक्टिविटीज।
  3933. 2:34:14ठीक है? तो ये एंड पॉइंट क्या करने वाला
  3934. 2:34:17है? यह एंड पॉइंट हमें एक यूजर स्पेसिफिक
  3935. 2:34:19एक्टिविटी रिटर्न करेगा। एक यूजर
  3936. 2:34:22स्पेसिफिक मतलब एक यूजर के अगेंस्ट अगर
  3937. 2:34:24कोई एक्टिविटी रिकॉर्डेड है, लॉक्ड है तो
  3938. 2:34:26वो उसे फेच करके हमें दे देगा यूजर
  3939. 2:34:28स्पेसिफिक। ठीक है? तो एग्जांपल के तौर पे
  3940. 2:34:31अगर मैं आपको बताऊं तो मान लीजिए एक यूजर
  3941. 2:34:33ए है ठीक है? और दूसरा यूजर बी है तो यूजर
  3942. 2:34:37ए के अगेंस्ट अगर 10 एक्टिविटी रिकॉर्डेड
  3943. 2:34:39है जैसे कि वे ट्रेनिंग, स्विमिंग ये सब
  3944. 2:34:41तो वो यूजर ए की ही अगर हम यूजर ए की मांग
  3945. 2:34:44रहे हैं तो यूजर ए की ही एक्टिविटी देगा।
  3946. 2:34:46बी की नहीं देगा। और अगर बी की एक्टिविटीज़
  3947. 2:34:48मांगते हैं तो बी की देगा। ठीक है? अब
  3948. 2:34:51देखिए यहां पर यह एपीआई बनाने बनाते वक्त
  3949. 2:34:54आपको एक नया कांसेप्ट सीखने मिलेगा जो कि
  3950. 2:34:56है रिक्वेस्ट हेडर का। ठीक है? रिक्वेस्ट
  3951. 2:34:59हेडर का कांसेप्ट का मतलब क्या है? यहां
  3952. 2:35:01पर ये रिक्वेस्ट है। ठीक है? मेरे पास ये
  3953. 2:35:04रिक्वेस्ट में बॉडी जा सकती है, ऑथराइज़ेशन
  3954. 2:35:06अह डिटेल्स जा सकती है, पैराटर्स जा सकते
  3955. 2:35:09हैं। और एक आपको ऑप्शन यहां पर दिखाई देगा
  3956. 2:35:12जो कि है हेडर्स का। ठीक है? तो यहां पर
  3957. 2:35:15आप हेडर्स ऐड कर सकते हो रिक्वेस्ट के साथ
  3958. 2:35:18और आप स्प्रिंग बूट में इस तरीके का कोड
  3959. 2:35:20लिख सकते हो जहां पर आप हेडर्स को रिट्रीव
  3960. 2:35:23कर पाओ और उन हेडर्स को इस्तेमाल करके उस
  3961. 2:35:26उनमें जो डेटा है तो आप डेटा पास कर सकते
  3962. 2:35:28हो एक हिसाब से। ठीक है? तो ये जो अ ये जो
  3963. 2:35:32एंड पॉइंट मैं बनाने वाला हूं इस एंड
  3964. 2:35:34पॉइंट में मैं हेडर्स का इस्तेमाल करूंगा।
  3965. 2:35:37ठीक है? और यहां पर आपको एक थोड़ा नया
  3966. 2:35:39कांसेप्ट सीखने मिल जाएगा। ठीक है?
  3967. 2:35:40क्योंकि देखिए हमारे पास आईडी पास करने का
  3968. 2:35:42अभी कोई जरिया है नहीं। ठीक है? अगर आप एक
  3969. 2:35:46यूजर स्पेसिफिक एक्टिविटी फच करना चाह रहे
  3970. 2:35:48हो तो एप्लीकेशन को क्या लगेगा? एप्लीकेशन
  3971. 2:35:51को लगेगा यूजर आईडी। ठीक है? एप्लीकेशन को
  3972. 2:35:53चाहिए यूजर आईडी। एप्लीकेशन बोलेगा आप ठीक
  3973. 2:35:56है? एक स्पेसिफिक यूजर की एक्टिविटी फच
  3974. 2:35:58करना चाह रहे हो। लेकिन कौन से यूजर की
  3975. 2:36:00फेच करना चाह रहे हो? मुझे यूजर आईडी तो
  3976. 2:36:01बताइए। कौन सा यूजर है? ठीक है? तो आपको
  3977. 2:36:04यूजर आईडी रिक्वेस्ट में इनकॉर्पोरेट करना
  3978. 2:36:07होगा और एप्लीकेशन की जॉब है कि वो उसमें
  3979. 2:36:10से यूजर आईडी को रिट्रीव करें और उस यूजर
  3980. 2:36:13की डिटेल्स पास कर दे ऐसा। ठीक है? तो अब
  3981. 2:36:17पास करने के लिए ये यूजर आईडी पास करने के
  3982. 2:36:20लिए अलग-अलग तरीके होते हैं। लेकिन मैं
  3983. 2:36:21हेडर्स को चूज़ कर रहा हूं यहां पर। ठीक
  3984. 2:36:23है? हेडर्स को चूज़ करेंगे और हम क्या
  3985. 2:36:24करेंगे? अ यहां पर आ जाएंगे। तो देखिए
  3986. 2:36:28दोस्तों एक और क्वेश्चन को मैं एड्रेस
  3987. 2:36:30करना चाहूंगा। जनरली बिगिनर्स में ये
  3988. 2:36:31क्वेश्चन आता है कि हमने हेडर्स को
  3989. 2:36:33नॉर्मली चूज़ चूज़ क्यों करते हैं? ठीक है?
  3990. 2:36:35हेडर्स को नॉर्मली चूज़ क्यों कर रहे हैं?
  3991. 2:36:37हम पैरामीटर पास करने के लिए यहां पर ये
  3992. 2:36:39भी है। पैरम्स भी है। ये पैरम्स में आप
  3993. 2:36:41डेटा पास कर सकते हो। तो फॉर एग्जांपल अगर
  3994. 2:36:43मैं यहां पर लिखूं पेज इक्वल टू वन। तो
  3995. 2:36:45देखिए ये अ पैरामीटर में पास हो रहा है।
  3996. 2:36:48है कि नहीं? तो मैं इसका भी तो इस्तेमाल
  3997. 2:36:50कर सकता हूं। लेकिन इसका एक रीज़न है कि
  3998. 2:36:52मैं हेडर का क्यों इस्तेमाल कर रहा हूं?
  3999. 2:36:53ये भी एक रीज़न है। चलो हमें सीखने तो
  4000. 2:36:55मिलेगा एक नया कॉन्सेप्ट। वो एक रीज़न है।
  4001. 2:36:57लेकिन जनरली हेडर्स का इस्तेमाल इसलिए
  4002. 2:36:59होता है कि अगर आप कोई ऐसा डेटा पास करना
  4003. 2:37:01चाह रहे हो एप्लीकेशन में एपीआई के थ्रू अ
  4004. 2:37:04तो हेडर्स चूज़ किया जाता है। क्योंकि
  4005. 2:37:06पैराम्स को आपको क्लीन रखना होता है। अ आप
  4006. 2:37:10पैराम्स को जनरली इस्तेमाल करते हो
  4007. 2:37:12पैजिनेशन और सर्च क्वेरी रिलेटेड इनफेशन
  4008. 2:37:14पास करने के लिए। तो अगर आपको पेज पेज वन
  4009. 2:37:16की डिटेल्स चाहिए, पेज थ्री की डिटेल्स
  4010. 2:37:18चाहिए और आपको सर्च क्वेरी पास करनी है तो
  4011. 2:37:22वो सारी चीजें चीजों के लिए पैरम्स ये जो
  4012. 2:37:25यूआरएल पैरामीटर्स है वो बेहतर चीज होती
  4013. 2:37:28है। क्वरी पैराटर्स जो है वो बेहतर चीज
  4014. 2:37:30होती है और हेडर्स ऐसी कोई यूजर आईडी या
  4015. 2:37:32ऐसा कुछ पास करना है तो उसके लिए बेहतर
  4016. 2:37:34होता है। ठीक है? तो अब आ जाते हैं यहां
  4017. 2:37:35पर। अब यहां पर हम क्या करेंगे? देखिए
  4018. 2:37:39यहां पर हमें चाहिए यूजर आईडी। तो पहले तो
  4019. 2:37:42मैं लिख लूंगा स्ट्रिंग यूजर आईडी और यह
  4020. 2:37:45यूजर आईडी आ रही है हेडर से तो यूजर आईडी
  4021. 2:37:47हेडर लिख दूंगा यहां पर ठीक है और यहां पर
  4022. 2:37:51मैं क्या करूंगा या तो ये यूजर आईडी
  4023. 2:37:53लिखूंगा हेडर लिखने की जरूरत नहीं और यहां
  4024. 2:37:55पर मैं क्या करूंगा यहां पर रिटर्न करते
  4025. 2:37:56वक्त मैं कर दूंगा रिस्पांस एंटी डॉट और
  4026. 2:38:01यहां पर लिख दूंगा एक्टिविटी सर्विस डॉट
  4027. 2:38:03गेट यूजर एक्टिविटीज ऐसे और ऐसे यूजर आईडी
  4028. 2:38:09लिख दूंगा मैं ठीक है ऐसे तो इतना मैंने
  4029. 2:38:12लिख दिया है। अब यह मेथड तो एक्सिस्ट नहीं
  4030. 2:38:15करता। तो इसके लिए रेड मार्क्स आ रहे हैं।
  4031. 2:38:16एक काम कर सकते हैं। इस पे होवर करके
  4032. 2:38:19इंटेलिजेंट की मदद से ये मेथड का
  4033. 2:38:20स्ट्रक्चर भी मैं बना सकता हूं यहां पर।
  4034. 2:38:22ठीक है? तो कंट्रोलर से सारे इशूज़ चले गए।
  4035. 2:38:25ठीक है? अब यहां पर देखिए मैंने यूजर आईडी
  4036. 2:38:27लिखा है पैरामीटर्स। तो पैरामीटर्स में एक
  4037. 2:38:29पैरामीटर है जो कि है यूजर आईडी। अब ये
  4038. 2:38:31यूजर आईडी आ कहां से रहा है? तो जैसे कि
  4039. 2:38:33मैंने कहा रिक्वेस्ट हेडर से आ रहा है। तो
  4040. 2:38:35अब रिक्वेस्ट हेडर से आ रहा है यह हमको
  4041. 2:38:37स्प्रिंग बूट को बताना होगा ताकि स्प्रिंग
  4042. 2:38:40बूट उसको ऑटोमेटिकली रिट्रीव करें और
  4043. 2:38:42एप्लीकेशन को प्रोवाइड करे या हमारे मेथड
  4044. 2:38:44को प्रोवाइड करें। तो बताएंगे कैसे हम ये
  4045. 2:38:46हम यहां पर लिखेंगे रिक्वेस्ट
  4046. 2:38:49बॉडी इस तरीके से। ठीक है? और यहां पर मैं
  4047. 2:38:54लिख दूंगा वैल्यू। अच्छा रिक्वेस्ट अ सॉरी
  4048. 2:38:58रिक्वेस्ट हेड बॉडी नहीं रिक्वेस्ट हेडर
  4049. 2:39:00आएगा। सॉरी रिक्वेस्ट हेडर और यहां पर आ
  4050. 2:39:03जाएगा वैल्यू ठीक है और वैल्यू की जगह मैं
  4051. 2:39:06कहूंगा एक्स हफन यूजर हफन आईडी ये हेडर की
  4052. 2:39:11ये हेडर का नाम है ठीक है तो इस हेडर में
  4053. 2:39:15अगर इस नाम से कोई पैरामीटर आता है तो उसे
  4054. 2:39:18यूजर आईडी को असाइन कर देना है और आप क्या
  4055. 2:39:20करोगे इसको लोगे यहां पर ठीक है यहां पर आ
  4056. 2:39:23जाओगे और यहां पर ट्रैक एक्टिविटी जो आपने
  4057. 2:39:26बना रखी है ठीक है मैं सारी रिक्वेस्ट को
  4058. 2:39:28सेव कर लेता हूं एक हिसाब से ट्रैक
  4059. 2:39:30एक्टिविटी जो आपने बना रख रखिए। उसको हम
  4060. 2:39:31डुप्लीकेट करेंगे ऐसे। ठीक है? और फिर
  4061. 2:39:35यहां पर आ जाऊंगा रिट्रीव
  4062. 2:39:37एक्टिविटी इस तरीके से। और यहां पे ऐसे आप
  4063. 2:39:42लिखोगे और हेडर में आप पास कर दोगे एक्स
  4064. 2:39:45यूजर आईडी और यहां पर यूजर आईडी मेंशन कर
  4065. 2:39:48दोगे इस तरीके से। ठीक है? तो ऐसे पास
  4066. 2:39:50होगी ये एक्स यूजर आईडी। एक्स यूजर आईडी
  4067. 2:39:52और ये वाली जो नाम आपने मेंशन किए है ये
  4068. 2:39:54दोनों सेम होनी चाहिए। तभी जाकर जो वैल्यू
  4069. 2:39:56आप पास कर रहे हो यहां पर मेंशन हो जाएगी।
  4070. 2:39:58ठीक है? इतना होने के बाद ये जो वैल्यू है
  4071. 2:40:01वो यहां पर पास हो जाएगी मेथड में और मेथड
  4072. 2:40:03में अगर आप जाते हो ठीक है तो यहां पर अब
  4073. 2:40:06हमें लॉजिक लिखने की जरूरत है। ठीक है? ये
  4074. 2:40:08लॉजिक क्या करेगा? लॉजिक हमें जो
  4075. 2:40:11एक्टिविटी सर्विस में अ रिपॉजिटरी की मदद
  4076. 2:40:15से जो भी यूज़र्स है उसमें से एक पर्टिकुलर
  4077. 2:40:18यूजर के अगेंस्ट जो भी अह एक्टिविटी
  4078. 2:40:21रिकॉर्डेड है उसको रिटर्न करने में मदद
  4079. 2:40:23करेगा। ठीक है? तो यहां पर हम आ जाते हैं।
  4080. 2:40:25ठीक है? यहां पर मुझे क्या लगेगा? मुझे
  4081. 2:40:27यहां पर लिस्ट ऑफ एक्टिविटी सबसे पहले
  4082. 2:40:30लगेगी। ठीक है? तो देखिए लिस्ट ऑफ़
  4083. 2:40:32एक्टिविटी आप कैसे रिट्रीव कर सकते हो?
  4084. 2:40:34आपको लेना है लिस्ट और एक्टिविटी यहां पे
  4085. 2:40:38और यहां पे आपको लेना है लिस्ट एक्टिविटी
  4086. 2:40:41लिस्ट इस तरीके से। और यहां पे लेना है
  4087. 2:40:44एक्टिविटी रिपॉज़िटरी डॉट फाइंड बाय आईडी।
  4088. 2:40:48ऐसे फाइंड बाय आईडी। ठीक है? और यहां पर
  4089. 2:40:53आपको यूजर आईडी मेंशन करनी है इस तरीके
  4090. 2:40:55से।
  4091. 2:40:57ठीक है? अब यहां पर एक दिक्कत है। मैं
  4092. 2:40:58आपको एक चीज बताता हूं। आपने यहां पर मेथड
  4093. 2:41:00जो इस्तेमाल किया है वह है फाइंड बाय
  4094. 2:41:02आईडी। फाइंड बाय आईडी क्या करेगा? वो
  4095. 2:41:05फाइंड करेगा बाय एक्टिविटी आईडी।
  4096. 2:41:08एक्टिविटी रिपॉज़िटरी है। करेक्ट? तो वो
  4097. 2:41:10फाइंड करेगा बाय एक्टिविटी आईडी। ठीक है?
  4098. 2:41:13तो यहां पर प्रॉब्लम हो जाती है। तो यहां
  4099. 2:41:15पर हमें एक्टिविटी आईडी से सर्च नहीं करना
  4100. 2:41:18है। हमें सर्च करना है बाय यूजर आईडी। ठीक
  4101. 2:41:21है? हमें क्या करना है? बाय यूजर आईडी
  4102. 2:41:22सर्च करना है। अब यहां पर देखिए दूसरी
  4103. 2:41:24प्रॉब्लम आती है। बाय यूजर आईडी ऐसा कोई
  4104. 2:41:25मेथड एक्टिविटी रिपॉज़िटरी जो है वह
  4105. 2:41:28प्रोवाइड करती ही नहीं है। तो यह आपको
  4106. 2:41:31कस्टम बनाना पड़ेगा। ठीक है? यह कस्टम
  4107. 2:41:34बनाना पड़ेगा। अब यहां पर एक और कांसेप्ट
  4108. 2:41:36को हम टच अप करेंगे कि कस्टम मेथड्स आप
  4109. 2:41:40किस तरीके से बना सकते हो। देखिए, जेपीए
  4110. 2:41:42रिपॉज़िटरी जो है, रिपॉज़िटरी में अगर आप
  4111. 2:41:44जाते हो यहां पर, ठीक है? तो, यह
  4112. 2:41:46एक्टिविटी रिपॉज़िटरी की जो इंटरफ़ेस है, वो
  4113. 2:41:48है। ठीक है? यहां पर हमने जेपीए रिपॉज़िटरी
  4114. 2:41:51को एक्सटेंड कर रखा है। तो मैंने कहा था
  4115. 2:41:53जेपीए रिपॉज़िटरी एक ऐसा इंटरफ़ेस है जो
  4116. 2:41:56हमें प्रीबिल्ट मेथड्स देती है। ठीक है?
  4117. 2:41:58जिसके जरिए आप डेटाबेस से इंटरेक्ट कर
  4118. 2:42:00सकते हो। ठीक है? प्रीबिट्ट मेथड्स
  4119. 2:42:02क्या-क्या होती है? तो यहां पर अगर आप
  4120. 2:42:03देखोगे यहां पर अगर आप आते हो तो देखिए
  4121. 2:42:06फाइंड फाइंड को अगर आप लिखते हो फाइंड बाय
  4122. 2:42:08आईडी फाइंड ऑल ये सारे मेथड्स आपको मिलते
  4123. 2:42:10हैं। सेव मेथड मिलते हैं। ठीक है? काफी
  4124. 2:42:12सारे मेथड मिलते हैं। यहां पर आप देखोगे
  4125. 2:42:14काफी सारे मेथड्स मिलते हैं आपको। ठीक है?
  4126. 2:42:16कंट्रोल सेट कर लेता हूं और जो हमने लिखा
  4127. 2:42:18था उस पर आ जाता हूं। ठीक है? काफी सारे
  4128. 2:42:20मेथड्स मिलते हैं। ये मेथड प्रीबिड होते
  4129. 2:42:22हैं। ठीक है? फाइंड बाय आईडी करके भी एक
  4130. 2:42:25मेथड है। लेकिन वो क्या करेगा? देखिए ये
  4131. 2:42:27एक्टिविटी रिपॉजिटरी है। करेक्ट? ये
  4132. 2:42:30एक्टिविटी रिपॉज़िटरी है। तो एक्टिविटी को
  4133. 2:42:32अगर आप देखोगे तो फाइंड बाय आईडी का मतलब
  4134. 2:42:34हुआ वो इस आईडी से सर्च करेगा। एक्टिविटी
  4135. 2:42:37इस आईडी से। क्या हम इस आईडी से सर्च करना
  4136. 2:42:40चाहते हैं? जी नहीं। हमारे पास क्या आ रही
  4137. 2:42:42है? यूजर आईडी आ रही है तो यूजर आईडी आ
  4138. 2:42:44रही है तो यूजर आईडी से हम कैसे सर्च
  4139. 2:42:46करेंगे उसके लिए हमें अब यह कस्टम यूज़ केस
  4140. 2:42:49हो गया जो कि हमारे एप्लीकेशन के लिए
  4141. 2:42:50स्पेसिफिक है ठीक है तो इसके लिए जेपीए
  4142. 2:42:53कोई मेथड प्रोवाइड नहीं करेगा जीपीए
  4143. 2:42:54हाइपरनेट कोई मेथड नहीं प्रोवाइड करेगा
  4144. 2:42:56लेकिन हमें एक ऐसा तरीका देगा जिसकी मदद
  4145. 2:42:58से हम ये मेथड को आसानी से अ बना पाए ठीक
  4146. 2:43:03है और मैं क्या करूंगा उसके लिए यहां पर
  4147. 2:43:06इसको होवर करूंगा और यहां पर क्रिएट मेथड
  4148. 2:43:10पे क्लिक कर दूंगा ठीक है जैसे जैसे ही
  4149. 2:43:12मैं क्रिएट मेथड पे क्लिक करता हूं तो
  4150. 2:43:13देखिए यहां पर अ ये मेथड क्रिएट हो गया।
  4151. 2:43:16ये इंटेलिजेंट ने क्रिएट कर दिया
  4152. 2:43:18एक्टिविटी रेपोजिटरी में। ठीक है? अब
  4153. 2:43:21देखिए यहां पर आप देखोगे ना तो हमें कोई
  4154. 2:43:23डेफिनेशन प्रोवाइड नहीं करना है। हमें
  4155. 2:43:25सिर्फ ये डिक्लेअर करना है इस तरीके से
  4156. 2:43:26मेथड और छोड़ देना है। ठीक है? ये मैजिक
  4157. 2:43:29है। देखिए अभी ये जेपीए का मैजिक है।
  4158. 2:43:32हाइबनेट का मैजिक है। हमने सिर्फ मेथड
  4159. 2:43:34यहां पर लिखना है एक पर्टिकुलर सिंटेक्स
  4160. 2:43:37में। और जेपीए हाइबनेट क्या करेंगे? उसके
  4161. 2:43:41लिए क्वेरीज़ जनरेट करेंगे और वह कस्टम
  4162. 2:43:43मेथड अवेलेबल कर देंगे हमारे लिए। लेकिन
  4163. 2:43:45सिंटेक्स ऐसा नहीं आप कुछ भी लिखोगे। एक
  4164. 2:43:47पर्टिकुलर फॉर्मेट है, सिंटेक्स है,
  4165. 2:43:49कन्वेंशन से उसको फॉलो करना है आपको। मैं
  4166. 2:43:51आपको बताता हूं। देखिए, फाइंड बाय यूजर
  4167. 2:43:53आईडी। जैसे कि मैंने कहा, यह हमारे लिए एक
  4168. 2:43:55कस्टम यूज़ केस था हमारी एप्लीकेशन के लिए।
  4169. 2:43:57ठीक है? तो, हम रिट्रीव करना चाहते हैं
  4170. 2:43:59एक्टिविटी की इनेशन बाय यूजर आईडी। यूजर
  4171. 2:44:03आईडी नाम का फ़िल्टर लगाना चाहते हैं। तो,
  4172. 2:44:05हमें क्या करना है? देखिए, फाइंड बाय
  4173. 2:44:06लिखना है। फाइंड बाय का मतलब क्या?
  4174. 2:44:08सेलेक्ट क्वेरी। करेक्ट। तो, यह JPI को
  4175. 2:44:11ऑलरेडी पता है। जेपीएन को ऑलरेडी पता है।
  4176. 2:44:13फाइंड बाय अगर यूजर ने लिख दिया, इसका
  4177. 2:44:15मतलब है सेलेक्ट क्वेरी। डेटाबेस में आप
  4178. 2:44:18सेलेक्ट क्वेरी लिखते हो। सेलेक्ट यानी कि
  4179. 2:44:19आप डेटा रिट्रीव करना चाहते हो। फाइंड
  4180. 2:44:21बाय। ठीक है? बाय जब वो दिखता है बाय। बाय
  4181. 2:44:25का मतलब है वेयर क्लॉज़। तो इसका मतलब
  4182. 2:44:27सेलेक्ट क्वेरी में आप फ़िल्टर लगाना चाह
  4183. 2:44:29रहे हो। ठीक है? यह जेपीएस समझ जाता है।
  4184. 2:44:32अच्छा बाय का मतलब है वेयर क्लॉज़। और आपने
  4185. 2:44:34लिखा है यहां पर यूजर आईडी। ठीक है? तो
  4186. 2:44:38यहां पर यू कैपिटल है और आई कैपिटल है। और
  4187. 2:44:40यह देखिए वह उसको समझेगा कैसे? यह अलग-अलग
  4188. 2:44:42वर्ड है। यह कैपिटलाइजेशन से समझेगा।
  4189. 2:44:44फाइंड बाय बाय मतलब अच्छा वेयर क्लॉज़ यूजर
  4190. 2:44:47आईडी मतलब ये फील्ड है कोई। वेयर क्लॉज़
  4191. 2:44:49में ये फील्ड लगानी है मुझे। ठीक है? और
  4192. 2:44:52ये फील्ड डेटाबेस में होगी और होनी है
  4193. 2:44:55क्योंकि हमने जॉइन रिलेशनशिप कर रखा है
  4194. 2:44:57एक्टिविटी के साथ। तो हमने बस इतना मेंशन
  4195. 2:44:59कर दिया फाइंड बाय यूजर आईडी और हमने लिखा
  4196. 2:45:02है एक्टिविटी रिपॉज़िटरी के अंदर। तो जीपीए
  4197. 2:45:05हाइबनेट को समझ जाता है कि आप रिट्रीव
  4198. 2:45:08करना चाहते हो एक्टिविटी को बाय यूजर आईडी
  4199. 2:45:12यानी कि वेयर क्लॉज़ में यूजर आईडी लगना
  4200. 2:45:14है। अब हबनेट क्या बोलेगा? हाइबनेट बोलेगा
  4201. 2:45:16अच्छा तो फाइंड बाय यूजर आईडी करना है तो
  4202. 2:45:18मुझे तो यूजर आईडी चाहिए तो वो पैरामीटर
  4203. 2:45:20लिस्ट की ओर जाएगा कि यूजर आईडी दे रहा है
  4204. 2:45:22क्या यूजर जी हां हम दे रहे हैं यूजर आईडी
  4205. 2:45:25हमने लिखा भी है यहां पर यूजर आईडी तो
  4206. 2:45:26यूजर आईडी एज एन इनपुट इसको मिलेगा ठीक है
  4207. 2:45:29और फिर यहां पर देखिएगा जेपीए हाइबरनेट
  4208. 2:45:31अच्छा यहां पर लिस्ट ऑफ एक्टिविटी रिटर्न
  4209. 2:45:34करनी है हमें तो लिस्ट फॉर्म में रिटर्न
  4210. 2:45:35करना है तो होगा क्या रन टाइम पर खुद ब
  4211. 2:45:38खुद जेपीए हाइबरनेट की मदद से ऑटोमेटिकली
  4212. 2:45:43इस मेथड की क्वेरी क्वरी जनरेट कर देगा
  4213. 2:45:46बिहाइंड द सीन्स। देखिए अब तक हम क्या
  4214. 2:45:48देखते आ रहे हैं? जो प्रीबिल्ट मेथड्स है
  4215. 2:45:50उसकी ऑटोमेटिक क्वेरी जनरेट होती है
  4216. 2:45:52बिहाइंड द सीन्स। करेक्ट? अगर आप
  4217. 2:45:54एक्टिविटी को सेव करते हो यहां पर। ठीक
  4218. 2:45:56है? यहां पर आ जाइए। यहां पर अगर आप
  4219. 2:45:58एक्टिविटी को सेव करते हो। कहां पर है?
  4220. 2:46:00एक्टिविटी को सेव करना। यहां पर एक्टिविटी
  4221. 2:46:02को सेव कर रहे हो आप। सेव मेथड की मदद से।
  4222. 2:46:04सेव मेथड हमने लिखा है। जी नहीं। हमें
  4223. 2:46:07रेडीमेड मिला है। और इस पर हो करेंगे तो
  4224. 2:46:09देखिए सेव्स अ गिवन एंटिटी। एनी गिवन
  4225. 2:46:13एंटिटी। लेकिन एक्टिविटी को सेव करना है।
  4226. 2:46:15यह उसे कैसे पता होगा? क्योंकि हमने
  4227. 2:46:17एक्टिविटी रिपॉज़िटरी पर कॉल कर रखा है और
  4228. 2:46:19एक्टिविटी रिपॉज़िटरी एक्टिविटी को मैप्ड
  4229. 2:46:22है। करेक्ट? यहां पर आप देख पा रहे हो
  4230. 2:46:24एक्टिविटी और प्राइमरी की की टाइप हमने
  4231. 2:46:26पास की हुई है। ठीक है? तो हमने ये पास
  4232. 2:46:29किया हुआ है तो उसको समझ जाता है। अच्छा
  4233. 2:46:30सेव मतलब ये एक्टिविटी को करना चाहता है।
  4234. 2:46:31और एक्टिविटी की ऑब्जेक्ट पास करते हो तो
  4235. 2:46:33वो एक्सेप्ट करके इंसर्ट क्वरी चला देता
  4236. 2:46:35है बिहाइंड द सिंस। हबनेट क्या करता है?
  4237. 2:46:37बिहाइंड द सींस इंसर्ट क्वरी चलाता है। और
  4238. 2:46:39अब हम क्या करना चाह रहे हैं? अब हम यहां
  4239. 2:46:42पर बोल रहे हैं फाइंड बाय यूजर आईडी। तो
  4240. 2:46:44वह यह कन्वेंशन देखेगा और फाइंड बाय यूजर
  4241. 2:46:47आईडी जैसे मैंने जो लॉजिक एक्सप्लेन किया
  4242. 2:46:49उसके हिसाब से खुद ब खुद इसकी सेलेक्ट
  4243. 2:46:51क्वेरी जनरेट कर देगा जैसे हमने यहां पर
  4244. 2:46:53लिखा और यह देखिए यह ऐसे ही सिंटेक्स में
  4245. 2:46:56लिखना है आपको यह कन्वेंशन है फाइंड बाय
  4246. 2:46:58का मतलब होता है सेलेक्ट ठीक है और बाय का
  4247. 2:47:01मतलब तो मैंने बता दिया आपको फाइंड मतलब
  4248. 2:47:03सेलेक्ट बाय का मतलब वेयर क्लॉज़ और यूजर
  4249. 2:47:05आईडी हो गया फील्ड ठीक है और फील्ड जो है
  4250. 2:47:09उसको आप एज अ पैरामीटर दे दो और रिटर्न
  4251. 2:47:11टाइप आपको क्या चाहिए वो बता दो बाकी काम
  4252. 2:47:13आपका हो जाएगा जाएगा। ठीक है? इसको मैं
  4253. 2:47:15चला कर भी आपको दिखाता हूं। ठीक है? यहां
  4254. 2:47:17पर आएंगे हम और यहां पर मैं क्या करूंगा?
  4255. 2:47:21ये होने के बाद हमें देखिए अब यहां पर है
  4256. 2:47:24ना
  4257. 2:47:25एक्टिविटी रिस्पांस को रिटर्न करना है।
  4258. 2:47:28ठीक है? एक्टिविटी रिस्पांस को अगर रिटर्न
  4259. 2:47:30करना है तो हमें क्या करना होगा? हर
  4260. 2:47:31एक्टिविटी की ऑब्जेक्ट को जो लिस्ट में है
  4261. 2:47:34यहां पर उसको ट्रांसफॉर्म करना होगा
  4262. 2:47:37एक्टिविटी रिस्पांस में और एक दूसरी लिस्ट
  4263. 2:47:39बनाकर रिटर्न करना होगा। ठीक है? तो पहली
  4264. 2:47:41स्टेप क्या है? हमें एक्टिविटी को
  4265. 2:47:44ट्रांसफॉर्म करना है एक्टिविटी रिस्पांस
  4266. 2:47:47में। एक्टिविटी रिस्पांस में। फिर उसको एक
  4267. 2:47:51लिस्ट में कनेक्ट कलेक्ट करना है कलेक्ट
  4268. 2:47:54इन लिस्ट एंड रिटर्न। ठीक है? तो यहां पर
  4269. 2:47:57हम इस्तेमाल करेंगे स्ट्रीम्स का। तो मैं
  4270. 2:47:59क्या करूंगा? यहां पर इसको हटा देता हूं।
  4271. 2:48:00यहां पर लिखता हूं रिटर्न। सबसे पहले तो
  4272. 2:48:02एक्टिविटी लिस्ट को स्ट्रीम में कन्वर्ट
  4273. 2:48:04करेंगे। स्ट्रीम। ठीक है? उसके बाद
  4274. 2:48:06नेक्स्ट लाइन पे आएंगे और हम मैप फंक्शन
  4275. 2:48:08का यूज़ करेंगे। मैप मेथड और यहां पर
  4276. 2:48:10कहेंगे
  4277. 2:48:12दिस
  4278. 2:48:14मैप रिस्पांस ठीक है मैप टू रिस्पांस तो
  4279. 2:48:17हर
  4280. 2:48:18यह लिस्ट में जो भी ऑब्जेक्ट है उस पे ये
  4281. 2:48:22मेथड अप्लाई हो जाएगा और ये मेथड हमने
  4282. 2:48:23लिखा हुआ है ऑलरेडी यहां पर मैप टू
  4283. 2:48:25रिस्पांस तो एक्टिविटी का ऑब्जेक्ट लेता
  4284. 2:48:27है ये और रिटर्न करता है एक्टिविटी
  4285. 2:48:30रिस्पांस का ऑब्जेक्ट तो ये हर लिस्ट में
  4286. 2:48:32हर ऑब्जेक्ट पर अप्लाई होगा और फिर हम
  4287. 2:48:33क्या कहेंगे डॉट कलेक्ट कलेक्टर्स टू
  4288. 2:48:38लिस्ट
  4289. 2:48:40कलेक्टर्स र्स टू लिस्ट इस तरीके से। ठीक
  4290. 2:48:45है?
  4291. 2:48:46इतना हो गया। तो देखिए ये हमें कुछ कोई
  4292. 2:48:48एरर नहीं आई यहां पर। ठीक है? कोई एरर आई
  4293. 2:48:50है। कोई नहीं आई है। इतना हो चुका है। अब
  4294. 2:48:53मैं क्या करूंगा? रन करने से पहले ना मैं
  4295. 2:48:55आपको यहां पर एक प्रॉपर्टीज फाइल में आ
  4296. 2:48:57जाऊंगा। और मैं ना एसक्यूएल क्वेरीज़ को
  4297. 2:49:00इनेबल कर देता हूं। तो मुझे ना एसक्यूएल
  4298. 2:49:01क्वरी मैं अह कंसोल पे प्रिंट करना चाहता
  4299. 2:49:05हूं ताकि आपको दिखाई दे कि क्या क्वेरीज़
  4300. 2:49:07जनरेट हो रही है हाइबनेट की मदद से। ठीक
  4301. 2:49:09है? ठीक है? तो यहां पर लिखूंगा स्प्रिंग
  4302. 2:49:10जीपीए डॉट शो एसक्यूएल = ट्रू और फिर
  4303. 2:49:15स्प्रिंग जीपीए अ डॉट प्रॉपर्टीज डॉट
  4304. 2:49:20हपरनेट डॉट फॉर्मेट अंडरs अ फॉर्मेट
  4305. 2:49:25अंडरस्कोर एसक्यूएल इज़ इक्वल टू ट्रू और
  4306. 2:49:28फिर हम लिख देंगे लॉगिन लेवल भी इनेबल कर
  4307. 2:49:30देंगे लॉगिन लेवल डॉट ऑर्ork डॉट हपरनेट
  4308. 2:49:35डॉट एसक्यूएल = दीपक ऐसे
  4309. 2:49:39और बस इतना इनफ है मेरे हिसाब से और कुछ
  4310. 2:49:42इशू तो होना नहीं चाहिए। इसको रन करके
  4311. 2:49:44देखते हैं। ठीक है? क्या होता है। ठीक है?
  4312. 2:49:46तो ये रन हो रहा है। कुछ दिक्कत तो वैसे
  4313. 2:49:50आनी नहीं चाहिए। ठीक है? दिक्कत तो वैसे
  4314. 2:49:52नहीं आएगी। रन हो रहा है। देखिए काफी सारी
  4315. 2:49:54लॉगिन इनेबल हो चुकी है। और इसको मैं
  4316. 2:49:56क्लियर कर देता हूं लॉग्स को। ठीक है?
  4317. 2:49:58यहां पर आ जाता हूं। सबसे पहले तो यहां पर
  4318. 2:50:03अ यूज़र्स की लिस्ट देख लेता हूं। यहां एक
  4319. 2:50:05काम कर सकते हैं हम लोग। एक्टिविटी जो है
  4320. 2:50:08कौन से यूजर के अगेंस्ट लॉक्ड है वो देख
  4321. 2:50:11लेते हैं। ठीक है? ये एक्टिविटी है। ठीक
  4322. 2:50:14है? तो यूजर आईडी कहां पर है? इसमें यूजर
  4323. 2:50:17आईडी ये रही। ठीक है? तो देखिए यूजर आईडी
  4324. 2:50:19सेव हो रहा है डेटाबेस में। इसको हमने
  4325. 2:50:20कॉपी किया। यूजर आईडी सही रहना जरूरी है।
  4326. 2:50:22यहां पर आ जाएंगे और यहां पर एक्स यूजर
  4327. 2:50:25आईडी की बजाय हम यूजर आईडी को पेस्ट कर
  4328. 2:50:27देंगे और इसको रिट्रीव करता हूं। अब तो
  4329. 2:50:30देखिए रिट्रीव की तो हमने हमें देखिए ये
  4330. 2:50:31एक्टिविटी आ गई। और यह एरे में आई है।
  4331. 2:50:34देखिए यहां पर एरे है। करेक्ट? और यहां पर
  4332. 2:50:37अगर आप आते हो तो देखिए यह क्वेरी जो है
  4333. 2:50:39यह ऑटोमेटिक जनरेट हुई है। हमने लिखी है
  4334. 2:50:41यह क्वेरी। जी नहीं। तो देखिए यहां पर
  4335. 2:50:43सेलेक्ट क्वरी। ठीक है? सेलेक्ट क्वरी।
  4336. 2:50:46फाइंड का मतलब क्या है? सेलेक्ट क्वरी।
  4337. 2:50:48कौन से टेबल पे लगेगी? सेलेक्ट क्वरी?
  4338. 2:50:50एक्टिविटी पे। एक्टिविटी पे क्यों लगेगी?
  4339. 2:50:52क्योंकि एक्टिविटी रिपॉज़िटरी में हम लिख
  4340. 2:50:54रहे हैं। करेक्ट? तो, यह हबनेट को पता है।
  4341. 2:50:56एक्टिविटी रिपॉज़िटरी में लिख रहे हो। मतलब
  4342. 2:50:57एक्टिविटी पे क्वरी चलानी है। और वेयर
  4343. 2:51:00यूजर आईडी इज़ इक्वल टू देखिए, यूजर आईडी
  4344. 2:51:02का फ़्टर करेक्ट? और बाय क्लॉज़ आ गया यहां
  4345. 2:51:05पर। देख देख सकते हो आप। ठीक है? हमने
  4346. 2:51:07लिखी है यह क्वेरी। जी नहीं, हमने नहीं
  4347. 2:51:09लिखी है। यह ऑटोमेटिकली हबनेट ने जनरेट
  4348. 2:51:11किया है। यहां पर आप देख पा रहे हो ओग डॉट
  4349. 2:51:13हबनेट डॉटsक्यूएल से प्रिंट हो रहा है। ये
  4350. 2:51:16हबनेट जनरेट कर रहा है और जेपीए एक हिसाब
  4351. 2:51:19से कन्वेंशन है जिसकी मदद से ये सारी
  4352. 2:51:22चीजें हो रही है। ठीक है? तो उम्मीद करता
  4353. 2:51:25हूं यह क्लियर हो रहा है कि क्या हो रहा
  4354. 2:51:27है, क्यों हो रहा है। अगर मैं सेव भी करूं
  4355. 2:51:29यहां पर तो अभी इसको क्लियर कर देता हूं
  4356. 2:51:31और यहां पर एक एक्टिविटी को ट्रैक करके
  4357. 2:51:33मैं आपको बताता हूं। एक्टिविटी को सेव
  4358. 2:51:34करता हूं। तो देखिए सेव किया मैंने
  4359. 2:51:35एक्टिविटी को और यहां पर आप देखोगे तो
  4360. 2:51:38देखिए सबसे पहले तो सेलेक्ट क्वरी चलिए
  4361. 2:51:40सेलेक्ट क्वरी किस लिए चलिए यहां पर आप
  4362. 2:51:42यूजर को रिट्रीव कर रहे हो और ये यूजर को
  4363. 2:51:44रिट्रीव आप कहां कर रहे हो? सर्विस में कर
  4364. 2:51:46रहे हो। तो अगर आप एक्टिविटी इंसर्ट करने
  4365. 2:51:47जाते हो ना तो पहले हम यूजर को रिट्रीव कर
  4366. 2:51:50रहे हैं। देखिए यहां पर तो वो सेलेक्ट
  4367. 2:51:51क्वरी भी आपको दिखाई दे रही है यहां पर।
  4368. 2:51:53करेक्ट? करेक्ट? ये पूरा दिखाई दे रहा है।
  4369. 2:51:56और फिर यहां पर इंसर्ट भी चल रहा है।
  4370. 2:51:57देखिए ये इंसर्ट। ठीक है? तो ये सब हमने
  4371. 2:52:01नहीं लिखा है। यह बाय डिफॉल्ट जो इनबिल्ट
  4372. 2:52:03मेथड्स थे उसकी मदद से यह जनरेट हो रहा है
  4373. 2:52:06और यह वर्क कर रहा है। लेकिन हमने एक
  4374. 2:52:09दूसरी चीज देखी आज जहां पर हम कस्टम
  4375. 2:52:12मेथड्स को किस तरीके से डिफाइन और
  4376. 2:52:14डिक्लेअर कर सकते हैं। ठीक है? तो उम्मीद
  4377. 2:52:17करता हूं यह हेल्पफुल रहा आप लोगों के
  4378. 2:52:18लिए। हमने काफी इंपॉर्टेंट चीजों को सीखा
  4379. 2:52:21यहां पर। दो कांसेप्ट सीखे नए। मैं कहूंगा
  4380. 2:52:23अगर आपको नहीं पता थे पहले से। तो दो नए
  4381. 2:52:26कांसेप्ट्स आपको टच करने मिले। जो पहला
  4382. 2:52:28कॉन्सप्ट था कि आप हेडर में किस तरीके से
  4383. 2:52:30कोई वैल्यू पास कर सकते हो। क्यों पास
  4384. 2:52:33करना है हेडर में? क्योंकि देखिए जनरली
  4385. 2:52:35क्वेरी पैराटर्स जो होते हैं यूआरएल में
  4386. 2:52:38वो होते हैं पेजिनेशन वगैरह के लिए।
  4387. 2:52:40पेजिनेशन, सर्च रिलेटेड चीजें आपको पास
  4388. 2:52:43करनी है और कुछ ऐसा यूजर आईडी वगैरह होती
  4389. 2:52:45है। वो जनरली अह क्वेरी पैराटर्स में पास
  4390. 2:52:48नहीं करते हैं। क्वेरी पैरामीटर्स को
  4391. 2:52:49पेजिनेशन और ये सारी चीजों के लिए छोड़ा
  4392. 2:52:51जाता है। तो अगर ऐसा सिनेरियो आपका है तो
  4393. 2:52:53आप रिक्वेस्ट हेडर का इस्तेमाल कर सकते हो
  4394. 2:52:55और वहां पर यूजर आईडी पास की है हमने और
  4395. 2:52:58यूजर आईडी आई है। यूजर आईडी को इस्तेमाल
  4396. 2:53:00करके हमने एक कस्टम मेथड भी इंप्लीमेंट
  4397. 2:53:03किया है। ठीक है? जो है फाइंड बाय यूजर
  4398. 2:53:06आईडी और फाइंड बाय यूजर आईडी की मदद से
  4399. 2:53:08हमें जो यूजर की एक्टिविटीज है उसको भी
  4400. 2:53:11रिट्रीव करने का मौका मिला है और हम उसे
  4401. 2:53:14डिस्प्ले भी कर पा रहे हैं। उम्मीद करता
  4402. 2:53:15हूं यह हेल्पफुल रहा।
  4403. 2:53:23ठीक है दोस्तों? तो आगे बढ़ते हैं और अब
  4404. 2:53:25बारी आ चुकी है कि हम रेकमेंडेशंस मॉड्यूल
  4405. 2:53:28जो है उस पर काम करना स्टार्ट करें। ठीक
  4406. 2:53:30है? तो देखिए रेकमेंडेशन मॉड्यूल्स में
  4407. 2:53:33हमें कुछ ईपीआई की जरूरत पड़ेगी। ठीक है?
  4408. 2:53:35तो वो ईपीआई क्या होने वाली है? कैसे होने
  4409. 2:53:38वाली है? ये सारी चीजें हम डिस्कस कर लेते
  4410. 2:53:39हैं। तो सबसे पहले तो एक पोस्ट मैपिंग
  4411. 2:53:41होगी जिसके जरिए। तो मैं कहूंगा ईपीआई सश
  4412. 2:53:44रेमेंडेशन सल जनरेट। ठीक है? तो ये एंड
  4413. 2:53:49पॉइंट क्या करने वाली है? ये एंड पॉइंट
  4414. 2:53:51जनरेट करने वाली है रेमेंडेशन हमारे लिए।
  4415. 2:53:54ठीक है? तो यहां पर मैं लिख भी देता हूं।
  4416. 2:53:56ठीक है? ऊपर लिखता हूं जनरेट रेकमेंडेशन।
  4417. 2:54:00इस तरीके से। ठीक है? तो, यह एंड पॉइंट है
  4418. 2:54:03जो जनरेट करेगी रेकमेंडेशन। ठीक है? और यह
  4419. 2:54:05पोस्ट एंड पॉइंट है। ठीक है? यहां पर
  4420. 2:54:07रिक्वेस्ट बॉडी में हम जो रेकमेंडेशन की
  4421. 2:54:10सारी की सारी डिटेल्स है उसको हम कैप्चर
  4422. 2:54:12कर लेंगे। ठीक है? ये हो गई एक एंड पॉइंट।
  4423. 2:54:15अब दूसरे एंड पॉइंट के बारे में बात करते
  4424. 2:54:16हैं जो कि है एक गेट रिक्वेस्ट। और जो
  4425. 2:54:20हमें तो जो सारी एंड पॉइंट में ये जो
  4426. 2:54:23स्टार्टिंग का पार्ट है वो वैसे ही रहने
  4427. 2:54:25वाला है। ठीक है? तो इसको पेस्ट कर देता
  4428. 2:54:27हूं और फिर यहां पर मैं कहूंगा स्लैश
  4429. 2:54:29यूजर। तो ये एंड पॉइंट क्या करेगी? हमें
  4430. 2:54:31एक पर्टिकुलर यूजर के अगेंस्ट जो
  4431. 2:54:34रेमेंडेशन सेव्ड है उसको रिट्रीव करने में
  4432. 2:54:36मदद करेगी। तो अब यूजर के अगेंस्ट
  4433. 2:54:39रेकमेंडेशन रिट्रीव करना है तो हमें स्लैश
  4434. 2:54:41यूजर लिखना जरूरी है और फिर यहां पर यूजर
  4435. 2:54:44आईडी भी पास करना जरूरी है। तो यहां पर
  4436. 2:54:46यूजर आईडी यह रेकमेंड यह एपीआई लेगी और यह
  4437. 2:54:51जो एंड पॉइंट है वह हमें हेल्प करेगी
  4438. 2:54:54रिट्रीव करने में।
  4439. 2:54:55यूजर रेमेंडेशन। ठीक है? गेट यूजर
  4440. 2:54:58रेमेंडेशन।
  4441. 2:55:00ठीक है? ऐसा कुछ। ठीक है? फिर तीसरी एपीआई
  4442. 2:55:04हम बनाएंगे। ठीक है? तीसरी एपीआई हम
  4443. 2:55:06बनाएंगे एक पर्टिकुलर एक्टिविटी के
  4444. 2:55:08अगेंस्ट। अगर कोई रेमेंडेशन को रिट्रीव
  4445. 2:55:10करना है तो उसके लिए तीसरी एंड पॉइंट
  4446. 2:55:11होगी। और मैं क्या करूंगा? ये जो सिंटेक्स
  4447. 2:55:13है उसको ऐसे ही पिछली एपीआई है उसको ऐसे
  4448. 2:55:16ही कॉपी कर लूंगा। ठीक है? और यहां पर
  4449. 2:55:19यूजर आईडी के अगेन यूजर आईडी की जगह हम
  4450. 2:55:22लिखेंगे एक्टिविटी। और यहां पर यूजर आईडी
  4451. 2:55:25के अगेंस्ट एक्टिविटी आईडी। ठीक है? और
  4452. 2:55:27यहां पर गेट एक्टिविटी
  4453. 2:55:30रेकमेंडेशन। ठीक है? तो फिलहाल ये तीन एंड
  4454. 2:55:33पॉइंट ही है। एक पोस्ट है, दो गेट है। ठीक
  4455. 2:55:36है? और पोस्ट एंड पॉइंट से हम जो
  4456. 2:55:39रेकमेंडेशन है उसको जनरेट कर सकते हैं।
  4457. 2:55:41जनरेट का मतलब है सेव करना। हम सेव कर
  4458. 2:55:43देंगे। ठीक है? और दूसरा दूसरी एंड पॉइंट
  4459. 2:55:46जो है उससे हम यूजर रेकमेंडेशन जनरेट कर
  4460. 2:55:48सॉरी जनरेट नहीं कर सकते। रिट्रीव करेंगे।
  4461. 2:55:51कि एक यूजर के अगेंस्ट जो भी रेकमेंडेशन
  4462. 2:55:53जनरेटेड है ऑलरेडी उसको हम रिट्रीव
  4463. 2:55:55करेंगे। और तीसरी जो एंड पॉइंट है उसके
  4464. 2:55:57अगेंस्ट हम एक्टिविटी के अगेंस्ट यानी कि
  4465. 2:56:00एक एक्टिविटी के अगेंस्ट जो भी रेकमेंडेशन
  4466. 2:56:02है अगर वो हमें देखनी है तो वो हम रिट्रीव
  4467. 2:56:05कर सकते हैं। ठीक है? तो इतना होने वाला
  4468. 2:56:07है ये मॉड्यूल और इस मॉड्यूल पे अब हमें
  4469. 2:56:10काम करना है। तो मैं क्या करता हूं? सबसे
  4470. 2:56:12पहले मैं आ जाता हूं यहां पर इंटेलिजें
  4471. 2:56:14पर। ठीक है? ये है हमारा इंटेलिजें और
  4472. 2:56:17इंटेलिजें में मैं सब कुछ बंद कर देता हूं
  4473. 2:56:19यहां पर। ठीक है? कुछ भी ओपन नहीं चाहिए
  4474. 2:56:21और यहां पर सब कुछ कोलैप्स भी कर दूंगा और
  4475. 2:56:23सबसे पहले आ जाऊंगा मैं कंट्रोलर पर।
  4476. 2:56:25कंट्रोलर में मैं सबसे पहला कंट्रोलर कैसे
  4477. 2:56:27बनाऊंगा? मैं बनाऊंगा एक रेकमेंडेशंस
  4478. 2:56:31कंट्रोलर। ठीक है? अ रेमेंडेशंस नहीं
  4479. 2:56:34कहूंगा रेकमेंडेशन कंट्रोलर। ठीक है? और
  4480. 2:56:38यहां पर रेकमेंडेशन कंट्रोलर लिख दिया। और
  4481. 2:56:41फिर यहां पर सबसे पहले रेस्ट कंट्रोलर ऐड
  4482. 2:56:44कर दूंगा। ठीक है?
  4483. 2:56:45रेस्ट कंट्रोलर का मतलब यह है कि यह
  4484. 2:56:48एक रेस्ट एपीआई के लिए कंट्रोलर डिफाइंड
  4485. 2:56:51है। ठीक है? और दूसरी चीज मैं यहां पर
  4486. 2:56:52करूंगा। तो यहां पर आप देख सकते हो सारी
  4487. 2:56:55एंड पॉइंट स्लैश एपीआई रेकमेंडेशन स्लैश
  4488. 2:56:57एपीआई रेकमेंडेशन स्लैश एपीआई रेकमेंडेशन
  4489. 2:56:59से स्टार्ट हो रही है। तो ये पार्ट कॉमन
  4490. 2:57:01है। ठीक है? तो ये पार्ट को ले लेना है
  4491. 2:57:03हमें और यहां पर आ जाना है। ठीक है? और
  4492. 2:57:06यहां पर रिक्वेस्ट मैपिंग लिखूंगा मैं और
  4493. 2:57:08ये पूरा कंट्रोलर को मैं इस एंड पॉइंट से
  4494. 2:57:10मैप कर दूंगा। ठीक है? देखिए यहां पर कॉपी
  4495. 2:57:12पेस्ट करने में थोड़े अननेसेसरी न्यू लाइन
  4496. 2:57:14कररेक्टर्स भी आ रहे हैं क्योंकि मैं वहां
  4497. 2:57:16दूसरे एडिटर से कॉपी पेस्ट कर रहा हूं।
  4498. 2:57:18लेकिन आपको वो न्यू लाइन कररेक्टर्स सब
  4499. 2:57:19कुछ हटाना है और फिर इसको मेंशन करना है
  4500. 2:57:22इस तरीके से। तो ये हो चुका है। ठीक है?
  4501. 2:57:24अब हम क्या करेंगे? हम सबसे पहले पोस्ट
  4502. 2:57:27मैपिंग बनाएंगे यहां पर। और पोस्ट मैपिंग
  4503. 2:57:28में अ जो स्टार्टिंग का पार्ट है एंड
  4504. 2:57:30पॉइंट में वो तो हमने मेंशन किया हुआ है।
  4505. 2:57:32लेकिन जो नेक्स्ट पार्ट है वो है जनरेट
  4506. 2:57:33का। वो हम मेंशन कर देंगे। ठीक है? और
  4507. 2:57:36यहां पर मैं लिख दूंगा पब्लिक रिस्पांस
  4508. 2:57:39एंटिटी और यहां पर लिख दूंगा रेमेंडेशन।
  4509. 2:57:42तो यह रेकमेंडेशन रिटर्न होगा यहां पर और
  4510. 2:57:44यहां पर कहूंगा जनरेट
  4511. 2:57:46रेमेंडेशन
  4512. 2:57:50रेमेंडेशन
  4513. 2:57:51और फिर यहां पर हम रिटर्न करेंगे एक
  4514. 2:57:56रेकमेंडेशन। ठीक है? तो अब रिटर्न तो करना
  4515. 2:57:59है। ठीक है? लेकिन रिटर्न करने के लिए
  4516. 2:58:01हमें रेमेंडेशन बनाना भी पड़ेगा। ठीक है?
  4517. 2:58:04तो रेकमेंडेशन का ऑब्जेक्ट बना लेते हैं।
  4518. 2:58:06मैं डायरेक्टली यहां पर मॉडल को इस्तेमाल
  4519. 2:58:07कर रहा हूं। आप चाहो तो एक सेपरेट डीटीओ
  4520. 2:58:09भी बना सकते हो। ठीक है? और यहां पर
  4521. 2:58:11रेमेंडेशन को जनरेट करेंगे और फिर
  4522. 2:58:13रेमेंडेशन सर्विस। अब ये रेकमेंडेशन
  4523. 2:58:16सर्विस एग्ज़िस्ट नहीं करती है। करती है
  4524. 2:58:18एक्सिस्ट? नहीं करती है। तो जनरेट
  4525. 2:58:20रेमेंडेशन। तो ये एग्ज़िस्ट नहीं करती है।
  4526. 2:58:22लेकिन ठीक है। हमें थोड़े रेड मार्क्स
  4527. 2:58:23देखने मिलेंगे। ठीक है? अह रिक्वेस्ट यहां
  4528. 2:58:26पर रिक्वेस्ट को एक्सेप्ट करेंगे।
  4529. 2:58:28रिक्वेस्ट क्या है? उस पे भी मैं बात करता
  4530. 2:58:29हूं। ठीक है? और रिटर्न करेंगे हम
  4531. 2:58:31रिस्पांस एंटिटी डॉट और यहां पर लिख दूंगा
  4532. 2:58:35रेमेंडेशन। ठीक है? तो इतनी इतना इतनी
  4533. 2:58:37चीजें हमने लिख दी है। ठीक है? ये हो गया।
  4534. 2:58:41अब यहां पर आ जाते हैं। ठीक है? अब यहां
  4535. 2:58:44पे हमें अ कुछ इनपुट चाहिए होगा। और वो
  4536. 2:58:47इनपुट क्या होगा? उसके लिए हम एक अलग
  4537. 2:58:49क्लास डिफाइन करेंगे जिसे हम कहेंगे
  4538. 2:58:51रेकमेंडेशन रिक्वेस्ट। ठीक है? तो यहां पर
  4539. 2:58:54मैं लिख दूंगा रेमेंडेशन
  4540. 2:58:57रिक्वेस्ट। ठीक है? और फिर यहां पर
  4541. 2:58:59रिक्वेस्ट लिख दूंगा। ठीक है? और यह हमें
  4542. 2:59:01कैसे आएगा? अच्छा, यहां पर सेमी कॉललन
  4543. 2:59:03नहीं होगा। इसके लिए पूरा रेड हो गया।
  4544. 2:59:04यहां पर यह आएगा रिक्वेस्ट बॉडी में। ठीक
  4545. 2:59:07है? यहां पर रिक्वेस्ट बॉडी पे लिख दूंगा।
  4546. 2:59:09ठीक है? काफी सारे रेडम मार्क्स हैं।
  4547. 2:59:11एक-एक करके इन रेड मार्क्स को रिज़ॉल्व
  4548. 2:59:13करते हैं। तो, सबसे पहले तो रेकमेंडेशन
  4549. 2:59:15रिक्वेस्ट। तो, इसको हम क्रिएट कर देंगे।
  4550. 2:59:18अच्छा, इसको ओवर करते हैं। और यह यहां पर
  4551. 2:59:21बोल रहा है, क्रिएट अ टाइप पैरामीटर। टाइप
  4552. 2:59:23पैरामीटर नहीं करना है। यहां पर हमें अ
  4553. 2:59:26क्रिएट करना है। अच्छा सॉरी ये हट गया।
  4554. 2:59:28हमें क्रिएट करना है मोर एक्शंस। हमें
  4555. 2:59:31क्रिएट करना है क्रिएट अ क्लास। ठीक है?
  4556. 2:59:34और ये क्लास होगी डीटीओ पैकेज में। ठीक
  4557. 2:59:37है? डीटीओ। ओके बोलूंगा मैं। ठीक है? तो
  4558. 2:59:40रेकमेंडेशन रिक्वेस्ट का अब क्या
  4559. 2:59:43स्ट्रक्चर है? उसे हम डिफाइन करेंगे। ठीक
  4560. 2:59:44है? तो यहां पर मैं सबसे पहले तो डेटा ऐड
  4561. 2:59:47कर दूंगा। उसके बाद में नो आस्क्
  4562. 2:59:49कंस्ट्रक्टर और फिर उसके बाद में ऑल आस्क्
  4563. 2:59:52कंस्ट्रक्टर इस तरीके से। ठीक है? और फिर
  4564. 2:59:55हमें स्ट्रिंग यूजर आईडी लिखना है यहां
  4565. 2:59:59पर। ठीक है? तो सबसे पहले तो यूजर आईडी हम
  4566. 3:00:01एक्सेप्ट करेंगे यहां पर रेकमेंडेशन
  4567. 3:00:02रिक्वेस्ट में। फिर हम अह ऐड कर सकते हैं
  4568. 3:00:05प्राइवेट स्ट्रिंग। और हमें एक्टिविटी
  4569. 3:00:07आईडी लिखनी होगी। यूजर आईडी इसीलिए कि किस
  4570. 3:00:11यूजर के अगेंस्ट का रेमेंडेशन है और
  4571. 3:00:13एक्टिविटी आईडी इसीलिए कि किस एक्टिविटी
  4572. 3:00:15के अगेंस्ट रेमेंडेशन स्टोर हो रहा है।
  4573. 3:00:17ठीक है? ये दोनों चीजें आ गई। उसके बाद
  4574. 3:00:20में अगर आप रेकमेंडेशन को देखते हो एक
  4575. 3:00:23रेमेंडेशन के स्ट्रक्चर को। ठीक है? ये है
  4576. 3:00:27रेकमेंडेशन का स्ट्रक्चर। तो यहां पर
  4577. 3:00:28देखिए आईडी वगैरह तो सब ठीक है। यूजर के
  4578. 3:00:30लिए हमने यूजर आईडी ऐड कर दी है।
  4579. 3:00:31एक्टिविटी के लिए एक्टिविटी आईडी ऐड कर दी
  4580. 3:00:33है। हमें यहां पर यह सारी चीजें चाहिए
  4581. 3:00:36यहां पर। ठीक है? तो यह यहां पर टाइप
  4582. 3:00:39रेकमेंडेशन
  4583. 3:00:41और फिर इंप्रूवमेंट्स सजेशंस ठीक है और
  4584. 3:00:45सेफ्टी टिप्स। तो मैं सिर्फ ये तीन चीजों
  4585. 3:00:47को ही लूंगा। ठीक है? इन तीनों को यहां पर
  4586. 3:00:51इंप्रूवमेंट सजेशंस और सेफ्टी टिप्स। अब
  4587. 3:00:53बाकी की चीजों को भी ले सकते हो। ठीक है?
  4588. 3:00:54लेकिन मैं अभी फिलहाल के लिए सिंपल रख रहा
  4589. 3:00:56हूं चीजें। ठीक है? अ ये मैंने कर दिया
  4590. 3:00:59है। ये मैंने कर दिया है। और यहां पर इतना
  4591. 3:01:02मैंने कर दिया है। ठीक है? और यहां से
  4592. 3:01:06मुझको अनयूज्ड इंपोर्ट्स जो है उसको हटाना
  4593. 3:01:09है इस तरीके से। ठीक है? तो देखिए यह हो
  4594. 3:01:11गया मेरा रेकमेंडेशन रिक्वेस्ट। ठीक है?
  4595. 3:01:14रेमेंडेशन रिक्वेस्ट तैयार है। अब मुझे
  4596. 3:01:16सर्विस भी बनानी है। तो मैं क्या करूंगा?
  4597. 3:01:18यहां पर राइट क्लिक करूंगा और यहां पर
  4598. 3:01:20रेमेंडेशन
  4599. 3:01:23सर्विस ऐसे बनाऊंगा। ठीक है? और इसको मैं
  4600. 3:01:27मार्क कर दूंगा @ सर्विस ऐसे। ठीक है? और
  4601. 3:01:32यहां पर अगर मैं आता हूं तो वह देखिए एक
  4602. 3:01:33स्प्रिंग मैनेज कंपोनेंट है। ठीक है?
  4603. 3:01:35रेमेंडेशन सर्विस। तो यहां पर मैं लिख
  4604. 3:01:38दूंगा प्राइवेट फाइनल रेकमेंडेशन
  4605. 3:01:42सर्विस और फिर रेकमेंडेशन सर्विस। अब यहां
  4606. 3:01:45पर एरर आएगी कि ये इनिशियलाइज़ नहीं है।
  4607. 3:01:47ठीक है? यहां पर एक कंस्ट्रक्टर ऐड करने
  4608. 3:01:49बोलेगा। लेकिन मैं कंस्ट्रक्टर ऐड नहीं
  4609. 3:01:50करूंगा। मैं यहां पर लिख दूंगा रिक्वायर्ड
  4610. 3:01:52आस्क् कंस्ट्रक्टर। तो ये ऑटोमेटिकली लॉबक
  4611. 3:01:55जनरेट कर देगा इसके लिए कंस्ट्रक्टर और
  4612. 3:01:57हमें कोई टेंशन लेने की जरूरत नहीं है
  4613. 3:01:59वैसे। ठीक है? तो इतना हो गया। अब ये सारी
  4614. 3:02:02चीजें तो हो चुकी है। ठीक है? तो अब हमें
  4615. 3:02:06इस मेथड के ओर ध्यान देना होगा। तो देखिए
  4616. 3:02:09यहां पर एक मेथड है जनरेट रेकमेंडेशन जहां
  4617. 3:02:11पर एक रेड मार्क आ रहा है। तो ये सर्विस
  4618. 3:02:13तो हमने बना दिया है लेकिन इसमें ये जनरेट
  4619. 3:02:15रेकमेंडेशन नाम का मेथड नहीं है। तो मैं
  4620. 3:02:17ये क्रिएट करवा दूंगा यहां पर। ठीक है? ये
  4621. 3:02:18क्रिएट हो गया। यहां पर एरर आ रही है उसको
  4622. 3:02:20डिफाइन करना है। लेकिन फिलहाल यहां पर आप
  4623. 3:02:22देखोगे तो ये जो स्ट्रक्चर है हमारी जो अ
  4624. 3:02:28एंड पॉइंट का स्ट्रक्चर है कंट्रोलर में
  4625. 3:02:30वो डिफाइंड है। ठीक है? इसका मतलब अ ठीक
  4626. 3:02:33है इतना। ठीक है? अब हमें सर्विस लेयर पे
  4627. 3:02:36जाना है और इस एपीआई को इस एपीआई का जो
  4628. 3:02:39बिज़नेस लॉजिक है उसको हमें डिफाइन करना है
  4629. 3:02:41और मेक श्योर करना है कि सारी चीजें सही
  4630. 3:02:45तरीके से सेफ हो रिकमेंडेशन टेबल में
  4631. 3:02:47रिकमेंडेशन मॉड्यूल की मदद से। तो मैं
  4632. 3:02:49यहां पर जनरेट रेकमेंडेशन में आ जाता हूं।
  4633. 3:02:51ठीक है? यहां पर अब देखिए यहां पर कुछ
  4634. 3:02:53लिखा हुआ तो नहीं है वैसे। तो यहां पर
  4635. 3:02:55हमें क्या करना है? रेमेंडेशन को सेव करना
  4636. 3:02:58है डेटाबेस में। तो उसे हमारे हमें अ उसके
  4637. 3:03:01लिए एक रेकमेंडेशन रिपॉज़िटरी भी लगेगी।
  4638. 3:03:05ठीक है? रिपॉज़िटरी अभी फिलहाल एक्सिस्ट
  4639. 3:03:06नहीं करती है। लेकिन मैं उसे अह बना दूंगा
  4640. 3:03:10अब। ठीक है? लेकिन अभी फिलहाल हम क्या
  4641. 3:03:11करेंगे?
  4642. 3:03:12यहां पर या रेकमेंडेशन रिपॉज़िटरी बना ही
  4643. 3:03:15देते हैं। एक काम करते हैं। बाद में बनाने
  4644. 3:03:16से बेटर है अभी बना लेते हैं। तो सबसे
  4645. 3:03:18पहले जावा क्लास इंटरफेस सेलेक्ट करूंगा
  4646. 3:03:20और फिर रेकमेंडेशन रिपोज़िटरी इस तरीके से
  4647. 3:03:24बना दूंगा मैं इसको और यहां पर एक्सटेंड
  4648. 3:03:26कर दूंगा इसको जेपीए रिपॉज़िटरी।
  4649. 3:03:31ठीक है? ऐसे और यहां पर रेकमेंडेशन लिख
  4650. 3:03:34दूंगा और फिर यहां पर स्ट्रिंग लिख दूंगा।
  4651. 3:03:36ठीक है? ऐसे। तो इतना होने के बाद अब मुझे
  4652. 3:03:39क्या करना चाहिए? यहां पर आ जाना चाहिए
  4653. 3:03:41ऊपर और यहां पर मुझे डिफाइन करना चाहिए
  4654. 3:03:44रिपोज़िटरी।
  4655. 3:03:45ठीक है? तो ताकि यह बन जाए स्प्रिंग
  4656. 3:03:48मैनेज्ड कंपोनेंट। ठीक है? तो इतना हो
  4657. 3:03:50चुका है और यहां पर अब सर्विस में आएंगे
  4658. 3:03:54हम। ठीक है? सर्विस में थे हम। अब सर्विस
  4659. 3:03:56में देखिए सबसे पहले हम क्या हमें क्या
  4660. 3:03:58करना चाहिए? देखिए रेकमेंडेशन रिक्वेस्ट
  4661. 3:03:59को एक बार देखते हैं। ठीक है? हम एक्सेप्ट
  4662. 3:04:02कर रहे हैं यूजर आईडी। हम एक्सेप्ट कर रहे
  4663. 3:04:05हैं एक्टिविटी आईडी। ठीक है? यूजर आईडी
  4664. 3:04:07एक्टिविटी आईडी दोनों एक्सेप्ट कर रहे
  4665. 3:04:09हैं। यूजर आईडी यह यूजर टेबल के लिए
  4666. 3:04:12रेफरेंस है। करेक्ट? तो, हमें क्या करना
  4667. 3:04:15चाहिए? देखिए, सेव करते वक्त अगर आप
  4668. 3:04:16रेकमेंडेशन को डेटाबेस में सेव करते हो,
  4669. 3:04:19तो यहां पर आपको यूजर का कंप्लीट ऑब्जेक्ट
  4670. 3:04:22चाहिए और एक्टिविटी का भी कंप्लीट
  4671. 3:04:24ऑब्जेक्ट चाहिए। तो इसका मतलब आपको यूजर
  4672. 3:04:27और एक्टिविटी टेबल में क्वेरी कर कर पूरा
  4673. 3:04:30ऑब्जेक्ट रिट्रीव करना होगा यूजिंग द
  4674. 3:04:32आईडी। आईडी का इस्तेमाल करके जो आईडी आपको
  4675. 3:04:35रिक्वेस्ट में मिल रही है। करेक्ट? यहां
  4676. 3:04:36पर रिक्वेस्ट में मिल रही है। तो इन दोनों
  4677. 3:04:38आईडी का इस्तेमाल करके आपको पूरा का पूरा
  4678. 3:04:40ऑब्जेक्ट रिट्रीव करना होगा यूजर का और
  4679. 3:04:42एक्टिविटी का और इंप्रूवमेंट्स, सजेशंस और
  4680. 3:04:45सेफ्टी ये सारी आपको रिक्वेस्ट में आएगी।
  4681. 3:04:47ठीक है? तो वो तो आपको करना ही है। तो
  4682. 3:04:49यहां पर मैं आ जाता हूं सर्विस में और
  4683. 3:04:53यहां पर मैं क्या करूंगा? सबसे पहले यूजर
  4684. 3:04:56पर काम करूंगा। तो यूजर का ऑब्जेक्ट बना
  4685. 3:04:58लूंगा यहां पर। यूजर यूजर इज़ इक्वल टू
  4686. 3:05:01यूजर रिपॉज़िटरी। ठीक है? यूजर रिपॉज़िटरी
  4687. 3:05:03का मुझे इंस्टेंस लगेगा यहां पर। तो मैं
  4688. 3:05:05क्या करूंगा? प्राइवेट फाइनल यूजर
  4689. 3:05:08रेपोजिटरी
  4690. 3:05:09और फिर यूजर रिपॉजिटरी मेंशन करूंगा और
  4691. 3:05:12फिर प्राइवेट फाइनल एक्टिविटी
  4692. 3:05:16रिपॉजिटरी
  4693. 3:05:18ठीक है और एक्टिविटी रिपॉज़िटरी ऐसे मेंशन
  4694. 3:05:21करूंगा और फिर यहां पे रिक्वायर्ड आस्क
  4695. 3:05:24कंस्ट्रक्टर लिख दूंगा क्योंकि मुझे एरर आ
  4696. 3:05:26रहा था और इसको इनिशियलाइज़ करने के लिए
  4697. 3:05:28स्प्रिंग को एक कंस्ट्रक्टर लगेगा। तो
  4698. 3:05:30मैंने कंस्ट्रक्टर लॉबक की मदद से जनरेट
  4699. 3:05:32कर दिया है। ठीक है? तो ये एरर तो चली गई।
  4700. 3:05:34अब यहां पर आ जाते हैं यूजर। ठीक है? यहां
  4701. 3:05:37पर मैं कहूंगा यूजर डॉट अह अच्छा यूजर
  4702. 3:05:41नहीं होगा। यह यूजर रिपॉज़िटरी होगा। यूजर
  4703. 3:05:43रिपॉज़िटरी डॉट फाइंड बाय आईडी करना है
  4704. 3:05:46हमें। ठीक है? और फिर रिक्वेस्ट में से
  4705. 3:05:48गेट यूजर आईडी ये पास करना है ऐसे। ठीक
  4706. 3:05:51है? इतना हो जाएगा। अब इसमें प्रॉब्लम यह
  4707. 3:05:53है कि यह रिटर्न करता है ऑप्शनल। फाइंड
  4708. 3:05:55बाय आईडी रिटर्न करेगा ऑप्शनल। देखिए आप
  4709. 3:05:58यहां पर तो मुझे क्या करना है? यहां पर
  4710. 3:05:59नेक्स्ट लाइन पर जाना है और फिर यहां पर
  4711. 3:06:01करना है और एल्स थ्रो। और फिर यहां पर
  4712. 3:06:06करना है न्यू रन टाइम एक्सेप्शन और फिर
  4713. 3:06:09यहां पर लिखना है यूजर नॉट फाउंड इसे ठीक
  4714. 3:06:13है और फिर यहां पर रिक्वेस्ट डॉट गेट
  4715. 3:06:19अ रिक्वेस्ट डॉट गेट यूजर आईडी लिखना है
  4716. 3:06:21यहां पर ठीक है ऐसे तो इतना हो चुका है तो
  4717. 3:06:25हमें यूजर का जो ऑब्जेक्ट है वो तो
  4718. 3:06:28रिट्रीव हो गया अब सेम चीज़ हमें करनी है
  4719. 3:06:30एक्टिविटी के लिए तो एक्टिविटी के लिए मैं
  4720. 3:06:31सेम कॉपी पेस्ट कर दूंगा और यहां यहां पर
  4721. 3:06:33यूजर की बजाय एक्टिविटी लिखूंगा। सॉरी
  4722. 3:06:36एक्टिविटी ऐसे और यहां पर यूजर की बजाय
  4723. 3:06:40एक्टिविटी होगा यह। और यूजर रिपॉज़िटरी के
  4724. 3:06:42बजाय एक्टिविटी रिपॉज़िटरी होगा। फाइंड बाय
  4725. 3:06:45आईडी रिक्वेस्ट डॉट गेट एक्टिविटी बाय
  4726. 3:06:48आईडी सॉरी गेट एक्टिविटी आईडी और यहां पर
  4727. 3:06:50और एल्स थ्रो रन टाइम एक्सेप्शन एक्टिविटी
  4728. 3:06:54नॉट फाउंड और यहां पर रिक्वेस्ट डॉट गेट
  4729. 3:06:58यूजर आईडी की बजाय गेट एक्टिविटी आईडी।
  4730. 3:07:00ऐसे। ठीक है? तो अब हमारे पास दोनों
  4731. 3:07:03ऑब्जेक्ट है यूजर की और एक्टिविटी की। ये
  4732. 3:07:05दोनों ऑब्जेक्ट हैं। ठीक है? अब मुझे क्या
  4733. 3:07:07करना है? रेकमेंडेशन की जो ऑब्जेक्ट है
  4734. 3:07:10उसको कंस्ट्रक्ट करना है। तो देखिए अब
  4735. 3:07:12कंस्ट्रक्ट करने के लिए मैं कंस्ट्रक्टर
  4736. 3:07:15का इस्तेमाल कर सकता हूं। यहां पर
  4737. 3:07:16कंस्ट्रक्टर ऑलरेडी लगे हुए हैं। या तो
  4738. 3:07:17फिर मैं बिल्डर पैटर्न का इस्तेमाल कर
  4739. 3:07:19सकता हूं। तो मैं बिल्डर का इस्तेमाल
  4740. 3:07:20करूंगा। मैं यहां पर लिख दूंगा बिल्डर।
  4741. 3:07:22ठीक है? बिल्डर बेटर है और मैं बता चुका
  4742. 3:07:25हूं क्यों बेटर है, क्या बेटर है। ठीक है?
  4743. 3:07:28तो यहां पर रेकमेंडेशन रेकमेंडेशन इज़
  4744. 3:07:31इक्वल टू रेकमेंडेशन डॉट बिल्डर डॉट
  4745. 3:07:35बिल्ड।
  4746. 3:07:37ठीक है? और यहां पर मैं नेक्स्ट लाइन पर आ
  4747. 3:07:39जाऊंगा और यहां पर कहूंगा डॉट यूजर और
  4748. 3:07:42यहां पर पास कर दूंगा यूजर इस तरीके से।
  4749. 3:07:45ठीक है? और फिर मैं ऐड करूंगा एक्टिविटी।
  4750. 3:07:49और एक्टिविटी में पास कर दूंगा एक्टिविटी।
  4751. 3:07:52और फिर लिख दूंगा यहां पर इंप्रूवमेंट्स।
  4752. 3:07:56और फिर ऐड कर दूंगा रिक्वेस्ट डॉट गेट
  4753. 3:07:59इंप्रूवमेंट्स
  4754. 3:08:00और फिर ऐड कर दूंगा यहां पर सजेशंस और फिर
  4755. 3:08:03ऐड कर दूंगा रिक्वेस्ट डॉट गेट सजेशंस
  4756. 3:08:07ठीक है और फिर यहां पर और चीजें भी है
  4757. 3:08:11रेमेंडेशन नहीं सेफ्टी है सेफ्टी तो फिर
  4758. 3:08:14रिक्वेस्ट डॉट गेट सेफ्टी ठीक है तो ये
  4759. 3:08:16सारी चीजें रिक्वेस्ट में से आ रही है। सो
  4760. 3:08:18जो भी रिक्वेस्ट में से आ रहा है उसको मैं
  4761. 3:08:19रिट्रीव करके यहां पे सेट कर रहा हूं। बस
  4762. 3:08:21और कुछ नहीं कर रहा हूं। और यह ऑब्जेक्ट
  4763. 3:08:23बन जाएगा रेकमेंडेशन का। अब मुझे क्या
  4764. 3:08:25करना है? यहां पर मुझे रेकमेंडेशन का
  4765. 3:08:28सेव्ड ऑब्जेक्ट लेना है। तो सेव्ड
  4766. 3:08:30रेकमेंडेशन इज़ इक्वल टू रेकमेंडेशन
  4767. 3:08:33रिपॉज़िटरी। अच्छा रेमेंडेशन रिपॉज़िटरी ही
  4768. 3:08:36क्रिएट नहीं की है हमने। तो यहां पर इसको
  4769. 3:08:37डुप्लीकेट कर लेता हूं। और यहां पर
  4770. 3:08:39रेकमेंडेशन रिपॉज़िटरी। ठीक है? और यहां पर
  4771. 3:08:42रेमेंडेशन रिपॉज़िटरी ऐसे। ठीक है? और अब
  4772. 3:08:46यहां पर रेकमेंडेशन रिपॉज़िटरी
  4773. 3:08:48डॉट सेव और फिर यहां पर रिकमेंडेशन ऐसे
  4774. 3:08:53ठीक है ये हमने लिख दिया और अब हमें
  4775. 3:08:57रिटर्न करना है सेव्ड रिकमेंडेशन ऐसे ठीक
  4776. 3:09:00है तो इतना हो गया है यहां पर ठीक है
  4777. 3:09:05और यहां पर ये रिडेंडेंट है तो इसको
  4778. 3:09:07इनलाइन भी कर सकते हो इस तरीके से ठीक है
  4779. 3:09:09ये इनलाइन हो चुका है ठीक है इसमें कोई
  4780. 3:09:12दिक्कत नहीं है अ इतना हो चुका है अब हमें
  4781. 3:09:15हमें क्या करना है? इसको रन करके एक बार
  4782. 3:09:17देख लेते हैं। ठीक है? इसको रन कर लेता
  4783. 3:09:18हूं। देखते हैं रन करने पर क्या आउटपुट
  4784. 3:09:22मिलता है हमें। ठीक है? तो ये रन तो हो
  4785. 3:09:24रहा है। अब रन तो सक्सेसफुली हो चुका है।
  4786. 3:09:26वैसे कोई एरर तो आई नहीं। तो अब हम यहां
  4787. 3:09:28पर आ जाएंगे। ठीक है? और यहां पर मैं क्या
  4788. 3:09:31करूंगा? ये जो अ एंड पॉइंट है कोई भी एंड
  4789. 3:09:35पॉइंट का आप एक डुप्लीकेट बना लीजिए। ठीक
  4790. 3:09:37है? इस एंड पॉइंट का डुप्लीकेट मैं बना
  4791. 3:09:38लेता हूं। और यहां पर लिखूंगा सेव या
  4792. 3:09:41जनरेट रिकमेंडेशन।
  4793. 3:09:46रेमेंडेशन। ठीक है? जनरेट रेकमेंडेशन लिख
  4794. 3:09:48दिया है मैंने। और यहां पर जो एंड पॉइंट
  4795. 3:09:50था वह था एपीआई रेकमेंडेशन सैश जनरेट ऐसे।
  4796. 3:09:56ठीक है? पोस्ट रिक्वेस्ट ही है। इस बात का
  4797. 3:09:58आपको ध्यान रखना है। हेडर्स पे देखना है।
  4798. 3:10:00हेडर्स में कुछ नहीं है। ठीक है? बॉडी पर
  4799. 3:10:02आ जाते हैं। ठीक है? क्योंकि सारे का सारा
  4800. 3:10:03डेटा जो है यहां पर बॉडी में ही एक्सेप्ट
  4801. 3:10:05हो रहा है। ठीक है? तो देखिए यहां पर टाइप
  4802. 3:10:08की जरूरत है नहीं। टाइप अगर आपको चाहिए तो
  4803. 3:10:10आप लिख सकते हो। लेकिन मैं टाइप लिख नहीं
  4804. 3:10:12रहा। यूजर आईडी है यहां पर। ठीक है?
  4805. 3:10:14ड्यूरेशन, कैलोरीज बर्न और स्टार्ट टाइम।
  4806. 3:10:17ठीक है? तो, यह सारी चीजों की तो जरूरत है
  4807. 3:10:20नहीं मुझे। एक मिनट, मैं ना कंट्रोल सेट
  4808. 3:10:22कर लेता हूं। यहां पर ये टाइप था। अच्छा,
  4809. 3:10:24ये टाइप को हटा देते हैं और यहां पर लिखते
  4810. 3:10:26हैं एक्टिविटी आईडी। ठीक है? क्योंकि हमें
  4811. 3:10:29एक्टिविटी आईडी की जरूरत पड़ेगी। तो इसको
  4812. 3:10:31भी फिलहाल एम्प्टी रखता हूं। और बाकी सारी
  4813. 3:10:32चीजों को मैं ऐसे हटा देता हूं। ये सारी
  4814. 3:10:35चीजों की जरूरत अभी फिलहाल है नहीं। ठीक
  4815. 3:10:37है? अब हमें क्या चाहिए? ये jसन को मैंने
  4816. 3:10:40रखा है। ठीक है? क्यों रखा है? क्योंकि
  4817. 3:10:42यहां पर अगर आप आओगे रेकमेंडेशन में या
  4818. 3:10:45रेकमेंडेशन रिक्वेस्ट में यह सारी चीजें
  4819. 3:10:47लिस्ट है। इंप्रूवमेंट्स, सजेशंस और
  4820. 3:10:49सेफ्टी। ठीक है? तो लिस्ट का मतलब यहां पर
  4821. 3:10:51अरे पास करनी है मुझे। तो इंप्रूवमेंट्स
  4822. 3:10:54ऐसे होगी। इंप्रूवमेंट्स।
  4823. 3:10:58ठीक है? और यहां पर विद इन दी अरे
  4824. 3:11:03इसको हटा देता हूं। विद इन दी अरे हम सारी
  4825. 3:11:05इंप्रूवमेंट्स का जो डेटा है उसको पास
  4826. 3:11:08करेंगे। ठीक है? तो कुछ ऐसे पास होगा और
  4827. 3:11:13इंप्रूवमेंट जो भी है आप लिख सकते हो यहां
  4828. 3:11:14पर। ठीक है? तो एक इंप्रूवमेंट को मैं एक
  4829. 3:11:16लाइन पर लिख दूंगा। रीडेबिलिटी के स्टैंड
  4830. 3:11:18पॉइंट से ऐसा करना मैंडेटरी नहीं है लेकिन
  4831. 3:11:20मैं रीडेबिलिटी के स्टैंड पॉइंट से एक-एक
  4832. 3:11:21लाइन पर ले रहा हूं। ऐसे और यहां पर इसको
  4833. 3:11:25क्लोज कर दूंगा। इस तरीके से क्लोज हो
  4834. 3:11:28जाएगा। ये अच्छा यहां पर एरर क्यों आ रहा
  4835. 3:11:29है ये? ओके। ये एरर इसलिए आ रहा है कि ये
  4836. 3:11:31सेमी कॉललन ये कॉमा की जरूरत है नहीं। ठीक
  4837. 3:11:34है? लेकिन मुझे इंप्रूवमेंट्स के बाद एक
  4838. 3:11:36और चीज़ ऐड करनी है। इंप्रूवमेंट, सजेशंस
  4839. 3:11:38और सेफ्टी। ठीक है? तो इंप्रूवमेंट में
  4840. 3:11:41मैं कॉमा डाल देता हूं फिलहाल। और इसको
  4841. 3:11:43कॉपी कर लेता हूं एंटर करके सजेशंस और फिर
  4842. 3:11:47सेफ्टी। और लास्ट वाले में से कॉमा हटा
  4843. 3:11:50देता हूं। ठीक है? तो ये हो गया
  4844. 3:11:51इंप्रूवमेंट्स। और इंप्रूवमेंट्स की
  4845. 3:11:54जेएसएन पहले बना लेते हैं। तो
  4846. 3:11:55इंप्रूवमेंट्स में इंक्रीस
  4847. 3:11:57ड्यूरेशन बाय 10%
  4848. 3:12:00ये मैंने लिख दिया। ठीक है? एक डमी
  4849. 3:12:04इंप्रूवमेंट्स ट्राई इंटरवल
  4850. 3:12:08ट्रेनिंग। ठीक है? यह डमी इंप्रूवमेंट्स
  4851. 3:12:10हैं सारे। ठीक है? तो इसको हटा देता हूं।
  4852. 3:12:12दो इंप्रूवमेंट्स रखता हूं। ठीक है?
  4853. 3:12:14इंप्रूवमेंट्स हो गए। अब दूसरी चीज है
  4854. 3:12:16सजेशंस।
  4855. 3:12:18ठीक है? सजेशंस में मैं सजेशन कुछ भी
  4856. 3:12:20सजेशन लिख सकते हो आप। तो मैं लिखता हूं
  4857. 3:12:22वार्म अप फॉर 5 मिनट्स एट लीस्ट। ठीक है?
  4858. 3:12:26यह सजेशंस है। यहां पर होगा स्टे
  4859. 3:12:29हाइड्रेटेड।
  4860. 3:12:31ठीक है? और बाकी सारी चीजें हटा देता हूं।
  4861. 3:12:34ठीक है? यह दो सजेशन है। उसके बाद यहां पर
  4862. 3:12:37अगर आप देखोगे तो यहां पर है सेफ्टी
  4863. 3:12:39टिप्स। सेफ्टी टिप्स ऐसे। अब सेफ्टी टिप्स
  4864. 3:12:43देखिए मैंने सेफ्टी। अच्छा यहां पर सेफ्टी
  4865. 3:12:45लिखा हुआ है सिर्फ। और यहां पर मैं लिख
  4866. 3:12:47रहा हूं सेफ्टी टिप्स। तो अगर आपको चाहिए
  4867. 3:12:50तो सेफ्टी है और यह रिकमेंडेशन रिक्वेस्ट
  4868. 3:12:55में अच्छा एक मिनट।
  4869. 3:12:571 मिनट देखने दीजिए मुझे। यहां पर अगर हम
  4870. 3:13:00देखेंगे अच्छा मैं रेकमेंडेशन
  4871. 3:13:03गेट सेफ्टी ओके सेफ्टी ही पास करना पड़ेगा
  4872. 3:13:07मुझे नॉट सेफ्टी टिप्स ठीक है तो इसको मैं
  4873. 3:13:11ऐसे लिख दूंगा सेफ्टी और यहां पर सेफ्टी
  4874. 3:13:14टिप्स मैं थोड़े दे देता हूं जैसे कि एक
  4875. 3:13:16सेफ्टी टिप है यूनिवर्सल लिसन टू योर बॉडी
  4876. 3:13:21ठीक है दूसरी सेफ्टी टिप है डोंट
  4877. 3:13:27ओवर एक्सर्ट ठीक है? ज्यादा एक्सरसाइज
  4878. 3:13:30नहीं करनी है। बहुत ज्यादा लिमिट में करना
  4879. 3:13:32है। ठीक है? तो, इतना मैंने लिख दिया है।
  4880. 3:13:33यह हो गई मेरी jसin इनपुट jसin। क्या
  4881. 3:13:36बोलते हो? अभी इसको सेंड कर दूं। और
  4882. 3:13:38एक्टिविटी आईडी तो हमने ऐड ही नहीं की है।
  4883. 3:13:40ठीक है? तो एक्टिविटी आईडी ऐड करने के लिए
  4884. 3:13:41मैं यहां पर आ जाता हूं डेटाबेस में। और
  4885. 3:13:44ये जो एक्टिविटी की आईडी है, कोई भी
  4886. 3:13:45एक्टिविटी की आईडी ले लीजिए आप। मेरे पास
  4887. 3:13:47एक ही एक्टिविटी ऐडेड है। तो उसकी आईडी
  4888. 3:13:49लेके मैं यहां पर ऐड कर देता हूं। ठीक है?
  4889. 3:13:51वैलिड एक्टिविटी आईडी अगर नहीं ऐड करोगे,
  4890. 3:13:54वैलिड यूजर आईडी ऐड नहीं करोगे, तो एरर
  4891. 3:13:56आएगी। ठीक है? आप खुद ही एक्सेप्शन थ्रो
  4892. 3:13:58कर रहे हो। यहां पर सेंड कर देते हैं।
  4893. 3:14:00चलिए देखते हैं क्या होता है। सेंड करोगे
  4894. 3:14:02अगर तो यहां पर देख सकते हो आप। अच्छा
  4895. 3:14:03टाइप नल है। रेकमेंडेशन नल है। ये दोनों
  4896. 3:14:05हमने सेट नहीं किया है जो कि ठीक है। अगर
  4897. 3:14:08आपको चाहिए तो आप ये दो पैराटर्स भी
  4898. 3:14:10एडिशनली ऐड कर सकते हो। ये इंटेंशनली नहीं
  4899. 3:14:12किया हुआ है। ये कोई इशू नहीं है। ठीक है?
  4900. 3:14:14अगर आपको टाइप ऐड करना है रेमेंडेशन का वो
  4901. 3:14:16भी ऐड कीजिए। रेकमेंडेशन भी ऐड करना है वो
  4902. 3:14:18भी कीजिए। ठीक है? इंप्रूवमेंट्स में आप
  4903. 3:14:20देखोगे देखिए इंप्रूवमेंट सेव हो चुकी है।
  4904. 3:14:22सजेशन सेव हो चुकी है। सेफ्टी इनेशन सेव
  4905. 3:14:25हो चुकी है। क्रिएटेड ऐड और अपडेटेड ऐड
  4906. 3:14:27सेव नहीं हुई है। ये प्रॉब्लम है। तो यहां
  4907. 3:14:29पर आ जाते हैं। क्रिएटेड ऐड कहां है? ठीक
  4908. 3:14:32है? क्रिएटेड ऐड यहां पर है। तो इसमें
  4909. 3:14:35डालना होगा हमें अ क्रिएटेड।
  4910. 3:14:39अ ठीक है। कौन सा एनोटेशन था वो? एक्चुअली
  4911. 3:14:42एनोटेशन का नाम भूल गया मैं। एक्टिविटी।
  4912. 3:14:45ठीक है? यह रहा एक्टिविटी। और यहां पर कौन
  4913. 3:14:48सा एनोटेशन था? क्रिएशन टाइम स्टैंप और
  4914. 3:14:50अपडेट टाइम स्टैंप। ठीक है? क्रिएशन टाइम
  4915. 3:14:53स्टैंप ऐसे
  4916. 3:14:55और फिर यहां पर आना है और फिर अपडेट टाइम
  4917. 3:14:59स्ट
  4918. 3:15:01ऐसे। ठीक है? अब इसको रन करके देखते हैं
  4919. 3:15:03कि ये क्रिएट और अपडेट टाइम स्टैंप जनरेट
  4920. 3:15:05हो रहा है कि नहीं। ठीक है?
  4921. 3:15:09और फिर इधर जाना है। फिर इसको सेंड करना
  4922. 3:15:13है। और देखिए अब क्रिएटेड ऐड और अपडेटेड
  4923. 3:15:15ऐड दोनों आ रहा है। ठीक है? और फिर यहां
  4924. 3:15:19पर आप देखते हो तो देखिए यहां पर इंसर्ट
  4925. 3:15:22क्वरीज भी जनरेट हो रही है। ठीक है? और
  4926. 3:15:24jsn में डेटा स्टोर हो रहा है। जैसे आप
  4927. 3:15:25देख पा रहे हो। ठीक है? यहां पर अगर आप
  4928. 3:15:27आते हो तो यहां पर रेकमेंडेशन में आप
  4929. 3:15:29जाओगे तो देखिए आपको रेकमेंडेशन में सारा
  4930. 3:15:31का सारा डेटा जो जनरेट हो रहा है वो सेव
  4931. 3:15:33होता हुआ नजर आएगा। देखिए आप तो पहले वाले
  4932. 3:15:36इसमें क्रिएटेड एट और अपडेटेड एट सेव नहीं
  4933. 3:15:39था क्योंकि हमने एनोटेशन नहीं लगाई थी
  4934. 3:15:40लेकिन उसको डिलीट कर सकते हैं डिलीट रो
  4935. 3:15:42ठीक है और अप्लाई कर दीजिए यहां पर ये
  4936. 3:15:44अप्लाई हो गया डिलीट हो चुका है वो रो और
  4937. 3:15:46अब आप देख पा रहे हो तो देखिए रेमेंडेशन
  4938. 3:15:48वगैरह सब जनरेटेड है यहां पर जैसे आपने
  4939. 3:15:51सेंड किया और यह जेएसएन फॉर्मेट में सेव
  4940. 3:15:53हो रहा है यहां पर ठीक है तो एक्टिविटी
  4941. 3:15:56क्रिएशन का काम तो हमने कर एक्टिविटी नहीं
  4942. 3:15:59रेकमेंडेशन क्रिएशन का काम है वह हमने कर
  4943. 3:16:02दिया है
  4944. 3:16:08ठीक है। थोड़ा आगे बढ़ते हैं और अगली एपीआई
  4945. 3:16:11की ओर चलते हैं। ठीक है? तो अगली एपीआई जो
  4946. 3:16:13है वो देखिए यहां पर रेकमेंडेशन तो हमने
  4947. 3:16:16जनरेट कर ली है। ठीक है? बाकी की दो एपीआई
  4948. 3:16:19मैं चाहूंगा आप चैलेंज की तरह लीजिए। ठीक
  4949. 3:16:20है? देखिए वीडियो तो मैं बना रहा हूं।
  4950. 3:16:23आपको आगे देखने मिल जाएगा कि किस तरीके से
  4951. 3:16:25एपीआई बन रही है, क्या काम हो रहा है,
  4952. 3:16:27क्या हो रहा है, सब कुछ देखने मिल जाएगा।
  4953. 3:16:29ठीक है? लेकिन आप खुद से ट्राई भी कीजिए।
  4954. 3:16:31तो यह एंड पॉइंट जो है सिंपल एंड पॉइंट्स
  4955. 3:16:34हैं। ठीक है? और जो भी आप अभी तक पढ़ चुके
  4956. 3:16:37हो वह सारे कांसेप्ट्स को इसमें अप्लाई
  4957. 3:16:40करने का आपके पास एक अपॉर्चुनिटी है। तो
  4958. 3:16:43मैं रेकमेंड करूंगा पॉज कीजिए और ये दो
  4959. 3:16:45एंड पॉइंट्स हैं जिसका स्ट्रक्चर मैंने
  4960. 3:16:47दिखा दिया है और लॉजिक क्या है ये भी आपको
  4961. 3:16:48पता है। इसको अटेम्प्ट कीजिए। ठीक है? पॉज
  4962. 3:16:51कीजिए अभी और फिर प्ले कीजिए और अपना जो
  4963. 3:16:54स्यूशन है उसको मेरे स्यूशन से कंपेयर
  4964. 3:16:56कीजिए। अगर नहीं कर पाते हो खत्म तो भी
  4965. 3:16:57कोई बात नहीं। कोई दिक्कत नहीं है इसे। यह
  4966. 3:16:59एग्जाम नहीं है। यह एक यू नो आप खुद को
  4967. 3:17:03पुश कर रहे हो एक कंफर्ट जोन से निकलने के
  4968. 3:17:05लिए। ठीक है? तो ठीक है? गेट यूजर
  4969. 3:17:07रेकमेंडेशन। मैं तो आगे बढ़ रहा हूं लेकिन
  4970. 3:17:09आप पॉज करके जरूर ट्राई कीजिएगा आपके एंड
  4971. 3:17:10पे। ठीक है? ये वीडियो है। पॉज प्ले आप
  4972. 3:17:13कभी भी कर सकते हो। ठीक है? तो देखिए यहां
  4973. 3:17:16पर यूजर रेकमेंडेशन अब फेच करेंगे हम।
  4974. 3:17:18यूजर रेकमेंडेशन का मतलब यूजर के अगेंस्ट
  4975. 3:17:20जितनी भी रेकमेंडेशन है उन सारी
  4976. 3:17:23रेकमेंडेशन को हमें रिट्रीव करना है। ठीक
  4977. 3:17:24है? तो हम क्या करेंगे? यहां पर आ जाते
  4978. 3:17:27हैं सोर्स कोड में। और यहां पर लिखेंगे
  4979. 3:17:32रेकमेंडेशन कंट्रोलर और फिर यहां पर लिख
  4980. 3:17:36देंगे सेम मेथड को मैं डुप्लीकेट कर दूंगा
  4981. 3:17:38थोड़ा टाइपिंग का एफर्ट है थोड़ा बच जाता
  4982. 3:17:41है ठीक है और यहां पर मैं लिखूंगा गेट अ
  4983. 3:17:44मैपिंग इस तरीके से ठीक है और यहां पर
  4984. 3:17:46लिखेंगे यूजर स्लश यूजर आईडी
  4985. 3:17:51ठीक है यूजर स्लैश यूजर आईडी और यहां पर
  4986. 3:17:53रेकमेंडेशन और यहां पर जनरेट रेकमेंडेशन
  4987. 3:17:56की बजाय गेट यूजर रेकमेंडेशन
  4988. 3:18:00इस तरीके से लिखेंगे हम। ठीक है? और अब यह
  4989. 3:18:04जो रिटर्न करेगा देखिए यूजर के अगेंस्ट
  4990. 3:18:06रिकमेंडेशंस रिटर्न हो रहे हैं। ठीक है?
  4991. 3:18:09तो रेमेंडेशंस मल्टीपल हो सकते हैं। तो
  4992. 3:18:11यहां पर लिस्ट ऑफ रेमेंडेशंस हम लोग
  4993. 3:18:14रिटर्न करेंगे। ठीक है? और यहां पर
  4994. 3:18:17रेकमेंडेशन रिक्वेस्ट है जो हम ले रहे
  4995. 3:18:19हैं। और यहां पर रेमेंडेशन
  4996. 3:18:23सर्विस की मदद से हम लोग लिस्ट ऑफ
  4997. 3:18:25रेमेंडेशंस चाहिए हमको। ठीक है? लिस्ट ऑफ़
  4998. 3:18:28रिकमेंडेशन।
  4999. 3:18:29ठीक है? रिकमेंडेशन लिस्ट। और फिर यहां पर
  5000. 3:18:34हम जनरेट रेकमेंडेशन के बजाय हम कहेंगे
  5001. 3:18:37गेट यूजर रेमेंडेशन।
  5002. 3:18:41ठीक है? ऐसे। और यहां पर रिक्वेस्ट नहीं
  5003. 3:18:45लेंगे हम। हम रिक्वेस्ट लेंगे। हमें
  5004. 3:18:48रिक्वेस्ट लेने की एक्चुअली जरूरत नहीं
  5005. 3:18:50है। रिक्वेस्ट बॉडी में कुछ लेने की जरूरत
  5006. 3:18:51नहीं है। क्योंकि यह रिक्वेस्ट यह गेट
  5007. 3:18:53मैपिंग रिक्वेस्ट है। करेक्ट? गेट है। गेट
  5008. 3:18:55रिक्वेस्ट। तो यहां पर इन सब की जरूरत
  5009. 3:18:57नहीं है। यहां पर मैं क्या करूंगा? सिंपली
  5010. 3:19:00यूजर आईडी को फैच कर लूंगा ऐसे। ठीक है?
  5011. 3:19:03और यहां पर सेमी कॉललन नहीं आएगा। यूजर
  5012. 3:19:05आईडी को फैच कर लूंगा। और ये यूजर आईडी
  5013. 3:19:07आएगा मुझे पाथ वेरिएबल में से। ठीक है? और
  5014. 3:19:10यहां पर ये जो
  5015. 3:19:13यूजर आईडी मुझे मिल रहा है उसको मैं यहां
  5016. 3:19:15पर लिख दूंगा। ठीक है? तो इसको नई लाइन
  5017. 3:19:16में लेते हैं। यहां पर यूजर आईडी ऐसे। ठीक
  5018. 3:19:20है? गेट यूजर रिकमेंडेशन।
  5019. 3:19:22ओके? और यहां पर रिकमेंडेशन लिस्ट को
  5020. 3:19:24रिट्रीव कर देंगे। रिटर्न कर देंगे। ठीक
  5021. 3:19:26है? काफी सिंपल सी एंड पॉइंट है। देखिए,
  5022. 3:19:28मैं एक बार और एक्सप्लेन कर देता हूं
  5023. 3:19:30क्योंकि हमने कॉपी पेस्ट किया और अगर किसी
  5024. 3:19:31को समझ में नहीं आया तो उनके बेनिफिट के
  5025. 3:19:34लिए एक और बार एक्सप्लेन करता हूं। अगर
  5026. 3:19:36आपको समझ में आ गया तो रिवीज़ है। ठीक है?
  5027. 3:19:38तो देखिए ये पहले सबसे पहले तो मैंने मेथड
  5028. 3:19:40को डिक्लेअर किया यहां पर। ठीक है? और गेट
  5029. 3:19:42मैपिंग डिफाइन की है यहां पर। गेट मैपिंग
  5030. 3:19:44का तो आपको पता है। यहां पर यूजर आईडी मैं
  5031. 3:19:47एज एक पाथ वेरिएबल ले रहा हूं। यानी विद
  5032. 3:19:49इन द पाथ मैं एक डायनामिक पैरामीटर को
  5033. 3:19:52एक्सेप्ट कर रहा हूं। इतनी चीज समझ गई
  5034. 3:19:54आपको? और फिर यहां पर यह यूजर आईडी आपको
  5035. 3:19:58मिल गई। और फिर यूजर आईडी यहां पर अंदर हम
  5036. 3:20:02क्या कर रहे हैं? सर्विस की मदद से गेट
  5037. 3:20:03यूजर रेकमेंडेशन नाम की मेथड हम कॉल कर
  5038. 3:20:06रहे हैं। ठीक है? यूजर आईडी और यहां पर ये
  5039. 3:20:10जो रिटर्न करेगा वो रिटर्न करेगा लिस्ट ऑफ़
  5040. 3:20:12रेकमेंडेशन। तो देखिए यहां पर लिस्ट क्यों
  5041. 3:20:14किया मैंने? लिस्ट क्यों किया मैंने? अ
  5042. 3:20:17यहां पर रिटर्न टाइप लिस्ट क्यों है?
  5043. 3:20:19लिस्ट इसीलिए है क्योंकि देखिए एक यूजर के
  5044. 3:20:23अगेंस्ट मल्टीपल रेकमेंडेशन हो सकती है।
  5045. 3:20:25एक भी हो सकती है, जीरो भी हो सकती है और
  5046. 3:20:27मल्टीपल भी हो सकती है। तो सेफ्टी के लिए
  5047. 3:20:30लिस्ट लेना जरूरी है। क्योंकि अगर मल्टीपल
  5048. 3:20:32होती है तो आप उसको लिस्ट में दिखा सकते
  5049. 3:20:34हो। एक है तो भी लिस्ट में दिखा सकते हो।
  5050. 3:20:35एक भी नहीं है तो भी एम्प्टी लिस्ट दिखा
  5051. 3:20:37सकते हो। ठीक है? तो लिस्ट सारे सिनेरियोस
  5052. 3:20:39को फुलफिल करता है। इसके लिए लिस्ट हमने अ
  5053. 3:20:42रिटर्न की है। और इसको हमने रैप किया है
  5054. 3:20:45रिस्पांस एंटिटी में यहां पर। जैसे कि आप
  5055. 3:20:46देख पा रहे हो। और रिटर्न करते वक्त मैं
  5056. 3:20:48यह लिस्ट को रिटर्न कर रहा हूं यहां पर।
  5057. 3:20:50इतना क्लियर है? अब यहां पर अ इतना तो बन
  5058. 3:20:54गया हमारे पास। अब इसे इस मेथड को मैं
  5059. 3:20:56क्रिएट कर दूंगा सर्विस में। ठीक है? अब
  5060. 3:21:00सर्विस में देखिए हमारा जो कोड रहने वाला
  5061. 3:21:02है अ काफी सिंपल और टू द पॉइंट होने वाला
  5062. 3:21:05है। ठीक है? तो मैं यहां पर क्या करूंगा?
  5063. 3:21:08यहां पर मैं करूंगा रिटर्न और रिकमेंडेशन
  5064. 3:21:12रिपॉज़िटरी डॉट। देखिए हमें सिर्फ डेटा को
  5065. 3:21:14रिट्रीव करना है। तो मैं कहूंगा फाइंड बाय
  5066. 3:21:17यूजर आईडी और यहां पर यूजर आईडी को सेव
  5067. 3:21:21कर। ठीक है? फाइंड बाय यूजर आईडी क्यों
  5068. 3:21:24लिखा है मैंने? क्योंकि अगर आप डेटाबेस
  5069. 3:21:25में देखते हो तो हर रेकमेंडेशन के अगेंस्ट
  5070. 3:21:28हम यूजर आईडी को सेव कर रहे हैं। तो यहां
  5071. 3:21:30पर देखिए रेकमेंडेशन के अगेंस्ट यूजर आईडी
  5072. 3:21:32सेव हो रही है। क्यों हो रही है? क्योंकि
  5073. 3:21:34यूजर और रेकमेंडेशन में एक रिलेशनशिप है।
  5074. 3:21:37करेक्ट? आप मॉडल में आते हो अगर तो यूजर
  5075. 3:21:40और रेकमेंडेशन में एक रिलेशनशिप है। यहां
  5076. 3:21:43पर आप देख पा रहे हो। ठीक है? और जॉइन
  5077. 3:21:45कॉलम कौन सी है? जॉइन कॉलम का नाम है यूजर
  5078. 3:21:47आईडी। ठीक है? तो यहां पर
  5079. 3:21:51मैंने लिख दिया है फाइंड बाय यूजर आईडी।
  5080. 3:21:53तो क्या ये मेथड क्या ये मेथड एक्सिस्ट
  5081. 3:21:56करती है रेपोज़िटरी में? जी नहीं। ये तो
  5082. 3:21:57कस्टम मेथड हो गई। फाइंड बाय आईडी
  5083. 3:21:59एक्सिस्ट करती है। लेकिन हम फाइंड बाय
  5084. 3:22:01आईडी क्यों इस्तेमाल नहीं कर रहे? तो
  5085. 3:22:03फाइंड बाय आईडी क्यों इस्तेमाल नहीं कर
  5086. 3:22:04रहा हूं? फाइंड बाय आईडी यह वाला मेथड
  5087. 3:22:06क्यों नहीं इस्तेमाल कर रहा हूं? क्योंकि
  5088. 3:22:08यह रेकमेंडेशन के आईडी से सर्च करेगा और
  5089. 3:22:10मुझे बाय यूजर चाहिए। सर्च बाय यूजर। ठीक
  5090. 3:22:12है? तो इसके लिए मैंने कंट्रोल सेट कर
  5091. 3:22:14दूंगा। फाइंड बाय यूजर आईडी लिख दिया है।
  5092. 3:22:16अब देखिए जीपीआईआई का मैजिक ऐसा है कि
  5093. 3:22:18यहां पर अगर मैं क्रिएट मेथड करता हूं तो
  5094. 3:22:20ये मेथड क्रिएट हो चुका है। यहां पर आप
  5095. 3:22:22देख पा रहे हो। ठीक है? अब सेम लॉजिक
  5096. 3:22:25अप्लाई होगा। फाइंड का मतलब क्या है?
  5097. 3:22:27वेयर। अ सॉरी फाइंड का मतलब है सेलेक्ट।
  5098. 3:22:30बाय का मतलब है वेयर क्लॉज़ और यूजर आईडी
  5099. 3:22:33फील्ड है। यही कन्वेंशन हमने फॉलो किया और
  5100. 3:22:35यहां पर यूजर आईडी पास भी कर दिया और यहां
  5101. 3:22:37पर लिख दिया है कि हमें लिस्ट चाहिए
  5102. 3:22:38रेकमेंडेशंस की। तो जेपीए हाइबरनेट इतने
  5103. 3:22:41स्मार्ट है कि ये जो कन्वेंशन है वो देख
  5104. 3:22:43के समझ जाएंगे कि उनको क्या क्वेरी जनरेट
  5105. 3:22:45करनी है। ठीक है? आपका काम कितना आसान
  5106. 3:22:47होता है। आपको एस्सक्यूएल क्वेरी लिखनी ही
  5107. 3:22:49नहीं है अगर कोई कस्टम रिक्वायरमेंट होती
  5108. 3:22:50है तो। ठीक है? इतना कर लिया हमने। बस बात
  5109. 3:22:53खत्म हो चुकी है। अब और कुछ करने की जरूरत
  5110. 3:22:56है नहीं। अगर
  5111. 3:22:58अ एक हिसाब से जी और कुछ करने की तो लगभग
  5112. 3:23:02जरूरत है नहीं। अगर आप चाहो तो इसको रन कर
  5113. 3:23:08सकते हो।
  5114. 3:23:10ठीक है? ये रन हो रहा है। तब तक मैं यहां
  5115. 3:23:12पर आ जाता हूं। अब देखिए यहां पर मेरे पास
  5116. 3:23:14एक यूजर आईडी है। ठीक है? ये यूजर आईडी
  5117. 3:23:17है। तो मैं क्या करूंगा? यह जो एंड पॉइंट
  5118. 3:23:19है जनरेट रेकमेंडेशन इसको ही डुप्लीकेट कर
  5119. 3:23:21दूंगा इस तरीके से। अच्छा यहां पर क्लिक
  5120. 3:23:24करके डुप्लीकेट कर दूंगा।
  5121. 3:23:26ठीक है? और यह जो रिक्वेस्ट है, ठीक है?
  5122. 3:23:29प्रीवियस रिक्वेस्ट को सेव कर लिया। यहां
  5123. 3:23:31पर मैं लिख दूंगा गेट यूजर रेकमेंडेशन।
  5124. 3:23:36ऐसे
  5125. 3:23:38यूजर और फिर स्लैश यूजर आईडी यहां पर
  5126. 3:23:41मेंशन करना है। इस तरीके से। अब यहां पर
  5127. 3:23:44आएंगे हम। अ बॉडी वगैरह तो पास करने की
  5128. 3:23:47जरूरत नहीं है। ये गेट रिक्वेस्ट है। ठीक
  5129. 3:23:48है? और बॉडी में यहां पर पहले से यूजर
  5130. 3:23:51आईडी मेंशंड है। तो यह एक वैलिड यूजर आईडी
  5131. 3:23:53मैं ले लूंगा और यहां पर मैं लिख दूंगा
  5132. 3:23:55ऐसे। ठीक है? और फिर इसको मैं नन कर
  5133. 3:23:58दूंगा। बॉडी पास करने की जरूरत है नहीं।
  5134. 3:24:01ठीक है? तो इतना हो गया। अब मैं इसे अगर
  5135. 3:24:02रन करता हूं तो देखिए मुझे इस यूजर के
  5136. 3:24:05अगेंस्ट जितनी भी रेकमेंडेशंस है वो दिखाई
  5137. 3:24:07देगी इन द फॉर्म ऑफ़ अरे। यह अरे है एक
  5138. 3:24:09हिसाब से। तो एक ही रेकमेंडेशन है तो मुझे
  5139. 3:24:11एक ही दिखाई दे रही है। अगर मैं एक और
  5140. 3:24:13रेकमेंडेशन जनरेट करता हूं यहां पर उस
  5141. 3:24:14यूजर के अगेंस्ट और फिर गेट करता हूं तो
  5142. 3:24:17देखिए मुझे एक और फिर दो दूसरी रेमेंडेशन
  5143. 3:24:20दो रेमेंडेशंस फैच हुई है यहां। ठीक है?
  5144. 3:24:23क्योंकि डेटाबेस में दो रेमेंडेशंस
  5145. 3:24:25एक्सिस्ट करती है यह एक यूजर के अगेंस्ट।
  5146. 3:24:27ठीक है? तो ये थी पहली गेट एंड पॉइंट। अब
  5147. 3:24:30मैं क्या करूंगा? यहां पर आ जाता हूं।
  5148. 3:24:33देखिए यहां पर क्वेरी भी जनरेट हो रही है।
  5149. 3:24:34आपको दिखाई देगा। बाय यूजर आईडी। फाइंड
  5150. 3:24:37बाय यूजर आईडी की क्वेरी है ये। ठीक है?
  5151. 3:24:39जनरेट हो के प्रिंट भी हो रही है। ठीक है?
  5152. 3:24:41तो इतना हो चुका है। अब रेकमेंडेशन
  5153. 3:24:43कंट्रोलर में आ जाते हैं और यहां पर जो
  5154. 3:24:45नेक्स्ट एपीआई है जहां पर हमें एक्टिविटी
  5155. 3:24:47फैच करनी है एक एक्टिविटी आईडी की मदद से
  5156. 3:24:50वो हम क्रिएट करेंगे। तो यहां पर आ जाते
  5157. 3:24:52हैं और यहां पर मैं इसको कॉपी करता हूं और
  5158. 3:24:56फिर यहां पर लिख देता हूं और फिर
  5159. 3:24:58एक्टिविटी आईडी को मेंशन करता हूं यहां पर
  5160. 3:25:02और यहां पर लिखता हूं एक्टिविटी ऐसे
  5161. 3:25:05और फिर यहां पर लिस्ट ऑफ रेकमेंडेशन की
  5162. 3:25:08बजाय गेट यूजर रेकमेंडेशन की बजाय गेट
  5163. 3:25:10एक्टिविटी रिकमेंडेशन और यहां पर स्ट्रिंग
  5164. 3:25:14यूजर आईडी के बजाय एक्टिविटी आईडी ऐसे लिख
  5165. 3:25:17देंगे। ठीक है? अब बाकी सारी चीजें तो सेम
  5166. 3:25:20ही होगी। रेकमेंडेशन लिस्ट और यहां पर गेट
  5167. 3:25:23यूजर रेकमेंडेशन की बजाय गेट एक्टिविटी
  5168. 3:25:26रेमेंडेशन और यहां पर यूजर आईडी के बजाय
  5169. 3:25:28एक्टिविटी आईडी। ठीक है? इतना मैंने मेंशन
  5170. 3:25:32कर दिया है। और यहां पर इसको क्लियर कर
  5171. 3:25:35देंगे ऐसे। सॉरी क्लियर नहीं क्रिएट कर
  5172. 3:25:37देंगे। ऐसे और फिर यहां पर मैं लिखूंगा
  5173. 3:25:42ऐसे। अह यहां पर मैं लिखूंगा इसको कॉपी कर
  5174. 3:25:46लूंगा। और यहां पर लिखूंगा फाइंड बाय
  5175. 3:25:49एक्टिविटी आईडी।
  5176. 3:25:52सिमिलर लॉजिक है और यूजर आईडी के बजाय
  5177. 3:25:53एक्टिविटी आईडी पास करेंगे हम। और यहां पर
  5178. 3:25:57होवर करके ये वाला जो मेथड है उसको भी
  5179. 3:25:59क्रिएट कर देंगे यहां पर।
  5180. 3:26:02ठीक है? तो आपको दिखाई दे रहा है लिस्ट।
  5181. 3:26:05अब एक चीज़ यहां पर ये है कि अ लिस्ट यहां
  5182. 3:26:10पर नहीं होगी क्योंकि यहां पर रिलेशनशिप
  5183. 3:26:12देख लेते हैं। एक्टिविटी के अगेंस्ट एक ही
  5184. 3:26:14रेकमेंडेशन होती है जनरली। यहां पर देखते
  5185. 3:26:17हैं तो एक्टिविटी है, लिस्ट है एक हिसाब
  5186. 3:26:22से। अच्छा लिस्ट ऑफ रेमेंडेशंस है तो
  5187. 3:26:24लिस्ट ही आएगी। ये सही लिखा है हमने। ठीक
  5188. 3:26:26है? यहां पर आपको लिस्ट ही मिलेगी और अब
  5189. 3:26:30इसको रन कर लेते हैं। ठीक है? ये सेम एंड
  5190. 3:26:32पॉइंट को रन कर लेते हैं। तो एक्टिविटी
  5191. 3:26:34स्लश एक्टिविटी आईडी तो इसको रन कर लेते
  5192. 3:26:36हैं। और यहां पर आ जाता हूं मैं और यह जो
  5193. 3:26:39गेट यूजर रेकमेंडेशन है, इसको मैं कर लेता
  5194. 3:26:41हूं डुप्लीकेट। ठीक है? इसको कर लेता हूं
  5195. 3:26:45डुप्लीकेट और गेट यूजर रेमेंडेशन के बजाय
  5196. 3:26:48इसको मैं रिनेम कर दूंगा गेट एक्टिविटी
  5197. 3:26:52रेमेंडेशन ऐसे ठीक है और यहां पर एपीआई
  5198. 3:26:57डॉट रेमेंडेशन डॉट यूजर सैश यूजर स्लैश
  5199. 3:27:00यूजर के बजाय एक्टिविटी लिख दूंगा अब मुझे
  5200. 3:27:03यहां पर एक्टिविटी आईडी लगानी है। ठीक है?
  5201. 3:27:05तो यहां पर एक्टिविटी आईडी कहां मिलेगी?
  5202. 3:27:08यह मैं एक्टिविटी को सेव कर रहा हूं। तो
  5203. 3:27:10यह शायद एक्टिविटी आईडी है। इसको ले लेते
  5204. 3:27:12हैं।
  5205. 3:27:14यहां पर आ जाते हैं और यहां पर यह जो यूजर
  5206. 3:27:18आईडी लगी हुई है इसको हटाकर एक्टिविटी
  5207. 3:27:19आईडी ऐड कर देते हैं और फिर सेंड करते
  5208. 3:27:22हैं। तो देखिए यहां पर एक्टिविटी के
  5209. 3:27:24अगेंस्ट जितनी भी रेकमेंडेशंस हैं दो
  5210. 3:27:26रेकमेंडेशंस है इस सेम एक्टिविटी के
  5211. 3:27:27अगेंस्ट तो वो रिट्रीव हो चुकी है। ठीक
  5212. 3:27:30है? आपको दिखाई दे रहा है। तो सिंपल है।
  5213. 3:27:33ठीक है? सिंपल एंड पॉइंट सी और सारा का
  5214. 3:27:35सारा डेटाबेस से आ रहा है। कोई दिक्कत
  5215. 3:27:38वैसे है नहीं। हम ट्राई करते हैं कि एक
  5216. 3:27:40गलत एक्टिविटी ऐड कर देता हूं मैं। तो
  5217. 3:27:42लास्ट में वन ऐड कर दिया। अगर आप गलत
  5218. 3:27:44एक्टिविटी ऐड करते हो तो आपको एम्प्टी
  5219. 3:27:46रिस्पांस मिलेगा। ठीक है? आप इसको हैंडल
  5220. 3:27:48भी कर सकते हो कि अगर एम्प्टी रिस्पांस है
  5221. 3:27:50तो आप देखिए कि एक्टिविटी एक्सिस्ट करती
  5222. 3:27:53है या नहीं डेटाबेस में और एक एक्सेप्शन
  5223. 3:27:55थ्रू कीजिए वो सब आप कर सकते हो। ठीक है?
  5224. 3:27:57लेकिन एम्प्टी अभी फिलहाल मैं रख रहा हूं
  5225. 3:27:59और यहां पर इस तरीके से ये दोनों एंड
  5226. 3:28:01पॉइंट्स काम कर रही है। ठीक है? तो उम्मीद
  5227. 3:28:02करता हूं यह हेल्पफुल रहा और आपको पूरा जो
  5228. 3:28:05प्रोसेस है ईपीआई बनाने का वह सारा के
  5229. 3:28:07सारा क्लियर है।
  5230. 3:28:14तो दोस्तों बात करते हैं स्प्रिंग
  5231. 3:28:15सिक्योरिटी के बारे में और समझते हैं कि
  5232. 3:28:18यह है क्या? देखिए इसके नाम से तो समझ ही
  5233. 3:28:20गया होगा। आपको एक अंदाजा तो लग गया होगा
  5234. 3:28:22कि ये नाम में सिक्योरिटी है तो कुछ
  5235. 3:28:24सिक्योरिटी रिलेटेड होगा। जी हां ये
  5236. 3:28:26एक्चुअली सिक्योरिटी रिलेटेड ही है। तो
  5237. 3:28:28देखिए आप एप्लीकेशन एक बनाते हो। ठीक है?
  5238. 3:28:32ये एप्लीकेशन और होता क्या है? इस
  5239. 3:28:34एप्लीकेशन को कोई भी एक्सेस कर सकता है।
  5240. 3:28:36करेक्ट? इस एप्लीकेशन को कोई भी एक्सेस कर
  5241. 3:28:38सकता है। लेकिन आज की तारीख में किसी का
  5242. 3:28:41भी हमारी एपीआई को एक्सेस करना सही नहीं
  5243. 3:28:44है। ठीक है? हो सकता है हमारी एपीआई में
  5244. 3:28:47ऐसी कुछ सेंसिटिव इनेशन हो या सेंसिटिव
  5245. 3:28:50डेटा हो और हम नहीं चाहते कि हमारी जो एंड
  5246. 3:28:54पॉइंट्स है वो पब्लिकली अवेलेबल रहे। तो
  5247. 3:28:57आजकल की ऑर्गेनाइजेशंस क्या चाहती है कि
  5248. 3:29:00हमारी जो एप्लीकेशन है वो सिक्योर हो। और
  5249. 3:29:02अगर आप स्प्रिंग फ्रेमवर्क, स्प्रिंग बूट
  5250. 3:29:05ये सारी टेक्नोलॉजी सीखते हैं, कोई बैक
  5251. 3:29:07एंड एप्लीकेशन बनाते हैं, फुल स्टक
  5252. 3:29:08एप्लीकेशन बनाते हैं, तो सिक्योरिटी के
  5253. 3:29:11बिना तो बात ही नहीं होती है। ठीक है? हर
  5254. 3:29:13कंपनी चाहे वो एंटरप्राइज हो, छोटा
  5255. 3:29:15स्टार्टअप हो या कोई भी हो, ठीक है? बेसिक
  5256. 3:29:18एप्लीकेशनेशंस में भी आजकल सिक्योरिटी की
  5257. 3:29:20एक्सपेक्टेशंस हैं। ठीक है? और जनरली
  5258. 3:29:24जनरली
  5259. 3:29:26कंपनीज़ चाहती है कि हमारी सारी
  5260. 3:29:28एप्लीकेशनेशंस में एक बढ़िया किस्म की
  5261. 3:29:30सिक्योरिटी इंप्लीमेंटेड हो। ठीक है? तो
  5262. 3:29:33इसे कहते हैं सिक्योरिटी और सिक्योरिटी
  5263. 3:29:35काफी इंपॉर्टेंट आस्पेक्ट है एप्लीकेशन
  5264. 3:29:37बिल्डिंग का। ठीक है? और यहीं पर अब आती
  5265. 3:29:41है बात स्प्रिंग सिक्योरिटी की। अब
  5266. 3:29:43स्प्रिंग सिक्योरिटी क्या है? तो स्प्रिंग
  5267. 3:29:44सिक्योरिटी को मान लीजिए एक फ्रेमवर्क की
  5268. 3:29:46तरह है स्प्रिंग बूट के एप्लीकेशन के लिए।
  5269. 3:29:49ठीक है? तो अगर आप स्ट्रिंग बूट का
  5270. 3:29:51इस्तेमाल करते हो बैक एंड पर तो अगर आपको
  5271. 3:29:53ऑथेंटिकेशन, ऑथराइजेशन और सिक्योरिटी ऐसी
  5272. 3:29:56कोई भी चीज ऐड करनी है अपनी एप्लीकेशन
  5273. 3:29:58में। जैसे कि मैंने यहां पर कहा कि आपकी
  5274. 3:30:00जो एप्लीकेशन है उसको हर कोई एक्सेस कर
  5275. 3:30:02सकता है बाय डिफ़ॉल्ट। ठीक है? लेकिन मैं
  5276. 3:30:04चाहता हूं कि हर कोई एक्सेस ना करें। और
  5277. 3:30:06मैं चाहता हूं कि स्पेसिफिक सेट ऑफ यूज़र्स
  5278. 3:30:08ही एक्सेस करें उसे। तो मैं क्या करूंगा?
  5279. 3:30:10मैं स्प्रिंग सिक्योरिटी की मदद से उसमें
  5280. 3:30:12सिक्योरिटी इंप्लीमेंट करूंगा। यानी कि
  5281. 3:30:13ऑथेंटिकेशन, ऑथराइज़ेशन ये सारे फीचर्स
  5282. 3:30:16इंप्लीमेंट करूंगा। ठीक है? है तो
  5283. 3:30:17स्प्रिंग सिक्योरिटी एक ऐसा फ्रेमवर्क है
  5284. 3:30:19जिसकी मदद से हम हमारी स्प्रिंग बूट
  5285. 3:30:21एप्लीकेशन में प्रोटेक्शन ऐड कर सकते हैं।
  5286. 3:30:24यानी कि सिक्योरिटी फीचर्स ऐड कर सकते
  5287. 3:30:27हैं। और ये काफी सारी चीजें हमें देता है।
  5288. 3:30:30ठीक है? तो मैं क्या करूंगा? मैं हमारे
  5289. 3:30:33ब्राउज़र पे आ जाऊंगा। ठीक है? और यहीं पर
  5290. 3:30:36हम जाएंगे स्प्रिंग.io पर। ठीक है?
  5291. 3:30:38spring. ये ऑफिशियल वेबसाइट है अ और
  5292. 3:30:42स्प्रिंग की ऑफिशियल वेबसाइट है। ठीक है?
  5293. 3:30:44और यहां पर अगर आप आते हो तो यहां पर
  5294. 3:30:45स्प्रिंग के बारे में आप सब कुछ पढ़ सकते
  5295. 3:30:46हो। ठीक है? सब कुछ पढ़ सकते हो यहां पर।
  5296. 3:30:49देखिए ये सारी चीजें हैं और यहां पर ऊपर
  5297. 3:30:51आओगे आप तो आपको प्रोजेक्ट्स दिखाई देगा।
  5298. 3:30:54इसको बंद कर देता हूं। प्रोजेक्ट्स दिखाई
  5299. 3:30:56देगा। प्रोजेक्ट्स में एक प्रोजेक्ट है
  5300. 3:30:57स्प्रिंग बूट, स्प्रिंग फ्रेमवर्क,
  5301. 3:30:59स्प्रिंग क्लाउड, स्प्रिंग डाटा और यहां
  5302. 3:31:02पर एक प्रोजेक्ट आपको दिखेगा वो है
  5303. 3:31:03स्प्रिंग सिक्योरिटी। और अगर आप इस पर
  5304. 3:31:05क्लिक करते हो तो देखिए आप इस पेज पर आ
  5305. 3:31:07जाओगे और यहां पर आपको लेटेस्ट वर्जन
  5306. 3:31:10दिखाई देगा स्प्रिंग सिक्योरिटी का। हो
  5307. 3:31:12सकता है आपको अलग वर्जन दिखाई दे। ठीक है?
  5308. 3:31:14इसमें घबराना नहीं है। देखिए वर्जनंस चेंज
  5309. 3:31:15होते रहते हैं। अभी मैं कल तो थोड़े दिन
  5310. 3:31:17बाद आऊंगा तो यहां पर 7.0.1 होगा। ठीक है?
  5311. 3:31:21तो स्प्रिंग सिक्योरिटी, स्प्रिंग
  5312. 3:31:22फ्रेमवर्क, स्प्रिंग मोड इनकी जो टीम है
  5313. 3:31:24वो काफी एक्टिव है। अपडेट्स रिलीज़ करती
  5314. 3:31:26रहती है। नए पैचेस आते रहते हैं और चीजों
  5315. 3:31:29में चीजें चलती रहती है यहां पर। ठीक है?
  5316. 3:31:32तो वर्जनंस आपको गारंटीड अलग दिखेगा
  5317. 3:31:34डिपेंडिंग ऑन आप कब यह वीडियो देख रहे हो।
  5318. 3:31:36लेकिन ये है स्प्रिंग सिक्योरिटी और यहां
  5319. 3:31:38पर आप स्प्रिंग सिक्योरिटी के बारे में
  5320. 3:31:39पढ़ भी सकते हो कि ये एक पावरफुल हाइली
  5321. 3:31:42कस्टमाइजेबल ऑथेंटिकेशन और एक्सेस कंट्रोल
  5322. 3:31:44फ्रेमवर्क है। ठीक है? इसमें सबसे ज्यादा
  5323. 3:31:47इंपॉर्टेंट चीज क्या है पता है? हाइली
  5324. 3:31:49कस्टमाइजेबल इसको आप अपने हिसाब से
  5325. 3:31:52कस्टमाइज कर सकते हो। अपने रिक्वायरमेंट्स
  5326. 3:31:54के हिसाब से कस्टमाइज कर सकते हो। और
  5327. 3:31:56इसमें ऑथेंटिकेशन एक्सेस कंट्रोल जैसी
  5328. 3:31:59चीजें आप ऐड कर सकते हो। ठीक है? ठीक है?
  5329. 3:32:00एक्सेस कंट्रोल का मतलब है अगर आप चाहते
  5330. 3:32:02हो कि कोई एपीआई को एडमिन इस्तेमाल करें
  5331. 3:32:05या कोई एपीआई है, कोई एंड पॉइंट है उसको अ
  5332. 3:32:08नॉर्मल यूज़र्स एक्सेस ना करें तो आप ये
  5333. 3:32:10सारी चीजें इंप्लीमेंट कर सकते हो बड़ी
  5334. 3:32:12आसानी से स्प्रिंग सिक्योरिटी की मदद से।
  5335. 3:32:15ठीक है? और ये हिसाब ये एक हिसाब से ना
  5336. 3:32:17स्टैंडर्ड हो चुका है। स्प्रिंग
  5337. 3:32:18सिक्योरिटी जो है स्टैंडर्ड हो चुका है अ
  5338. 3:32:20स्प्रिंग बूट बेस्ड एप्लीकेशन या स्प्रिंग
  5339. 3:32:22बेस्ड एप्लीकेशनेशंस को सिक्योर करने के
  5340. 3:32:24लिए। ठीक है? अगर आप स्प्रिंग बूट का
  5341. 3:32:26इस्तेमाल कर रहे हो, स्प्रिंग फ्रेमवर्क
  5342. 3:32:27का इस्तेमाल कर रहे हो, तो लोग अक्सर
  5343. 3:32:29स्प्रिंग सिक्योरिटी का ही इस्तेमाल करते
  5344. 3:32:31हैं। ठीक है? ये डिफॉल्ट हो गया है। ठीक
  5345. 3:32:33है? और यहां पर देखिए ये एक फ्रेमवर्क है
  5346. 3:32:35जो फोकस करता है ऑथेंटिकेशन ऑथराइजेशन
  5347. 3:32:37प्रोवाइड करने में जावा एप्लीकेशनेशंस को।
  5348. 3:32:40ठीक है? और हमारी ऑल हमारी सारी स्प्रिंग
  5349. 3:32:43बूट प्रोजेक्ट्स स्प्रिंग प्रोजेक्ट्स की
  5350. 3:32:45तरह। ठीक है?
  5351. 3:32:47यह इसकी जो पावर है वह उसी में है कि यह
  5352. 3:32:50कस्टम रिक्वायरमेंट्स को भी मीट करता है।
  5353. 3:32:51तो आप इसमें हाईली चीजों को कस्टमाइज कर
  5354. 3:32:54सकते हो। देखिए रेडीमेड चीज तो आपको मिल
  5355. 3:32:57जाएगी लेकिन ऐसी चीज जिसको आप अपने हिसाब
  5356. 3:33:00से कस्टमाइज कर पाओ ना वो बढ़िया होती है।
  5357. 3:33:02ठीक है? तो स्प्रिंग सिक्योरिटी वहीं पर
  5358. 3:33:05विन करता है। ठीक है? और काफी बढ़िया
  5359. 3:33:07फ्रेमवर्क है। ठीक है? काफी चीजें आप
  5360. 3:33:09इसमें इंप्लीमेंट कर सकते हो। यहां पर
  5361. 3:33:10सारे फीचर्स दिख जाएंगे आपको। और अगर आप
  5362. 3:33:12यहां पर आते हो लर्न पर तो यहां पर देखिए
  5363. 3:33:14लेटेस्ट जो वर्जन है उसका रेफरेंस डॉक
  5364. 3:33:16आपको मिल जाएगा। यहां पर आप रेफरेंस डॉक
  5365. 3:33:18देख सकते हो। ये पूरा का पूरा रेफरेंस डॉक
  5366. 3:33:20है। ठीक है? माइग्रेटिंग टू से ये सारी
  5367. 3:33:22चीजें आपको दिखाई देगी। ठीक है? और यहां
  5368. 3:33:24पर ईपीआई डॉक्यूमेंटेशन भी आपको मिल
  5369. 3:33:25जाएगा। आप इसको भी ओपन कर सकते हो एक अलग
  5370. 3:33:27टैब में। यहां पे सारी की सारी क्लासेस
  5371. 3:33:29अगर आपको कोई क्लास ढूंढने की जरूरत पड़े
  5372. 3:33:32कभी भी अ करियर में डेवलपमेंट के दौरान तो
  5373. 3:33:35ये ऑफिशियल डॉक्यूमेंटेशन है और ये वर्जन
  5374. 3:33:37वाइज़ अपडेट होते हैं। ठीक है? ये देखिए ये
  5375. 3:33:39अभी ये करंट वर्जन का डॉक्यूमेंटेशन है।
  5376. 3:33:41प्रीवियस वर्जन के डॉक्यूमेंटेशंस भी आप
  5377. 3:33:42देख सकते हो यहां पर दिए गए हैं। ठीक है?
  5378. 3:33:45और यहां पर आपको सैंपल वगैरह सपोर्ट मिल
  5379. 3:33:47जाएगा, सैंपल मिल जाएगा। ये सारी चीजें
  5380. 3:33:48यहां पर मिल जाएगी। ठीक है? तो ये ऑफिशियल
  5381. 3:33:51डॉक्यूमेंटेशन है और यहां पर सोर्स कोड भी
  5382. 3:33:53मिल जाएगा और स्टक ओवर फ्ल्लो की लिंक और
  5383. 3:33:56यहां पर लेफ्ट साइड पे आपको अदर
  5384. 3:33:57प्रोजेक्ट्स दिखेंगे। दूसरे जो
  5385. 3:33:58प्रोजेक्ट्स हैं स्प्रिंग के। ठीक है?
  5386. 3:34:00उम्मीद करता हूं आपको यह सम ओवरव्यू कि
  5387. 3:34:04स्प्रिंग सिक्योरिटी है क्या असल में और
  5388. 3:34:07किस तरह से हमारी लाइफ को आसान बनाता है
  5389. 3:34:08वो समझ में आया।
  5390. 3:34:15तो दोस्तों अब आगे बढ़ते हैं और बात करते
  5391. 3:34:17हैं एक इंपॉर्टेंट कांसेप्ट के बारे में
  5392. 3:34:19जो कि है ऑथेंटिकेशन वर्सेस ऑथोराइजेशन।
  5393. 3:34:24ठीक है? तो देखिए अगर आप सिक्योरिटी पे
  5394. 3:34:26काम कर रहे हो तो आपको ये दो टर्मिनोलॉजीस
  5395. 3:34:29कि ऑथेंटिकेशन और ऑथराइजेशन ये कई बार
  5396. 3:34:32सुनाई देगी और मैं चाहता हूं कि मैं इसको
  5397. 3:34:34बढ़िया तरीके से एक्सप्लेन करूं कि इन
  5398. 3:34:36दोनों चीजों का या इन दोनों टर्म्स का
  5399. 3:34:39मतलब क्या है? देखिए सबसे पहले तो ये
  5400. 3:34:41दोनों टर्म्स काफी लोग बिगिनर्स ये गलती
  5401. 3:34:43कर बैठते हैं कि वो समझते हैं कि ये दोनों
  5402. 3:34:45टर्म्स एक ही है। तो सबसे पहले तो ये
  5403. 3:34:48दोनों टर्म्स एक नहीं है। ठीक है?
  5404. 3:34:51ऑथेंटिकेशन का मतलब अलग है और ऑथराइजेशन
  5405. 3:34:53का मतलब अलग है। ठीक है? तो देखिए
  5406. 3:34:56ऑथेंटिकेशन का मतलब क्या है? सबसे पहले तो
  5407. 3:34:58मैं आपको बता देता हूं। ऑथेंटिकेशन का
  5408. 3:34:59मतलब ये है कि आप प्रूफ कर रहे हो कि आप
  5409. 3:35:03कौन हो? ठीक है? अगर आप कौन हो इस बात का
  5410. 3:35:07आप प्रूफ दे रहे हो तो इसका मतलब आप
  5411. 3:35:09ऑथेंटिकेट कर रहे हो खुद को। ठीक है? तो
  5412. 3:35:12एक सिंपल सा एग्जांपल अगर मैं आपको दे
  5413. 3:35:14दूं। देखिए आपका ईमेल अकाउंट होगा। Google
  5414. 3:35:16पे होगा, Microsoft पे होगा। कहीं तो ईमेल
  5415. 3:35:18अकाउंट होगा। ईमेल आप ऐसे ही एक्सेस नहीं
  5416. 3:35:20करते हो। आपको उसके लॉग इन पेज पर जाना
  5417. 3:35:22है। यूजरनेम पासवर्ड डाल के अगर वो सही
  5418. 3:35:25है, मैच करता है तो ही आप ईमेल एक्सेस कर
  5419. 3:35:27सकते हो। सही है? तो यहां पर आप खुद को
  5420. 3:35:31ऑथेंटिकेट कर रहे हो। आप बता रहे हो कि
  5421. 3:35:34मैं यह बंदा हूं जिसका जिसका मेल बॉक्स
  5422. 3:35:37है। ठीक है? मैं पर्सन ए हूं और मैं पर्सन
  5423. 3:35:40ए का यूजरनेम और पासवर्ड डालूंगा और मैं
  5424. 3:35:42पर्सन ए हूं तो मुझे मेरा ईमेल पढ़ना है।
  5425. 3:35:45ठीक है? फॉर एग्जांपल मैं फैसल हूं। मैं
  5426. 3:35:47चाहता हूं मेरा मेल बॉक्स एक्सेस करना तो
  5427. 3:35:49मैं मेरा यूजरनेम, पासवर्ड या ईमेल, ईमेल
  5428. 3:35:51या पासवर्ड जो भी है मैं डालूंगा और मुझे
  5429. 3:35:54मेरे मेल बॉक्स का एक्सेस दिया जाएगा। ठीक
  5430. 3:35:56है? तो मैंने क्या किया? यूजरनेम पासवर्ड
  5431. 3:35:58की मदद से मैंने खुद को ऑथेंटिकेट किया।
  5432. 3:36:00इसका मतलब मैंने खुद को प्रूफ किया कि मैं
  5433. 3:36:03फैसल हूं। और मैं फैसल हूं। इसीलिए ये
  5434. 3:36:07प्रूव हो गया क्योंकि मैंने यूजरनेम
  5435. 3:36:09पासवर्ड दे दिया। वो करेक्ट है। ठीक है?
  5436. 3:36:11तो इसीलिए मुझे मेरे मेल बॉक्स का एक्सेस
  5437. 3:36:14मिला। ठीक है? इसे कहते हैं ऑथेंटिकेशन।
  5438. 3:36:19ठीक है? ऑथेंटिकेशन इसे कहते हैं।
  5439. 3:36:20ऑथेंटिकेशन इज़ लाइक प्रूविंग हु यू आर। आप
  5440. 3:36:24अगर ये प्रूव कर रहे हो कि आप कौन हो? ठीक
  5441. 3:36:26है? इसका प्रूफ दे रहे हो तो आप खुद को
  5442. 3:36:28ऑथेंटिकेट कर रहे हो। तो अब ऑथराइजेशन
  5443. 3:36:30क्या हो गया? ठीक है? ऑथोराइजेशन का मतलब
  5444. 3:36:33क्या है? तो देखिए एक बार आप अगर आपको अगर
  5445. 3:36:37कोई सिस्टम का एक्सेस मिल जाता है। जैसे
  5446. 3:36:39मेल बॉक्स का एक्सेस मिल गया। कोई भी
  5447. 3:36:41सिस्टम का एक्सेस मिल जाता है। ठीक है? उस
  5448. 3:36:43सिस्टम में आप क्या-क्या कर सकते हो वो
  5449. 3:36:46डिक्टेट करता है ऑथराइजेशन।
  5450. 3:36:48ठीक है? तो देखिए आप अगर एक ई-कॉमर्स
  5451. 3:36:52वेबसाइट पे जाते हो तो आप एडमिन रिलेटेड
  5452. 3:36:54एक्शंस नहीं कर सकते हो। क्यों? क्योंकि
  5453. 3:36:56आप ऑथराइज़ नहीं हो एडमिन रिलेटेड एक्सेस
  5454. 3:36:58के लिए। ऑफ कोर्स आपने अपने अकाउंट में
  5455. 3:37:00लॉगिन कर लिया। आपने ऑथेंटिकेट कर लिया
  5456. 3:37:02खुद को। लेकिन आप एडमिन पैनल का एक्सेस
  5457. 3:37:06नहीं कर पा रहे हो। इसका मतलब यू आर नॉट
  5458. 3:37:08ऑथराइज्ड टू एक्सेस दैट। तो ऑथेंटिकेट तो
  5459. 3:37:11आप हो चुके हो। यह प्रूव हो चुका है कि आप
  5460. 3:37:13फैसल हो। आप ऑथेंटिकेट हो चुके हो
  5461. 3:37:15ई-कॉमर्स वेबसाइट में। लेकिन आप एडमिन
  5462. 3:37:17पैनल को एक्सेस नहीं कर पा रहे हो। इसका
  5463. 3:37:19मतलब यू आर नॉट ऑथराइज। तो यहां पर ये
  5464. 3:37:21ऑथराइजेशन का कांसेप्ट आ जाता है। ठीक है?
  5465. 3:37:23मैं आपको और बढ़िया तरीके से एक्सप्लेन कर
  5466. 3:37:25देता हूं। देखिए समझ जाइए। ये एक तरीके का
  5467. 3:37:30बिल्डिंग है। ठीक है? एक बिल्डिंग सी बना
  5468. 3:37:31देता हूं। ऐसी बिल्डिंग है। ठीक है? अब
  5469. 3:37:33इसमें मल्टीपल फ्लोर्स हैं। ठीक है?
  5470. 3:37:35मल्टीपल सेक्शंस हैं। मान लीजिए। तो यहां
  5471. 3:37:37पे एक सेक्शन है। ठीक है? फिर यहां पर एक
  5472. 3:37:40सेक्शन है। और मान लीजिए यहां पर एक
  5473. 3:37:44सेक्शन है। ठीक है? अब आप यहां से एंटर
  5474. 3:37:47करते हो। ठीक है? आपने यहां से एंटर किया।
  5475. 3:37:49यहां से एंटर करने के बाद आपने खुद का
  5476. 3:37:51एक्सेस कार्ड यहां पर लगाया। करेक्ट? यहां
  5477. 3:37:54पर एक छोटा सा एक्सेस कार्ड डालने की जगह
  5478. 3:37:55है। आपने खुद का एक्सेस कार्ड लगाया और आप
  5479. 3:37:57बिल्डिंग के अंदर एंटर हो गए। अब अगर आपने
  5480. 3:38:01जो एक्सेस कार्ड लगाया उससे हुआ क्या?
  5481. 3:38:03उससे आप ऑथेंटिकेट हुए। ऑथेंटिकेट का मतलब
  5482. 3:38:07अच्छा फैसल को बिल्डिंग के अंदर जाना है
  5483. 3:38:08क्योंकि फैसल के पास एक्सेस कार्ड है।
  5484. 3:38:10इसका मतलब यह फैसल है जो एंट्री कर रहा
  5485. 3:38:12है। करेक्ट और मैंने एक्सेस कार्ड ऐसे
  5486. 3:38:14दरवाजे पर लगा दिया और दरवाजा खुल गया और
  5487. 3:38:17मैं अंदर हूं। तो मैं ऑथेंटिकेटेड हूं अब।
  5488. 3:38:20ठीक है? मैंने खुद को ऑथेंटिकेट कर लिया।
  5489. 3:38:22अब मैं एक नॉर्मल ह्यूमन हूं। ठीक है? हो
  5490. 3:38:24सकता है यहां पर कोई एक रेस्ट्रिक्टेड
  5491. 3:38:26सेक्शन हो। ठीक है? वहां पे जाना अलाउड ना
  5492. 3:38:29हो। जैसे कि मान लीजिए यहां पर फ़ाइनेंस
  5493. 3:38:31डिपार्टमेंट हो या कुछ यू नो किसी की शॉप
  5494. 3:38:34है या कुछ कुछ भी हो वहां पे जाना अलाउड
  5495. 3:38:37नहीं है मुझको। ठीक है? तो मान लीजिए अगर
  5496. 3:38:39यह ऑफिस होता ऑफिस होता और मैंने खुद को
  5497. 3:38:42ऑथेंटिकेट कर लिया यहां पर। मैं ऑफिस के
  5498. 3:38:44अंदर घुस गया हूं। और यहां पर एक एडमिन
  5499. 3:38:46डिपार्टमेंट है या फाइनेंस डिपार्टमेंट
  5500. 3:38:48है। ठीक है? एडमिन डिपार्टमेंट में जाना
  5501. 3:38:50ऐसे अलाउड नहीं है। तो मेरे पास एक्सेस
  5502. 3:38:54होते हुए भी एक्सेस कार्ड होते हुए भी मैं
  5503. 3:38:56एडमिन डिपार्टमेंट में एंटर नहीं कर
  5504. 3:38:58पाऊंगा। ठीक है? मैं एडमिन डिपार्टमेंट के
  5505. 3:39:00पास जा रहा हूं और एक्सेस कार्ड को लगा
  5506. 3:39:02रहा हूं एडमिन डिपार्टमेंट के दरवाजे पर।
  5507. 3:39:04वो देख रहा है। अच्छा यह फैजल है। एंटर
  5508. 3:39:06करने की कोशिश कर रहा है। लेकिन इसको अलाउ
  5509. 3:39:07नहीं करना है। करेक्ट? तो मुझे एक एरर भी
  5510. 3:39:09पाएगी वहां पे टीटी एरर भी पाएगी और वो
  5511. 3:39:12कहेगा कि नॉट नॉट दिस इज़ अ रेस्ट्रिक्टेड
  5512. 3:39:14एरिया। ठीक है? तो यहां पर हो क्या रहा
  5513. 3:39:16है? इस दरवाजे पर एडमिन एरिया के दरवाजे
  5514. 3:39:18पर मुझे ऑथेंटिकेट तो किया जा रहा है।
  5515. 3:39:20सिस्टम को समझ में आ रहा है। अच्छा ये
  5516. 3:39:22फैसल है। लेकिन मुझे दरवाजे के अंदर नहीं
  5517. 3:39:24जाने दे दिया जा रहा। दरवाजे को पार नहीं
  5518. 3:39:27कर पा रहा मैं। क्यों? क्यों? क्योंकि मैं
  5519. 3:39:28ऑथराइज नहीं हूं। अलाउड नहीं है अंदर जाना
  5520. 3:39:31मुझे। ठीक है? क्योंकि मैं एडमिन
  5521. 3:39:33डिपार्टमेंट को बिलोंग नहीं करता। ये
  5522. 3:39:34सिस्टम को पता है। तो सिस्टम मुझे
  5523. 3:39:36ऑथेंटिकेट तो कर पा रहा है। अच्छा कि ये
  5524. 3:39:39फैसल है। और सिस्टम को ये भी पता है कि ये
  5525. 3:39:42ऑथराइज़ नहीं है क्योंकि ये एडमिन
  5526. 3:39:45डिपार्टमेंट है। करेक्ट? तो ये
  5527. 3:39:47रेस्ट्रिक्टेड एरिया है। तो यहां पर ये
  5528. 3:39:48अलाउड नहीं है। तो मुझे एरर दी जा रही है।
  5529. 3:39:50तो ये हो गया ऑथराइज़ेशन इन एक्शन। ठीक है?
  5530. 3:39:52तो यहां पर हो क्या रहा है? ऑथेंटिकेशन और
  5531. 3:39:54ऑथराइजेशन दोनों साथ में काम करके ये
  5532. 3:39:57डिसाइड कर रहे हैं कि किसको एक्सेस है और
  5533. 3:39:58किसको नहीं है। ठीक है? तो ये होता है
  5534. 3:40:01ऑथेंटिकेशन और ऑथराइजेशन। ठीक है?
  5535. 3:40:04ऑथेंटिकेशन का मतलब आप मैंने मेरी आईडी जो
  5536. 3:40:07है यानी कि एक्सेस कार्ड उसको स्कैन कर
  5537. 3:40:09दिया। तो सिस्टम को पता चल गया अच्छा ये
  5538. 3:40:10फैसल है। ऑथराइजेशन का मतलब आइडेंटिटी
  5539. 3:40:14कंफर्म होने के बाद कि अच्छा ये फैसल है।
  5540. 3:40:16क्या इस एक्सेस है इस एरिया का? यहां पर
  5541. 3:40:18दरवाजे पर तो एक्सेस था यहां पर नीचे दरवा
  5542. 3:40:20मेन डोर पर। ठीक है? क्योंकि ये ऑफिस का
  5543. 3:40:23एक्सेस है मुझे तो मैं अंदर चला गया।
  5544. 3:40:25लेकिन यहां पर एक्सेस नहीं था। तो यहां पर
  5545. 3:40:27ऑथेंटिकेशन के बाद अच्छा उसने चेक किया कि
  5546. 3:40:29अच्छा अंदर आने के लिए अलाउड है। अलाउड है
  5547. 3:40:32तो आ जाइए अंदर। दरवाजा खुल गया। यहां पर
  5548. 3:40:35मुझे ऑथेंटिकेट तो कर लिया उसने लेकिन
  5549. 3:40:37ऑथराइजेशन के टाइम पे मुझे मना कर दिया
  5550. 3:40:39उसने। उसने बोला नहीं भाई तो अलाउड नहीं
  5551. 3:40:41है। अलाउड नहीं है बोल के मुझे अलाउ नहीं
  5552. 3:40:44किया गया। तो यहां पर ऑथेंटिकेशन और
  5553. 3:40:45ऑथराइजेशन दोनों अलग कांसेप्ट है। ठीक है?
  5554. 3:40:49उम्मीद करता हूं आपको ये समझ में आया। ये
  5555. 3:40:51समझना जरूरी है क्योंकि आगे चलके जब भी आप
  5556. 3:40:53स्प्रिंग सिक्योरिटी या कोई भी एप्लीकेशन
  5557. 3:40:55का की आप बात करो आप अगर उसमें ऑथेंटिकेशन
  5558. 3:40:58बना रहे हो लॉग इन फॉर्म बना रहे हो तो
  5559. 3:40:59आपको ये दोनों कांसेप्ट आना जरूरी है। मैं
  5560. 3:41:03एक और चीज़ बता दूं ये जावा स्पेसिफिक
  5561. 3:41:05कॉन्सप्ट कांसेप्ट नहीं है। ये जेनेरिक
  5562. 3:41:07कांसेप्ट है। ठीक है? अगर आप कल को नोट js
  5563. 3:41:09की एप्लीकेशन बनाते हो। नोट js का बैक एंड
  5564. 3:41:12बनाते हो, फ्रंट एंड बनाते हो या आप गो
  5565. 3:41:14लैंग में बनाते हो या आप कोई और लैंग्वेज
  5566. 3:41:17यूज़ करते हो। Python में बनाते हो। ठीक
  5567. 3:41:18है? Java में बनाते हो। कोई भी लैंग्वेज
  5568. 3:41:20में बनाए हो ऑथेंटिकेशन और ऑथराइजेशन का
  5569. 3:41:22कांसेप्ट सभी जगह होता है और आप कोई भी
  5570. 3:41:26एप्लीकेशन बनाओ सिक्योरिटी अगर आप उसमें
  5571. 3:41:28इंप्लीमेंट कर रहे हो तो ऑथेंटिकेशन क्या
  5572. 3:41:29है? ऑथराइजेशन क्या है? ये सारी चीजें
  5573. 3:41:32समझना काफी जरूरी है क्रिस्टल क्लियर
  5574. 3:41:34तरीके से क्योंकि आगे चलके ये
  5575. 3:41:36टर्मिनोलॉजीस काफी इस्तेमाल होती है कि
  5576. 3:41:38ऑथेंटिकेशन क्या है? ऑथराइजेशन क्या है?
  5577. 3:41:40या यूजर ऑथराइज़ नहीं है। क्या आपने यूजर
  5578. 3:41:43को ऑथेंटिकेट किया है या नहीं? तो ये सारी
  5579. 3:41:45जो टर्मिनोलॉजीस है ये समझना काफी जरूरी
  5580. 3:41:47है। ठीक है? अगर हम एप्लीकेशन की बात करें
  5581. 3:41:49तो देखिए ये एक एप्लीकेशन है सॉफ्टवेयर
  5582. 3:41:51एप्लीकेशन। ठीक है? यहां पे है एक नॉर्मल
  5583. 3:41:55यूजर मॉड्यूल। ठीक है? मान लीजिए और यहां
  5584. 3:41:58पर है एक एडमिन मॉड्यूल। ठीक है? अब मैं
  5585. 3:42:01एज अ यूजर अगर ऑथेंटिकेट करता हूं यहां
  5586. 3:42:03पर। ठीक है? मैं एज अ यूजर अगर ऑथेंटिकेट
  5587. 3:42:06करता हूं तो मुझे मैं मैं नॉर्मल यूजर
  5588. 3:42:09हूं। मेरा रोल क्या है? मैं नॉर्मल यूजर
  5589. 3:42:10हूं। ठीक है? तो मैं ये जो यूजर मॉड्यूल
  5590. 3:42:13है उसकी एपीआई को एक्सेस कर सकता हूं। ठीक
  5591. 3:42:16है? लेकिन क्या एडमिन एपीआई को एक्सेस
  5592. 3:42:18करने का रोल है मेरे पास या ऑथराइज्ड हूं
  5593. 3:42:21मैं? नहीं। तो अगर मैं एक्सेस करना चाहूं
  5594. 3:42:23तो मुझे एरर आएगी। ठीक है? अगर मैं एडमिन
  5595. 3:42:26की तरह लॉगिन करता हूं सिस्टम में एडमिन
  5596. 3:42:28यूजरनेम पासवर्ड से तो मैं यूजर को भी
  5597. 3:42:30एक्सेस कर सकता हूं और एडमिन को भी एक्सेस
  5598. 3:42:32कर सकता हूं। ठीक है? तो यहां पर
  5599. 3:42:33ऑथराइजेशन काम में आता है। एक नॉर्मल यूजर
  5600. 3:42:36को एडमिन एपीआई का एक्सेस नहीं होगा। और
  5601. 3:42:38अगर एडमिन लॉग इन करता है तो उसको एडमिन
  5602. 3:42:40और यूजर दोनों का एक्सेस होगा। ठीक है? ये
  5603. 3:42:42हो गया ऑथराइजेशन। ऑथेंटिकेशन मतलब आपको
  5604. 3:42:46आपने यूजरनेम पासवर्ड डालकर खुद को
  5605. 3:42:48ऑथेंटिकेट कर लिया और आइडेंटिफाई सिस्टम
  5606. 3:42:50ने आइडेंटिफाई कर लिया आपको। ऑथराइजेशन
  5607. 3:42:52मतलब इसको किस चीज का एक्सेस है, किस चीज
  5608. 3:42:54का नहीं है। ठीक है? उम्मीद करता हूं इतना
  5609. 3:42:57समझ में आया आपको। ठीक है? अब देखिए आप जब
  5610. 3:43:00कभी भी अ एपीआईस बनाते हो। ठीक है? आप कभी
  5611. 3:43:04भी एपीआई बनाते हो तो एक लीस्ट प्रिंसिपल
  5612. 3:43:08लीस्ट प्रिविलेज प्रिंसिपल का। ठीक है?
  5613. 3:43:11मैं लिख देता हूं यहां पे लीस्ट
  5614. 3:43:15प्रिविलेज।
  5615. 3:43:18ठीक है? लीस्ट लीस्ट प्रिविलेज का मतलब
  5616. 3:43:20क्या है? देखिए आप कभी भी कोई भी एपीआई
  5617. 3:43:23बनाते हो या किसी को भी एक्सेस देते हो।
  5618. 3:43:26ठीक है? तो आप एक्सेस क्यों दोगे? क्योंकि
  5619. 3:43:28उसको एक टास्क करने का अ टास्क करने का
  5620. 3:43:32परमिशन होना चाहिए। राइट? तो आपको लीस्ट
  5621. 3:43:35एक्सेस देना है। लीस्ट एक्सेस। सबसे छोटे
  5622. 3:43:38लेवल का जो एक्सेस है वह देना है। यह एक
  5623. 3:43:40इंपॉर्टेंट प्रिंसिपल है। ठीक है? आप जभी
  5624. 3:43:42भी एक्सेस अह बेस्ड सिस्टम्स बनाते हो, तो
  5625. 3:43:45लीस्ट प्रिविलेज हमेशा देना है और बस
  5626. 3:43:48इसमें ऐसा कुछ बड़ी चीज नहीं है। लेकिन ये
  5627. 3:43:50समझना जरूरी है कि ये क्यों देना है। ठीक
  5628. 3:43:52है? क्योंकि अ अगर किसी टाइप का
  5629. 3:43:54सिक्योरिटी ब्रीच होता है तो अगर आप अपने
  5630. 3:43:57हर यूजर का एक्शंस को लिमिट करते हो तो जो
  5631. 3:44:00ब्रीच का इंपैक्ट होगा वो काफी कम होगा।
  5632. 3:44:02ठीक है? तो उम्मीद करता हूं कि ये
  5633. 3:44:05हेल्पफुल रहा। ठीक है? ये कुछ कांसेप्ट्स
  5634. 3:44:08थे जो मैं चाहता था कि आप सभी को समझ में
  5635. 3:44:10आए।
  5636. 3:44:17तो दोस्तों वेलकम करना चाहूंगा इस वीडियो
  5637. 3:44:19में और इस वीडियो में हम बात करने वाले
  5638. 3:44:21हैं स्प्रिंग सिक्योरिटी के आर्किटेक्चर
  5639. 3:44:24के बारे में। अब देखिए अ आर्किटेक्चर हम
  5640. 3:44:27इसीलिए सीख रहे हैं, समझ रहे हैं ताकि हम
  5641. 3:44:29स्प्रिंग सिक्योरिटी को बेहतर तरीके से
  5642. 3:44:31जाने और यह समझे कि वो इंटरनली किस तरीके
  5643. 3:44:34से काम करता है। लेकिन जो बिगिनर्स हैं
  5644. 3:44:36मैं जानता हूं अक्सर बिगिनर्स जो ये
  5645. 3:44:38वीडियो देख रहे हैं उनके दिमाग में ऐसा
  5646. 3:44:40क्वेश्चन आता होगा कि हमें अ स्प्रिंग
  5647. 3:44:43सिक्योरिटी का आर्किटेक्चर क्यों समझना
  5648. 3:44:44है? डायरेक्टली यूज़ कर लेते हैं ना उसको।
  5649. 3:44:46अ सिक्योरिटी तो अप्लाई हो जाएगी हमारी
  5650. 3:44:48एप्लीकेशन में। जी हां, अप्लाई हो जाएगी।
  5651. 3:44:51लेकिन अगर आप एक सीरियस डेवलपर बनना चाहते
  5652. 3:44:53हो, आगे चलकर अ आप अगर स्प्रिंग
  5653. 3:44:56सिक्योरिटी में एडवांस काम करना चाहते हो,
  5654. 3:44:57एडवांस प्रोडक्शन ग्रिड एप्लीकेशनेशंस
  5655. 3:44:59बनाना चाहते हो, तो उसमें स्प्रिंग
  5656. 3:45:01सिक्योरिटी के एडवांस फीचर्स भी इस्तेमाल
  5657. 3:45:03होंगे। ठीक है? और लॉन्ग टर्म में आपको
  5658. 3:45:06इंटरनली स्प्रिंग सिक्योरिटी कैसे काम
  5659. 3:45:08करता है यह समझना बहुत जरूरी है। क्योंकि
  5660. 3:45:10यहां पर जो टर्मिनोलॉजीस आप देख रहे हो
  5661. 3:45:12जैसे कि फिल्टर चेन, सिक्योरिटी
  5662. 3:45:14कॉन्टेक्स्ट ये सारी जो टर्मिनोलॉजीस है
  5663. 3:45:17ये आपको आपकी टीम में काफी सुनाई देंगे।
  5664. 3:45:20ठीक है? फ़्टर चेन, फ़िल्टर्स, अ सिक्योरिटी
  5665. 3:45:23कॉन्टेक्स्ट और एरर्स में भी आपको दिखाई
  5666. 3:45:25देगी। अगर आपको कोई एरर आता है, आप कोई
  5667. 3:45:27कोड रन कर रहे हो और सिक्योरिटी रिलेटेड
  5668. 3:45:28कोई एरर आता है, कोई बग आता है, तो उसमें
  5669. 3:45:30भी ये टर्मिनोलॉजीस दिखाई देगी। तो आपको
  5670. 3:45:32ये समझना जरूरी है कि स्प्रिंग सिक्योरिटी
  5671. 3:45:35इंटरनली काम कैसे करता है। कौन से-कौ से
  5672. 3:45:37कंपोनेंट्स होते हैं? हर कंपोनेंट का क्या
  5673. 3:45:39रोल है? कौन से कंपोनेंट क्यों बिल्ड किए
  5674. 3:45:42गए हैं। ठीक है? तो ये सारी चीजें समझना
  5675. 3:45:44जरूरी है। और देखिए स्प्रिंग सिक्योरिटी
  5676. 3:45:46के आर्किटेक्चर पे तो आपको बहुत सारी
  5677. 3:45:48इनेशन ऑनलाइन मिल जाएगी। लेकिन मेरा गोल
  5678. 3:45:51इस वीडियो में ये है कि मैं बिगिनर
  5679. 3:45:52फ्रेंडली इन कंपोनेंट्स को इस आर्किटेक्चर
  5680. 3:45:55को ब्रेकडाउन करूं और एकदम आसान शब्दों
  5681. 3:45:58में आपको समझाऊं। ठीक है? तो शुरू करते
  5682. 3:46:00हैं। देखिए सबसे पहले तो इस डायग्राम में
  5683. 3:46:02यहां पर जो मैंने बनाया है सिंपल सा
  5684. 3:46:04डायग्राम है। यहां पर राइट साइड पर आपको
  5685. 3:46:06आपकी एप्लीकेशन के सारे के सारे
  5686. 3:46:07कंट्रोलर्स दिखाई देंगे। ठीक है? अभी
  5687. 3:46:09फिलहाल एक ही रेक्टेंगल डाला है लेकिन
  5688. 3:46:11यहां पर समझ लीजिए बहुत सारे कंट्रोलर्स
  5689. 3:46:13हैं आपके पास। ठीक है? तो कंट्रोलर्स यहां
  5690. 3:46:15पर है और कंट्रोलर्स के बाद में है सर्विस
  5691. 3:46:17लेयर, रेपोज़िटरी लेयर, डेटाबेस वो सब इसके
  5692. 3:46:20बाद है। ठीक है? यहां पर मैं कंट्रोलर तक
  5693. 3:46:22ही मैंने डायग्राम को स्टॉप कर दिया है।
  5694. 3:46:24ठीक है? अब आपने अगर स्प्रिंग सिक्योरिटी
  5695. 3:46:27की डिपेंडेंसी ऐड कर रखी है अपने
  5696. 3:46:30एप्लीकेशन में तो स्प्रिंग सिक्योरिटी की
  5697. 3:46:32एक डिपेंडेंसी आती है। अगर वो आपने ऐड कर
  5698. 3:46:34रखी है। स्प्रिंग सिक्योरिटी को कॉन्फ़िगर
  5699. 3:46:35कर रखा है तो कंट्रोलर्स के पहले ये सारी
  5700. 3:46:39चीजें आएंगी। ठीक है? ये दोनों। ठीक है?
  5701. 3:46:41तो ये क्या है? सबसे पहले तो देखिए यहां
  5702. 3:46:43पर ये जो दो एरो देख रहे हो आप कि ये
  5703. 3:46:46रिक्वेस्ट है। रिक्वेस्ट आ रही है आपकी
  5704. 3:46:48एप्लीकेशन में और यहां से यहीं से
  5705. 3:46:49रिस्पांस भी जा रहा है। ठीक है? तो ये
  5706. 3:46:52रिक्वेस्ट आपकी एप्लीकेशन की ओर आ रही है।
  5707. 3:46:53तो ये अब रिक्वेस्ट डायरेक्टली कंट्रोलर
  5708. 3:46:55के पास नहीं आएगी। अगर आपने स्प्रिंग
  5709. 3:46:57सिक्योरिटी कॉन्फ़िगर कर रखा है तो। सबसे
  5710. 3:46:59पहले उस उसका वेलकम होगा फिल्टर चेन के
  5711. 3:47:04थ्रू। ठीक है? अब फ़्टर चेन क्या है भाई?
  5712. 3:47:06ये तो कुछ नया सुनने मिल गया। करेक्ट। तो
  5713. 3:47:08देखिए फ़्टर चेन एक ऐसा कंपोनेंट है या मैं
  5714. 3:47:12कहूंगा फ़्टर चेन का मतलब है सीरीज ऑफ़
  5715. 3:47:14फ़िल्टर्स। अब फ़्टर्स क्या होता है? ये भी
  5716. 3:47:17नहीं पता आपको। ठीक है? तो ये जो अंदर में
  5717. 3:47:19रेक्टेंगल्स आप देख रहे हो ये सारे
  5718. 3:47:21रेक्टेंगल्स मैंने तीन ही बनाए हैं लेकिन
  5719. 3:47:22बहुत सारे होने चाहिए आइडली यहां पर। ठीक
  5720. 3:47:24है? तो ये सारे है फिल्टर्स। तो ये एक
  5721. 3:47:28रेक्टेंगल का मतलब है एक फ़्टर। ठीक है? और
  5722. 3:47:30फ़्टर का मतलब क्या है? फ़्टर का मतलब है
  5723. 3:47:33सिक्योरिटी चेक। तो ये एक फ़्टर है जो कोई
  5724. 3:47:37एक चीज़ चेक करेगा। फिर ये दूसरा फ़िल्टर
  5725. 3:47:39आएगा। यह कुछ दूसरी चीज़ चेक करेगा
  5726. 3:47:41रिक्वेस्ट में। तीसरा फ़िल्टर आएगा। तीसरी
  5727. 3:47:43चीज़ चेक करेगा। चौथा फ़्टर चौथी चीज़ चेक
  5728. 3:47:46करेगा। और ऐसे करके हर फिल्टर कोई एक तरह
  5729. 3:47:49की चेक इस रिक्वेस्ट पर करेंगे। ठीक है?
  5730. 3:47:52तो ये एक सीरीज ऑफ फिल्टर्स है। ठीक है?
  5731. 3:47:55तो इतना समझ में आ गया कि फिल्टर्स क्या
  5732. 3:47:57है? फिल्टर्स एक तरीके का देखिए फ़्टर्स है
  5733. 3:47:59ना जा यहां पर स्प्रिंग सिक्योरिटी में एक
  5734. 3:48:02क्लास के फॉर्म में लिखे गए हैं। ये एक
  5735. 3:48:03पीस ऑफ़ कोड है जो रिक्वेस्ट में कोई एक
  5736. 3:48:07चीज़ चेक करने के लिए रिस्पांसिबल है। तो
  5737. 3:48:09एक फ़िल्टर एक चीज़ चेक करेगा। ठीक है? और
  5738. 3:48:12अलग-अलग तरह के सिक्योरिटी चेकक्स होते
  5739. 3:48:13हैं। तो हर चेक के लिए एक फ़िल्टर बनाया
  5740. 3:48:17गया है। ठीक है? तो मैं फ़्टर्स के बारे
  5741. 3:48:19में बात करूंगा। कुछ आपको एग्जांपल
  5742. 3:48:21फिल्टर्स के बारे में भी बताऊंगा। ठीक है?
  5743. 3:48:23लेकिन अभी के लिए ये समझ लीजिए एक फ़्टर एक
  5744. 3:48:25सिक्योरिटी चेक के लिए। ठीक है? और
  5745. 3:48:28स्प्रिंग सिक्योरिटी में ऐसे सीरीज ऑफ़
  5746. 3:48:30फ़िल्टर्स हैं। ठीक है? सीरीज ऑफ़ फ़िल्टर्स
  5747. 3:48:32मतलब ऑर्डर में है सब के सब। ठीक है? और
  5748. 3:48:34ये सीरीज ऑफ़ फ़िल्टर्स को ग्रुप करके कहा
  5749. 3:48:36जाता है फ़्टर चेन। क्योंकि यह एक के बाद
  5750. 3:48:39एक एग्ज़क्यूट होते हैं। जब भी रिक्वेस्ट
  5751. 3:48:40हिट होती है, तो एक के बाद एक एग्ज़क्यूट
  5752. 3:48:43होते हैं। सिक्योरिटी चेकक्स होती है। ठीक
  5753. 3:48:45है? एक के बाद एक हर एक फ़िल्टर अ अपनी चीज़
  5754. 3:48:49चेक करता है और फिर रिक्वेस्ट को आगे जाने
  5755. 3:48:51देता है। ठीक है? तो इसीलिए ये चेन के
  5756. 3:48:53फॉर्म में है। तो इसीलिए इसे फ़्टर चेन कहा
  5757. 3:48:55जाता है क्योंकि ये चेन ऑफ़ फ़िल्टर्स है।
  5758. 3:48:57ठीक है? उम्मीद करता हूं ये समझ में आ रहा
  5759. 3:48:59है आपको। ठीक है? तो सिक्योरिटी स्प्रिंग
  5760. 3:49:02सिक्योरिटी फिल्टर चेन का मतलब क्या है?
  5761. 3:49:04यह एक सीरीज ऑफ सिक्योरिटी चेकक्स है जो
  5762. 3:49:08आपके कंट्रोलर तक रिक्वेस्ट पहुंचने से
  5763. 3:49:11पहले रन होती है। सिंपल इंटरव्यू में भी
  5764. 3:49:14अगर पूछा जाए आप इस तरीके से उसको जवाब दे
  5765. 3:49:17सकते हो। ठीक है? इंटरव्यू में इस तरीके
  5766. 3:49:18से जवाब दे सकते हो। तो ये हो गया फ़्टर
  5767. 3:49:21चेन का मतलब। अब देखिए फ़्टर चेन में कौन
  5768. 3:49:24से कौन से फ़्टर्स हैं वो मैं आपको बता
  5769. 3:49:26देता हूं। ठीक है? थोड़े इंपॉर्टेंट
  5770. 3:49:27फ़िल्टर्स हैं। तो सबसे पहले एक फ़िल्टर है
  5771. 3:49:29यूजरनेम पासवर्ड ऑथेंटिकेशन फ़्टर। ठीक है?
  5772. 3:49:34यूजरनेम, पासवर्ड, ऑथेंटिकेशन फ़िल्टर।
  5773. 3:49:36देखिए, अगर आपने स्प्रिंग सिक्योरिटी
  5774. 3:49:37कॉन्फ़िगर कर रखा है तो हो सकता है आपने
  5775. 3:49:42यूजरनेम और पासवर्ड का ऑथेंटिकेशन इनेबल
  5776. 3:49:44कर रखा हो। और अगर यूजरनेम, पासवर्ड
  5777. 3:49:45ऑथेंटिकेशन इनेबल्ड है, तो कोई एक पीस ऑफ़
  5778. 3:49:48कोड होना चाहिए जो यह यूजरनेम, पासवर्ड
  5779. 3:49:50करेक्ट है या नहीं, वो देखना चाहिए।
  5780. 3:49:52करेक्ट? तो, यह जो फ़िल्टर है, यूजरनेम,
  5781. 3:49:55पासवर्ड, ऑथेंटिकेशन फ़िल्टर, यह यूज़रनेम,
  5782. 3:49:57पासवर्ड को वैलिडेट करता है कि यह करेक्ट
  5783. 3:49:59है या नहीं। यह उस फिल्टर का काम है।
  5784. 3:50:01दूसरा फिल्टर है ऑथराइजेशन फिल्टर। तो, वह
  5785. 3:50:04चेक करेगा रोल्स और परमिशंस कि रिक्वेस्ट
  5786. 3:50:06में रोल्स और परमिशन सही है या नहीं। आगे
  5787. 3:50:08जा रही है रिक्वेस्ट। करेक्ट। सीएसआरएफ
  5788. 3:50:11फ़्टर है एक। सीएसआरएफ फ़्टर सीएसआरएफ
  5789. 3:50:13अटैक्स के अगेंस्ट एप्लीकेशन को प्रोटेक्ट
  5790. 3:50:15करता है। ठीक है? आप सीएसआरएफ अटैक्स के
  5791. 3:50:18बारे में पढ़ सकते हो Google करके ऑनलाइन।
  5792. 3:50:20कॉर्स फ़्टर। तो कोर्स रिलेटेड जो
  5793. 3:50:23सिक्योरिटी फीचर होता है, उसको हैंडल करने
  5794. 3:50:25के लिए भी एक कॉर्स का अलग फ़िल्टर होता
  5795. 3:50:26है। ठीक है? एक होता है जेडब्ल्यूटी
  5796. 3:50:29फ़िल्टर बेसिक ऑथेंटिकेशन फ़िल्टर। तो जैसे
  5797. 3:50:30जब भी आप JWT ऑथेंटिकेशन इंप्लीमेंट करते
  5798. 3:50:33हो अपने एप्लीकेशन में। ठीक है? तो वहां
  5799. 3:50:35पर ये JWT फ़िल्टर काम में आता है। अब JWT
  5800. 3:50:38ऑथेंटिकेशन है क्या? ये एक तरीके का
  5801. 3:50:40ऑथेंटिकेशन मैकेनिज़्म है टोकन बेस्ड। ठीक
  5802. 3:50:42है? अगर आपको नहीं पता है तो पता है तो
  5803. 3:50:44बढ़िया है। नहीं पता है तो टोकन बेस्ड
  5804. 3:50:46ऑथेंटिकेशन को JWT ऑथेंटिकेशन बोलते हैं।
  5805. 3:50:49ये एक टाइप का ऑथेंटिकेशन मेथड है। ठीक
  5806. 3:50:51है? तो अलग-अलग टाइप के फ़िल्टर्स होते
  5807. 3:50:53हैं। अब होता क्या है? देखिए यूजर एक बार
  5808. 3:50:55ऑथेंटिकेट हो जाता है यहां पर फ़्टर चेन
  5809. 3:50:57में तो उसकी जो आइडेंटिटी है ठीक है उसकी
  5810. 3:51:01जो आइडेंटिटी है कि ये यूजर कौन है उसको
  5811. 3:51:04स्टोर किया जाता है सिक्योरिटी
  5812. 3:51:06कॉन्टेक्स्ट में ठीक है उसको स्टोर किया
  5813. 3:51:08जाता है कहां सिक्योरिटी कॉन्टेक्स्ट में
  5814. 3:51:10अब स्प्रिंग सिक्योरिटी कॉन्टेक्स्ट का ये
  5815. 3:51:13काम है कि जो भी ऑथेंटिकेटेड यूजर है
  5816. 3:51:16लॉक्ड इन यूजर है उसकी ऑथेंटिकेशन डिटेल्स
  5817. 3:51:20ठीक है ऑथेंटिकेशन डिटेल्स और ऑथराइजेशन
  5818. 3:51:22डिटेल्स को स्टोर करता है। तो देखिए
  5819. 3:51:25एग्जांपल देता हूं। आपने एक एप्लीकेशन में
  5820. 3:51:27लॉगिन कर दिया। यूजरनेम पासवर्ड डाल दिया।
  5821. 3:51:29यूजरनेम पासवर्ड सही आ गया। यूजरनेम
  5822. 3:51:32पासवर्ड सही है तो आप ऑथेंटिकेटेड और
  5823. 3:51:35ऑथराइज़्ड यूजर हो। ठीक है? तो आपकी जो
  5824. 3:51:37ऑथेंटिकेटेड ऑथेंटिकेशन डिटेल्स है और
  5825. 3:51:40ऑथराइजेशन डिटेल्स है। ऑथराइजेशन डिटेल्स
  5826. 3:51:42का मतलब आपको किस-किस लेवल का एक्सेस है।
  5827. 3:51:45ये सारी चीजें सिक्योरिटी कॉन्टेक्स्ट में
  5828. 3:51:46स्टोर हो जाती है। ताकि बार-बार अगर
  5829. 3:51:48रिक्वेस्ट आए तो हर बार उसको यूजरनेम
  5830. 3:51:50पासवर्ड ना पूछा जाए। तो वो एक हिसाब से
  5831. 3:51:52मेमोरी की तरह स्टोर हो जाती है यहां पर।
  5832. 3:51:54ठीक है? और हर कोई यानी कि ये रिक्वेस्ट
  5833. 3:51:56आगे तो हर कोई सिक्योरिटी कंटक्स्ट में से
  5834. 3:51:59एक्सेस कर सकता है ये ऑथेंटिकेशन डिटेल्स
  5835. 3:52:01को। ठीक है? तो सिक्योरिटी कंटक्स्ट एक
  5836. 3:52:03ऐसी चीज़ एक एक हिसाब से यहां पे अ जो
  5837. 3:52:08अ जो लॉक्ड इन यूजर है उसकी डिटेल्स को
  5838. 3:52:11स्टोर किया जाता है। ठीक है?
  5839. 3:52:13फिर उसके बाद आता है अगर यूजर लॉक्ड इन
  5840. 3:52:17है। देखिए अगर यूजर वैलिड नहीं है यानी कि
  5841. 3:52:19यूजरनेम पासवर्ड आपने गलत दे दिया या टोकन
  5842. 3:52:21गलत है। ऑथेंटिकेशन इनेशन गलत है तो यहीं
  5843. 3:52:24पर रिक्वेस्ट को रिजेक्ट किया जाता है और
  5844. 3:52:25वापस भेज दिया जाता है। कंट्रोलर तक तो
  5845. 3:52:27आती भी नहीं है रिक्वेस्ट। ठीक है? लेकिन
  5846. 3:52:29अगर तो अगर यूजरनेम पासवर्ड गलत है तो
  5847. 3:52:32यहां पर सिक्योरिटी कंटेक्स्ट में भी उसकी
  5848. 3:52:33इनेशन स्टोर नहीं होगी क्योंकि
  5849. 3:52:35ऑथेंटिकेटेड ही नहीं है। यहीं से वापस चला
  5850. 3:52:37जाएगा वो फ़्टर चेन से। ठीक है? और
  5851. 3:52:39अनअथराइज़ का एरर भी आ जाएगा।
  5852. 3:52:41लेकिन अगर यूजर ऑथेंटिकेट होता है तो सबसे
  5853. 3:52:43पहले तो सिक्योरिटी कंटेक्स्ट में उसकी
  5854. 3:52:45डिटेल स्टोर होगी और फिर रिक्वेस्ट आगे
  5855. 3:52:47जाएंगी डिस्पैचर सर्लेट के पास। अब
  5856. 3:52:48डिस्पैचर सर्वरेट एक ऐसा कंपोनेंट है। ठीक
  5857. 3:52:51है? स्प्रिंग सिक्योरिटी का कंपोनेंट नहीं
  5858. 3:52:53है। ये स्प्रिंग बूट का कंपोनेंट है जिसका
  5859. 3:52:54काम है रिक्वेस्ट को देखना। और यह
  5860. 3:52:57रिक्वेस्ट कौन से कंट्रोलर के पास जानी
  5861. 3:52:59चाहिए वो डिसाइड करता है डिस्पैचर सर्वर।
  5862. 3:53:02इसका नाम भी वैसे ही है। देखिए डिस्पैचर
  5863. 3:53:04सर्लेट। तो वो डिस्पैच करेगा रिक्वेस्ट को
  5864. 3:53:06एक पर्टिकुलर कंट्रोलर के पास और डिसाइड
  5865. 3:53:08करेगा कि ये कंट्रोलर को ये रिक्वेस्ट
  5866. 3:53:10हैंडल करनी चाहिए। ठीक है? तो ये होता है
  5867. 3:53:12डिस्पैच सर्लेट और कंट्रोलर्स हो गए जो
  5868. 3:53:15अपना-अपना काम करेंगे। ठीक है? तो ये है
  5869. 3:53:18आर्किटेक्चर और इस तरीके से अ फ्लो होती
  5870. 3:53:22है स्प्रिंग सिक्योरिटी में एक रिक्वेस्ट।
  5871. 3:53:25ठीक है? तो आसान शब्दों में स्प्रिंग
  5872. 3:53:27सिक्योरिटी में जो रिक्वेस्ट है अगर आप
  5873. 3:53:29स्प्रिंग सिक्योरिटी को कॉन्फिगर कर रखे
  5874. 3:53:31हो तो उसमें जो रिक्वेस्ट है वह सीरीज ऑफ
  5875. 3:53:33फिल्टर्स से गुजरेगी। ठीक है? और ये सीरीज
  5876. 3:53:36ऑफ़ फ़िल्टर कहां होगी? फ़्टर चेन में होगी।
  5877. 3:53:38ठीक है? और यहां पर फ़्टर्स के जरिए यूजर
  5878. 3:53:42को ऑथेंटिकेट किया जाएगा, ऑथोराइज़ किया
  5879. 3:53:44जाएगा और जो हमारी एप्लीकेशन है, यानी कि
  5880. 3:53:47जो कंट्रोलर से स्टार्ट हो रही है, यहां
  5881. 3:53:48से यहां पे जो एप्लीकेशन है हमारी
  5882. 3:53:50स्प्रिंग बूट की जो कोड है उसे प्रोटेक्ट
  5883. 3:53:52किया जाएगा। ठीक है? ठीक है? और
  5884. 3:53:53ऑथेंटिकेटेड यूजर की डिटेल आपको
  5885. 3:53:56सिक्योरिटी कंटक्स्ट में मिलेगी। ठीक है?
  5886. 3:53:58उम्मीद करता हूं ये सिंपल था और आपको समझ
  5887. 3:54:01में आया।
  5888. 3:54:08ठीक है दोस्तों? तो अब समय आ चुका है कि
  5889. 3:54:11हम स्प्रिंग सिक्योरिटी को हैंड्स ऑन
  5890. 3:54:14तरीके से देखें और इसके मैजिक को एक हिसाब
  5891. 3:54:17से समझें। ठीक है? तो मैं क्या करने वाला
  5892. 3:54:19हूं? मैंने यहां पर एक प्रोजेक्ट को
  5893. 3:54:22बेसिकली ओपन कर लिया है। ठीक है? अब ये
  5894. 3:54:24प्रोजेक्ट क्या है? यह एक बहुत ही सिंपल
  5895. 3:54:27स्प्रिंग बूट का प्रोजेक्ट है। ठीक है? तो
  5896. 3:54:29आप यहां पर अगर आएंगे यहां पर आपको आना है
  5897. 3:54:32और यहां पर आप एक तरीके का कंट्रोलर आपको
  5898. 3:54:34दिखाई देगा। बहुत ही सिंपल कंट्रोलर है।
  5899. 3:54:36कुछ नहीं कर रहा है ये कंट्रोलर। ठीक है?
  5900. 3:54:38ये कंट्रोलर सिर्फ अगर आप हेलो एंड पॉइंट
  5901. 3:54:41को एक्सेस करते हो हेलो एंड पॉइंट को तो
  5902. 3:54:43आपको यह हेलो बोल देगा बस और कुछ नहीं।
  5903. 3:54:46ठीक है? काफी सिंपल एप्लीकेशन रखिए और
  5904. 3:54:48जानबूझ के सिंपल रखिए क्योंकि सीखना हमें
  5905. 3:54:50स्प्रिंग सिक्योरिटी है। ठीक है? तो
  5906. 3:54:53स्प्रिंग सिक्योरिटी को बहुत ही अच्छी
  5907. 3:54:55तरीके से हम समझेंगे कैसे काम कर रहा है,
  5908. 3:54:57क्या कर रहा है और फिर आप ये जो नॉलेज है
  5909. 3:55:00इसको लेके जाकर प्रोडक्शन ग्रेड
  5910. 3:55:02एप्लीकेशनेशंस तो कभी भी बना सकते हो। ठीक
  5911. 3:55:04है? तो ये है हमारी एप्लीकेशन। अब हम क्या
  5912. 3:55:07करेंगे? ठीक है? यहां पर स्प्रिंग
  5913. 3:55:09सिक्योरिटी को इनेबल करेंगे। ठीक है? तो
  5914. 3:55:12स्प्रिंग सिक्योरिटी को इनेबल करने से
  5915. 3:55:14पहले मैं ना आपको सबसे पहले तो ये
  5916. 3:55:16एप्लीकेशन रन करके दिखा देना चाहता हूं।
  5917. 3:55:17ठीक है? तो यहां पर आएंगे हम। अच्छा यहां
  5918. 3:55:20पर नहीं और यहां पर ब्राउज़र में आ जाएंगे।
  5919. 3:55:23ठीक है? और यहां पर मैं लिख दूंगा लोकल
  5920. 3:55:25होस्ट कोलन ईटीईटी सश हेलो। ठीक है? और
  5921. 3:55:29यहां पर चेक कर लेंगे कि एप्लीकेशन सही से
  5922. 3:55:31रन हुई है या नहीं। रन तो हुई है। कोई
  5923. 3:55:33दिक्कत वैसे आनी तो नहीं चाहिए। सिंपल सी
  5924. 3:55:35एप्लीकेशन है। और यहां पर आप एंटर प्रेस
  5925. 3:55:37करोगे। अच्छा एरर आ गई। ऐसे कैसे एरर आ गई
  5926. 3:55:40यहां पर? क्या एरर आ गई भाई? स्लश हेलो
  5927. 3:55:42नहीं है। मैप्ड स्लश हेलो और रिटर्न होना
  5928. 3:55:46चाहिए। हेलो गेट मैपिंग। अच्छा देखो एक
  5929. 3:55:48छोटी सी मिस्टेक तो मैंने यहां पर कर ही
  5930. 3:55:50दी है इतने सिंपल एप्लीकेशन में भी कि
  5931. 3:55:52रेस्ट कंट्रोलर नहीं लिखा मैंने। रेस्ट
  5932. 3:55:54कंट्रोलर नहीं लिखते हो तो देखिए कंट्रोलर
  5933. 3:55:56काम नहीं करेगा आपका। ठीक है? काफी सिंपल
  5934. 3:55:58एप्लीकेशन थी। फिर भी रन नहीं हुई। और अब
  5935. 3:56:01हमें हेलो दिखाई देगा। ठीक है? तो ये
  5936. 3:56:03एप्लीकेशन हमें हेलो बोल रही है। ठीक है?
  5937. 3:56:05बिल्कुल सिंपल। अब मैं स्प्रिंग
  5938. 3:56:08सिक्योरिटी को इनेबल कर करूंगा इसमें। ठीक
  5939. 3:56:10है? अब स्प्रिंग सिक्योरिटी को इनेबल करके
  5940. 3:56:12हम क्या सीखेंगे? हम ये देखेंगे कि
  5941. 3:56:14स्प्रिंग सिक्योरिटी का जो डिफ़ॉल्ट
  5942. 3:56:15बिहेवियर है वो है क्या? ठीक है? तो बिना
  5943. 3:56:18किसी कस्टमाइजेशन के स्प्रिंग सिक्योरिटी
  5944. 3:56:20हमें देता क्या है? वो समझने मिलेगा हमें।
  5945. 3:56:23तो यहां पर आ जाता हूं। ठीक है? यहां पर
  5946. 3:56:24देखिए स्प्रिंग इनिशलाइजर ऑलरेडी ओपन है।
  5947. 3:56:26अगर आपके पास ओपन नहीं है तो ओपन कर लीजिए
  5948. 3:56:28और यहां पर जाइए और यहां पर सिक्योरिटी
  5949. 3:56:32लिखिए। ठीक है? जैसे ही आप सिक्योरिटी
  5950. 3:56:34लिखोगे तो देखिए आपको ये स्प्रिंग
  5951. 3:56:36सिक्योरिटी आ जाएगा। हाइली कस्टमाइजेबल
  5952. 3:56:38ऑथेंटिकेशन एंड एक्सेस कंट्रोल फ्रेमवर्क
  5953. 3:56:41फॉर स्प्रिंग एप्लीकेशनेशंस। इसको सेलेक्ट
  5954. 3:56:43कीजिए। ठीक है? ऐसे सेलेक्ट करोगे आप
  5955. 3:56:45एक्सप्लोर पे क्लिक करोगे और नीचे स्क्रॉल
  5956. 3:56:48डाउन करोगे। ठीक है? तो यहां पर आपको
  5957. 3:56:51दिखाई देगा ये जो डिपेंडेंसी है स्प्रिंग
  5958. 3:56:53बूट स्टार्टर सिक्योरिटी ये दिखाई देगी।
  5959. 3:56:55इसको आपको कॉपी कर लेना है। ठीक है? यही
  5960. 3:56:58डिपेंडेंसी है काम की और अपने प्रोजेक्ट
  5961. 3:57:00में आ जाना है कोई भी प्रोजेक्ट में आप
  5962. 3:57:02सिंपल प्रोजेक्ट बना सकते हो ऐसे हेलो
  5963. 3:57:03कंट्रोलर बना सकते हो ठीक है और यहां पर
  5964. 3:57:06पोmsl में चले जाना है आपको ठीक है ये
  5965. 3:57:09सारी चीजों को कोलैप्स कर दूंगा और यहां
  5966. 3:57:10पर डिपेंडेंसीज़ का आपको टैग दिख जाएगा
  5967. 3:57:12देखिए डिपेंडेंसीज़ यहां पर डिपेंडेंसी
  5968. 3:57:14लिखी हुई है तो यहां पर इन दो डिपेंडेंसी
  5969. 3:57:16के बीच में मैंने स्प्रिंग बूट स्टार्टर
  5970. 3:57:19सिक्योरिटी को भी ऐड कर दिया है ठीक है अब
  5971. 3:57:21ये डिपेंडेंसी ऐड करने के बाद स्प्रिंग
  5972. 3:57:24सिक्योरिटी हमारी एप्लीकेशन में एक्टिवेट
  5973. 3:57:27हो जाएगाI
  5974. 3:57:28ठीक है? हमने क्या किया? सिर्फ डिपेंडेंसी
  5975. 3:57:30को ऐड किया। अभी कुछ किया भी नहीं है। ठीक
  5976. 3:57:31है? मैं मेवन रीलोड कर लेता हूं क्योंकि
  5977. 3:57:33ये तो स्टैंडर्ड प्रैक्टिस है। pmxl को टच
  5978. 3:57:36किया। तो मेवन रीलोड तो करना जरूरी है। अब
  5979. 3:57:38सारी जो डिपेंडेंसीज़ है स्प्रिंग बूट
  5980. 3:57:41स्टार्टर सिक्योरिटी रिलेटेड यानी
  5981. 3:57:42स्प्रिंग सिक्योरिटी रिलेटेड सारी की सारी
  5982. 3:57:44हमारी एप्लीकेशन में आ चुकी है। अब मैं
  5983. 3:57:46इसे रन करता हूं। ठीक है? अब जैसे ही रन
  5984. 3:57:50करता हूं। ठीक है? रन करने के बाद आप
  5985. 3:57:52बिहेवियर देखिएगा स्प्रिंग सिक्योरिटी का।
  5986. 3:57:54ठीक है? अब मैं यहां पर आ जाता हूं
  5987. 3:57:56ब्राउज़र में और ये जो हमारी यूआरएल पहले
  5988. 3:57:59चल रही थी इसको रिफ्रेश कर लेता हूं। अब
  5989. 3:58:00जैसे ही रिफ्रेश करता हूं तो देखिए ये
  5990. 3:58:02क्या आ गया भाई? प्लीज साइन इन और लॉग इन
  5991. 3:58:05पर आ गए हम लोग। लॉग इन तो हम गए भी नहीं।
  5992. 3:58:08हमने हेलो पर गए थे। करेक्ट हम हेलो पर
  5993. 3:58:11थे। हेलो को एंटर दबा दो तो लॉग इन आ जा
  5994. 3:58:13रहा है। ठीक है? तो ये तो चल नहीं रहा। अब
  5995. 3:58:17अब हेलो एक्सेसिबल नहीं है। हमने चेंज
  5996. 3:58:19किया ही क्या है। हमने सिर्फ स्प्रिंग
  5997. 3:58:21सिक्योरिटी को ऐड किया है। ठीक है? और
  5998. 3:58:23यहां पर देखिए प्लीज साइन इन और ये
  5999. 3:58:25यूजरनेम और पासवर्ड मांग रहा है। ये फॉर्म
  6000. 3:58:27भी हमने नहीं बनाया। ये एप्लीकेशन में
  6001. 3:58:29फॉर्म थी नहीं। मैंने आपको दिखाया ये
  6002. 3:58:31एप्लीकेशन में सिर्फ हेलो कंट्रोलर था।
  6003. 3:58:34बहुत ही सिंपल एप्लीकेशन थी लेकिन फिर ये
  6004. 3:58:36फॉर्म आ गया। ठीक है? कोई बात नहीं। अब
  6005. 3:58:39हुआ क्या है? इसको समझने की कोशिश करते
  6006. 3:58:42हैं। तो देखिए यहां पर ना स्प्रिंग बूट का
  6007. 3:58:45एक बढ़िया सा फीचर प्ले में आ गया है।
  6008. 3:58:47जिसे कहते हैं ऑटो कॉन्फ़िगरेशन। हमने
  6009. 3:58:49स्प्रिंग सिक्योरिटी को कॉन्फ़िगर नहीं
  6010. 3:58:51किया है। ठीक है? तो स्प्रिंग बूट क्या
  6011. 3:58:53करता है? देखता है कि कौन सी-कौ सी
  6012. 3:58:55डिपेंडेंसीज़ ऐडेड है। तो देखता है कि
  6013. 3:58:57स्प्रिंग सिक्योरिटी भी एक डिपेंडेंसी है
  6014. 3:58:59जो ऐडेड है। तो इसका मतलब ये सिक्योरिटी
  6015. 3:59:01ऐड करना चाहता है। तो जो डिफ़ॉल्ट बिहेवियर
  6016. 3:59:03है उसको बाय डिफ़ॉल्ट कॉन्फ़िगर कर दिया
  6017. 3:59:05स्प्रिंग बूट ने। और आपको यहां पर ये
  6018. 3:59:07डिफ़ॉल्ट बिहेवियर के तौर पे ये साइन इन
  6019. 3:59:09पेज दिख गया। ठीक है? साइन इन पेज दिख
  6020. 3:59:12गया। अब साइन इन पेज पे हम यूजर आईडी और
  6021. 3:59:14पासवर्ड डालें कहां से? हमें तो नहीं पता।
  6022. 3:59:17तो मैं क्या करूंगा? यहां पर आऊंगा। ठीक
  6023. 3:59:20है?
  6024. 3:59:21यहां पर आएंगे और यहां पर तो यहां पर आप
  6025. 3:59:25देखिए यहां पर आपको कहीं तो आप सिक्योरिटी
  6026. 3:59:27को सर्च कर लीजिएगा अगर आपको यह मिल नहीं
  6027. 3:59:29रहा है तो यहां पर आपको दिखाई देना चाहिए
  6028. 3:59:32जनरेटेड सिक्योरिटी पासवर्ड ठीक है
  6029. 3:59:36जनरेटेड सिक्योरिटी पासवर्ड तो यह हमें
  6030. 3:59:39डिफॉल्ट पासवर्ड दे रहा है एक डमी पासवर्ड
  6031. 3:59:42जिसकी मदद से आप लॉगिन कर सकते हो अपने
  6032. 3:59:44एप्लीकेशन में और यहां पर यह बोल भी रहा
  6033. 3:59:46है कि दिस जनरेटेड पासवर्ड इज़ फॉर
  6034. 3:59:47डेवलपमेंट यूज़ ओनली ठीक है डेवलपमेंट यूज़
  6035. 3:59:50के क्यों है? क्योंकि आपने कॉन्फ़िगर ही
  6036. 3:59:52नहीं किया है कुछ। तो, स्प्रिंग क्या कर
  6037. 3:59:54रहा है? स्प्रिंग सिक्योरिटी एक बाय
  6038. 3:59:56डिफ़ॉल्ट ऑटो जनरेटेड पासवर्ड आपको दे दे
  6039. 3:59:58रहा है। और बोल रहा है कि ये डेवलपमेंट
  6040. 4:00:00यूज़ के लिए ही है। ठीक है? योर सिक्योरिटी
  6041. 4:00:02कॉन्फ़िगरेशन मस्ट बी अपडेटेड बिफोर रनिंग
  6042. 4:00:04इट इंटू प्रोडक्शन। ये बाय डिफ़ॉल्ट मैंने
  6043. 4:00:06दिया है। इसको प्रोडक्शन में इस्तेमाल
  6044. 4:00:08नहीं करना। ठीक है? ये तो चलो, बात हो गई
  6045. 4:00:11पासवर्ड की, तो मैं पासवर्ड ले लेता हूं।
  6046. 4:00:14और यूजरनेम बाय डिफ़ॉल्ट होता है एडमिन। और
  6047. 4:00:17पासवर्ड मैं पेस्ट कर दूंगा यह वाला और कर
  6048. 4:00:19दूंगा साइन इन। अच्छा इनवैलिड
  6049. 4:00:22क्रेडेंशियल्स। अच्छा इनवैलिड क्रेडेंशियल
  6050. 4:00:24इसलिए आ रहा है क्योंकि बाय डिफ़ॉल्ट जो
  6051. 4:00:25यूजर होता है वो यूजर नाम से होता है।
  6052. 4:00:27एडमिन से नहीं। मैंने एडमिन डाल दिया था।
  6053. 4:00:29तो यूजर और पासवर्ड डाल देना है और साइन
  6054. 4:00:31इन करना है। तो देखिए अब ये चल जाएगा। आप
  6055. 4:00:33देख पा रहे हो। चल जाएगा। ठीक है? तो ये
  6056. 4:00:36पासवर्ड आपको स्प्रिंग सिक्योरिटी दे रहा
  6057. 4:00:39है। आपने दिया है पासवर्ड? जी नहीं। हमने
  6058. 4:00:41नहीं दिया है। हमने कॉन्फ़िगर नहीं किया
  6059. 4:00:43है। हमने कुछ नहीं किया है। ठीक है? तो ये
  6060. 4:00:46है डिफॉल्ट बिहेवियर स्प्रिंग सिक्योरिटी
  6061. 4:00:49का। अब यहां पर कुछ चीजों के बारे में बात
  6062. 4:00:51करता हूं। ठीक है? लॉग्स को थोड़ा देखते
  6063. 4:00:52हैं हम लोग। ठीक है? देखिए अक्सर आपको जब
  6064. 4:00:54भी कुछ सीखना है मेरे हिसाब से ना आपको
  6065. 4:00:58लॉग्स थोड़े एक बार पढ़ लेने चाहिए
  6066. 4:01:00क्योंकि लॉग्स में काफी सारी इनेशन आती है
  6067. 4:01:02और उसको पढ़ के हमें समझ में आता है कि
  6068. 4:01:05अच्छा बिहाइंड द सीन्स हो क्या रहा है।
  6069. 4:01:07ठीक है? तो देखिए यहां पर आप देखोगे टॉमcड
  6070. 4:01:10इनिशलाइज़ हो रहा है। ये सारे तो
  6071. 4:01:11स्टैंडर्ड प्रोसेससेस जो हो रहा है। यहां
  6072. 4:01:12पर सिक्योरिटी ये सब ये सब एप्लीकेशन
  6073. 4:01:14स्टार्ट हो रहा है। ठीक है? स्टार्टिंग
  6074. 4:01:16सर्लेट अगेन। ठीक है? रूट इनिशियलाइजेशन
  6075. 4:01:19कंप्लीट। और यहां पर देखिए यूजर डिटेल
  6076. 4:01:22सर्विस ऑटो कॉन्फ़िगरेशन। यहां पर स्प्रिंग
  6077. 4:01:25सिक्योरिटी पिक्चर में आ जाता है। ठीक है?
  6078. 4:01:27और वो क्या करता है? एक सिक्योरिटी
  6079. 4:01:28पासवर्ड जनरेट करके उसको थ्रो कर देता है
  6080. 4:01:30कंसोल पर। और यहां पर आप देखोगे ग्लोबल
  6081. 4:01:32ऑथेंटिकेशन मैनेजर कॉन्फ़िगरर्ड विद यूजर
  6082. 4:01:35डिटेल सर्विस बीन विद नेम इन मेमोरी यूजर
  6083. 4:01:39डिटेल मैनेजर। तो एक यूजर डिटेल सर्विस से
  6084. 4:01:42ठीक है? देखिए एक ऑथेंटिकेशन मैनेजर
  6085. 4:01:43कॉन्फ़िगर हुआ है और इन मेमोरी यूजर
  6086. 4:01:46डिटेल्स मैनेजर इन तो यूजर की जो डिटेल है
  6087. 4:01:47वो इन मेमोरी स्टोर हो रही है और यहां पर
  6088. 4:01:49देखिए टॉम कैट रन हो रहा है। ठीक है? और
  6089. 4:01:51यहां पर आएंगे तो स्टार्ट हो गई है
  6090. 4:01:53एप्लीकेशन। ठीक है? तो ये सारी चीजें हो
  6091. 4:01:56रही है और यहां पर डिस्पैच सर्लेट भी आपको
  6092. 4:01:57देखने मिलेगा। डिस्पैच सर्ेट एक ऐसा
  6093. 4:02:00कंपोनेंट है जो कि डिस्पैच करता है
  6094. 4:02:02रिक्वेस्ट को सही कंट्रोलर के पास। ठीक
  6095. 4:02:04है? यहां पर फ़्टर चेन कहीं दिखाई नहीं
  6096. 4:02:07दिया। फ़िल्टर अच्छा फ़िल्टर चेन कहीं दिखाई
  6097. 4:02:10नहीं दिया है मुझे। ठीक है? लेकिन कोई बात
  6098. 4:02:12नहीं फिल्टर चेन दिखाई नहीं दिया लेकिन
  6099. 4:02:15कोई बात नहीं फिल्टर चेन है एक्चुअली
  6100. 4:02:17एक्शन में लेकिन उस पर कोई लॉग्स नहीं है।
  6101. 4:02:19अगर लॉग्स होते तो बढ़िया मजा आता। मैं
  6102. 4:02:21आपको वो भी दिखा देता। ठीक है? तो देखिए
  6103. 4:02:23यहां पर स्प्रिंग सिक्योरिटी का डिफ़ॉल्ट
  6104. 4:02:25बिहेवियर ये है कि यहां पर बाय डिफ़ॉल्ट सब
  6105. 4:02:29कुछ ऑथेंटिकेट हो जाता है। आप स्प्रिंग
  6106. 4:02:31सिक्योरिटी को कहो ऑथेंटिकेट करने के लिए
  6107. 4:02:33या मत कहो। बाय डिफॉल्ट सब कुछ ऑथेंटिकेट
  6108. 4:02:37हो जाता है। ठीक है? और आपको ये सारी
  6109. 4:02:41चीजें स्प्रिंग सिक्योरिटी को बताने की
  6110. 4:02:43कोई जरूरत है नहीं। अब देखिए मैंने लॉग इन
  6111. 4:02:46तो कर लिया। अब मैं चाहता हूं लॉग आउट
  6112. 4:02:47करूं। तो लॉगउ कैसे करूं मैं? यहां पर कोई
  6113. 4:02:49लॉगउ का बटन तो है नहीं। तो मैं अपने सेशन
  6114. 4:02:52को लॉगउ कर सकता हूं। ठीक है? लॉगउ करने
  6115. 4:02:54के लिए मुझे लॉगउ नाम के पेज पर जाना
  6116. 4:02:55होगा। स्लैश लॉगउ तो देखिए मैं बहुत ज़ूम्ड
  6117. 4:02:58इन हूं। 300% से ज़ूम्ड इन हूं। ठीक है?
  6118. 4:03:00स्लैश लॉगउ पे अगर आप जाते हो तो देखिए
  6119. 4:03:02लॉगउ पेज भी दिया हुआ है। ठीक है? और यहां
  6120. 4:03:04पर आप लॉगउ भी बोल सकते हो। लॉग आउट किया
  6121. 4:03:06तो देखिए यू हैव बीन साइन आउट। अ फिर से
  6122. 4:03:08आप दोबारा जाओगे हेलो पर तो आपको लॉग इन
  6123. 4:03:11पेज दिखाई देगा। आप नहीं जा सकते हेलो पर।
  6124. 4:03:14हेलो इज सिक्यर्ड। तो यहां पर ऑब्जरवेशन
  6125. 4:03:17क्या थी? ऑब्जरवेशन सबसे पहले ये है कि
  6126. 4:03:20बाय डिफॉल्ट एवरीथिंग इज़ ऑथेंटिकेटेड।
  6127. 4:03:23सारी चीजें बाय डिफ़ॉल्ट ऑथेंटिकेटेड है।
  6128. 4:03:27ठीक है? जैसे ही आप स्प्रिंग सिक्योरिटी
  6129. 4:03:28को ऐड करते हो सारी चीजें सारी चीजों का
  6130. 4:03:30मतलब है कोई भी एंड पॉइंट आप बना लो कोई
  6131. 4:03:32भी एंड पॉइंट प्री एक्जिस्टिंग एंड पॉइंट
  6132. 4:03:34थी आपके एप्लीकेशन में वो सारी की सारी
  6133. 4:03:36ऑथेंटिकेटेड है और यहां पर जो डिफॉल्ट
  6134. 4:03:39ऑथेंटिकेशन मैकेनिज्म आपको दिखाई दे रहा
  6135. 4:03:41है ये डिफॉल्ट ऑथेंटिकेशन मैकेनिज्म ये है
  6136. 4:03:43फॉर्म बेस्ड ऑथेंटिकेशन यानी कि यहां पर
  6137. 4:03:47ऑथेंटिकेट करने के लिए यूजर को फॉर्म्स का
  6138. 4:03:50इस्तेमाल किया जा रहा है। क्या ये फॉर्म्स
  6139. 4:03:51हमने बनाए हैं? जी नहीं हमने नहीं बनाए।
  6140. 4:03:53ये इनबिल्ट फॉर्म्स हैं जो स्प्रिंग
  6141. 4:03:55सिक्योरिटी हमें प्रोवाइड कर दे रहा है।
  6142. 4:03:57ठीक है? तो पहला ऑब्जरवेशन क्या था?
  6143. 4:03:59एवरीथिंग इज़ ऑथेंटिकेटेड। सब कुछ
  6144. 4:04:01ऑथेंटिकेटेड है बाय डिफ़ॉल्ट बिहेवियर। ठीक
  6145. 4:04:03है? डिफ़ॉल्ट बिहेवियर में सबसे पहला
  6146. 4:04:05ऑब्जरवेशन ये था। दूसरा ऑब्जरवेशन क्या
  6147. 4:04:07है? कि एक डिफ़ॉल्ट फॉर्म हमें प्रोवाइड
  6148. 4:04:10किया जाता है। और ये जो ऑथेंटिकेशन टाइप
  6149. 4:04:12है, ये है फॉर्म बेस्ड ऑथेंटिकेशन।
  6150. 4:04:14क्योंकि इसमें फॉर्म्स का इस्तेमाल किया
  6151. 4:04:15हुआ है। ठीक है? और ये बाय डिफ़ॉल्ट है।
  6152. 4:04:17हमने नहीं किया है। ठीक है? थर्ड
  6153. 4:04:19ऑब्जरवेशन क्या है? हमारे पास एक इनबिल्ट
  6154. 4:04:22यूजर बाय डिफॉल्ट क्रिएट हो जाता है।
  6155. 4:04:24ऑटोमेटिक हमने क्रिएट किया है। जी नहीं यह
  6156. 4:04:28बाय डिफॉल्ट क्रिएट होता है। ठीक है? और
  6157. 4:04:30यूजर की जो क्रेडेंशियल्स है ठीक है? वो
  6158. 4:04:34बाय डिफ़ॉल्ट क्रिएट होती है और यहां पर
  6159. 4:04:35आपको कंसोल पर देखने मिल जाएगी और ये ना
  6160. 4:04:38चेंज होते रहती है। ठीक है? ये चेंज होते
  6161. 4:04:40रहती है। तो ऐसा नहीं है कि ये यूजर ये
  6162. 4:04:42पासवर्ड प्रिंट हुआ है। तो आप रिस्टार्ट
  6163. 4:04:44करोगे एप्लीकेशन को तो ये पासवर्ड चेंज हो
  6164. 4:04:46जाएगा। तो अभी कुछ A7 से स्टार्ट हो रहा
  6165. 4:04:49था। ठीक है? ठीक है? और अभी आप देखोगे तो
  6166. 4:04:50ये 0 बी से स्टार्ट हो रहा है। देखिए
  6167. 4:04:52पासवर्ड चेंज सर्वर रिस्टार्ट पे जो है
  6168. 4:04:55पासवर्ड चेंज हो रहा है। ठीक है? तो ये
  6169. 4:04:58यूजर बाय डिफ़ॉल्ट क्रिएट होता है और इसकी
  6170. 4:05:00पासवर्ड हर रिस्ट पर चेंज होती है क्योंकि
  6171. 4:05:02ये इन मेमोरी यूजर का पासवर्ड है। ये डमी
  6172. 4:05:05यूजर है जो क्रिएट किया जा रहा है ताकि आप
  6173. 4:05:08अपनी जो एप्लीकेशन है उसको यूज़ कर पाओ।
  6174. 4:05:11ठीक है? यूजर नेम इसका बाय डिफ़ॉल्ट यूजर
  6175. 4:05:14है और पासवर्ड इसका जो भी प्रिंटेड है वो
  6176. 4:05:16है प्रिंटेड। वो है पासवर्ड और आपके लिए
  6177. 4:05:19पासवर्ड ये नहीं रहेगा। आपके लिए जो
  6178. 4:05:20पासवर्ड आपकी एप्लीकेशन जनरेट कर रही है
  6179. 4:05:22वो रहेगा। ठीक है? मेरा पासवर्ड देख के
  6180. 4:05:24कॉपी नहीं करने लग जाना। आपकी एप्लीकेशन
  6181. 4:05:26नया पासवर्ड दूसरा पासवर्ड जनरेट करेगी।
  6182. 4:05:28ठीक है? और आप कोई भी एप्लीकेशन की यूआरएल
  6183. 4:05:32को एक्सेस करने की कोशिश करो। ठीक है?
  6184. 4:05:35आपने कोई भी तरह का कोड लिखा हो वो आप
  6185. 4:05:37एक्सेस नहीं कर पाओगे विदाउट प्रॉपर
  6186. 4:05:39ऑथेंटिकेशन। यह है डिफ़ॉल्ट बिहेवियर। ठीक
  6187. 4:05:42है? मैं आपको थोड़ी रिक्वेस्ट भी बता देता
  6188. 4:05:44हूं। देखिए, यहां पर राइट क्लिक कीजिए
  6189. 4:05:45ब्राउज़र में। आपको करने की जरूरत है नहीं।
  6190. 4:05:47आप देख भी सकते हो मैं क्या कर रहा हूं।
  6191. 4:05:48तो यहां पर इंस्पेक्ट कीजिए। ठीक है? और
  6192. 4:05:51यहां पर नेटवर्क में जाइए। अब आप नेटवर्क
  6193. 4:05:52में जाओगे। अच्छा इंस्पेक्ट कर रहा हूं तो
  6194. 4:05:54मुझे यह अ क्रेडेंशियल्स मांग रहा था। ठीक
  6195. 4:05:57है? तो अभी देखिए नेटवर्क में आओगे ना आप
  6196. 4:05:59और मैं नेटवर्क में आने के बाद यहां पर ना
  6197. 4:06:01आपको सारे नेटवर्क कॉल्स दिखाई देंगे।
  6198. 4:06:04यहां पर आने के बाद मैं सिर्फ हेलो पे
  6199. 4:06:05जाता हूं। ठीक है? हेलो। हेलो पे मैं एंटर
  6200. 4:06:08दबाता हूं। तो देखिए मुझे यूजरनेम पासवर्ड
  6201. 4:06:10पूछ रहा है। ये तो मैं इसको कैंसिल करता
  6202. 4:06:11हूं। ठीक है? तो यहां पर देखते हैं क्या
  6203. 4:06:14हुआ है। तो देखिए मैं हेलो पर जा रहा हूं।
  6204. 4:06:16हेलो पर यह हेलो की रिक्वेस्ट थी मेरी।
  6205. 4:06:18करेक्ट? हेलो पर मैं 304 नॉट फाउंड करके
  6206. 4:06:22मुझे रीडायरेक्ट किया जा रहा है लॉग इन
  6207. 4:06:24पेज पर। करेक्ट? और अब लॉग इन पेज पर अगर
  6208. 4:06:28मैं मेरे क्रेडेंशियल्स डालूं तो मैं यूजर
  6209. 4:06:30डाल रहा हूं। और फिर पासवर्ड ये जो भी है
  6210. 4:06:32इसको मैं कॉपी कर रहा हूं और फिर यहां पर
  6211. 4:06:34आके ये पासवर्ड भी डाल रहा हूं। तो जैसे
  6212. 4:06:36ही मैं यूजरनेम पासवर्ड डालता हूं तो
  6213. 4:06:38देखिए यहां पर अच्छा ये क्या हो गया? एरर
  6214. 4:06:42आ गई। ओके। एक हिसाब से हेलो पर जाना है
  6215. 4:06:46मुझे। ठीक है? तो हेलो पर अगर मैं आता हूं
  6216. 4:06:47तो देखिए हेलो पर अगर मैं आऊंगा तो यहां
  6217. 4:06:50पर ना हेलो की रिक्वेस्ट जो थी देखिए ये
  6218. 4:06:52हेलो की रिक्वेस्ट है। इसमें मुझे 200 ओके
  6219. 4:06:54मिल चुका है। ठीक है? ईटीईटी पोर्ट पे रन
  6220. 4:06:57हो रहा है ये। और अगर आप यहां पर कुछ
  6221. 4:07:01हेटर्स नहीं दिखाई दे रहे। 1 मिनट यहां पर
  6222. 4:07:04आप देखोगे तो प्रीव्यू में जाइए रिस्पांस।
  6223. 4:07:09ठीक है? तो यहां पर यह वैल्यू देखिए। यह
  6224. 4:07:11जो जेई सेशन आईडी है। ठीक है? यह कुकी है
  6225. 4:07:14जे सेशन आईडी। तो, इसकी मदद से आपकी जो
  6226. 4:07:16ऑथेंटिकेशन जर्नी है, उसको ट्रैक किया जा
  6227. 4:07:18रहा है ब्राउज़र में। ठीक है? और यहां पर
  6228. 4:07:21आपको सारी डिटेल्स रिक्वेस्ट की दिख
  6229. 4:07:23जाएगी। ठीक है? तो, इस तरीके से अ
  6230. 4:07:27स्प्रिंग सिक्योरिटी का डिफ़ॉल्ट बिहेवियर
  6231. 4:07:28होता है। ठीक है? डिफ़ॉल्ट बिहेवियर तो आप
  6232. 4:07:30समझ ही गए होंगे। डिफ़ॉल्ट बिहेवियर ये है
  6233. 4:07:32कि सब कुछ ऑथेंटिकेट कर दो बाय डिफ़ॉल्ट।
  6234. 4:07:35ठीक है? यूजर भले बोले ना बोले, अब आपको
  6235. 4:07:38इसके ऊपर काम करना है। ठीक है? आप आपने
  6236. 4:07:40देखिए स्प्रिंग सिक्योरिटी को अपनी
  6237. 4:07:42एप्लीकेशन में ऐड कर दिया। सब कुछ
  6238. 4:07:44ऑथेंटिकेट हो गया। फॉर्म बेस्ड ऑथेंटिकेशन
  6239. 4:07:46इनेबल्ड हो गया। अब आपको कुछ कस्टमाइजेशन
  6240. 4:07:48करना है तो वो आपको करना है। आपको उसके
  6241. 4:07:50लिए कोड लिखना है। कॉन्फ़िगरेशंस लिखनी है
  6242. 4:07:52कि मुझे ये ऐसे इस तरीके से सिक्योर
  6243. 4:07:54चाहिए। यह वाली एपीआई में इस तरीके की
  6244. 4:07:56सिक्योरिटी चाहिए। वो सारी चीजें आप
  6245. 4:07:59डिफाइन करो और चीजें आपके हिसाब से चलेगी।
  6246. 4:08:01फिर उम्मीद करता हूं यह इतना हेल्पफुल रहा
  6247. 4:08:03आपके लिए।
  6248. 4:08:10तो देखिए दोस्तों आगे बढ़ते हैं और यहां
  6249. 4:08:13पर मैंने एप्लीकेशन तो चला ली और यहां पर
  6250. 4:08:16आप देख रहे हो डिफॉल्ट सेटिंग्स में हमें
  6251. 4:08:19यहां पर सिक्योरिटी का पासवर्ड दिया जाता
  6252. 4:08:20है। ठीक है? इस पासवर्ड को आप इस्तेमाल कर
  6253. 4:08:22सकते हो इस फॉर्म पर। अब देखिए मैं एक
  6254. 4:08:25यूजर हूं। ठीक है? और मैं नहीं चाहता कि
  6255. 4:08:29मैं कंसोल से ये पासवर्ड उठाऊं। ठीक है?
  6256. 4:08:31तो मैं खुद का पासवर्ड सेट करना चाहता
  6257. 4:08:33हूं। यूजरनेम भी सेट करना चाहता हूं। वो
  6258. 4:08:35मैं कैसे करूं? तो मैं मैं एक आपको सिंपल
  6259. 4:08:37तरीका बता देता हूं। तो आप यहां पर आ सकते
  6260. 4:08:39हो। रिसोर्सेज में जा सकते हो। एप्लीकेशन
  6261. 4:08:41प्रॉपर्टीज को खोल लीजिए। तो ये आपकी वो
  6262. 4:08:44फाइल है जहां पर आप सारे कॉन्फ़िगरेशंस को
  6263. 4:08:46डिफाइन कर सकते हो। और स्प्रिंग बूट ये
  6264. 4:08:48कॉन्फ़िगरेशंस को देखेगा। ठीक है? तो यहां
  6265. 4:08:50पर मैं क्या करूंगा? यहां पर सिक्योरिटी
  6266. 4:08:52का यूजरनेम और पासवर्ड दोनों मेंशन कर
  6267. 4:08:55सकता हूं। और वो यूजरनेम और पासवर्ड अ यूज़
  6268. 4:08:58होगा ऑथेंटिकेशन के लिए। और अगर यहां पर
  6269. 4:09:02ये दो प्रॉपर्टीज मिलती है यूजरनेम
  6270. 4:09:04पासवर्ड स्प्रिंग सिक्योरिटी को तो वो ऑटो
  6271. 4:09:06जनरेट नहीं करेगा पासवर्ड। ठीक है? मैं
  6272. 4:09:08आपको दिखा देता हूं अभी फिलहाल। तो हमें
  6273. 4:09:10कहना है स्प्रिंग सिक्योरिटी यूजर और फिर
  6274. 4:09:14यहां पर कहना है नेम। ठीक है? तो इसकी मदद
  6275. 4:09:18से हम क्या करेंगे? यूजरनेम डिफाइन कर
  6276. 4:09:21पाएंगे। और फिर यहां पर कहना है पासवर्ड
  6277. 4:09:23ऐसे। ठीक है? तो मान लीजिए मैं यूजरनेम
  6278. 4:09:26चाहता हूं एडमिन। ठीक है? और पासवर्ड
  6279. 4:09:28चाहता हूं एडमिन 1 2 3 ठीक है? काफी सिंपल
  6280. 4:09:31रखा है पासवर्ड। और यह एक्चुअली रेकमेंडेड
  6281. 4:09:33नहीं है। इसे आप हार्ड कोड करो प्रॉपर्टीज
  6282. 4:09:35फाइल में। ठीक है? एडवांस लेवल के
  6283. 4:09:36एप्लीकेशनेशंस बनाते हो तो ऐसे नहीं करना।
  6284. 4:09:38लेकिन मैं आपको दिखा रहा हूं चीजें कैसे
  6285. 4:09:39करते हैं। ठीक है? तो यहां पर एडमिन लिखना
  6286. 4:09:41है। अच्छा सबसे पहले तो रिफ्रेश कर लूं।
  6287. 4:09:43तो यहां पर एडमिन लिखना है और फिर एडमिन 1
  6288. 4:09:462 3 अब इसको साइन इन करते हैं। तो देखिए
  6289. 4:09:49यहां पर आ गया मैं। और यह ऑथेंटिकेटेड है।
  6290. 4:09:51अभी मैं रूट यूआरएल पे जा रहा हूं। इसके
  6291. 4:09:53लिए कुछ दिखाई नहीं दे रहा लेकिन हेलो पर
  6292. 4:09:55मैं एक्सेस कर सकता हूं। ठीक है? तो इस
  6293. 4:09:57तरीके से आप हार्ड कोर कर सकते हो चीजों
  6294. 4:10:01को। ठीक है? आप हार्ड कोड कर सकते हो
  6295. 4:10:03चीजों को यहां अ आपकी जो प्रॉपर्टीज फाइल
  6296. 4:10:08है उसमें। ठीक है?
  6297. 4:10:16तो दोस्तों, अभी फिलहाल आप फॉर्म बेस्ड
  6298. 4:10:18ऑथेंटिकेशन की मदद से ईपीआई को तो एक्सेस
  6299. 4:10:21कर पा रहे हो। ठीक है? आप लॉग आउट भी कर
  6300. 4:10:23सकते हो यहां से और लॉग इन भी। ठीक है? यह
  6301. 4:10:25लॉग इन पेज है और यहां पर आपको लॉगउ पेज
  6302. 4:10:27भी मिल जाएगा। लेकिन मैं इस फॉर्म का
  6303. 4:10:31इस्तेमाल नहीं करना चाहता। ठीक है? तो इस
  6304. 4:10:34फॉर्म बेस्ड ऑथेंटिकेशन को तो हमने देख
  6305. 4:10:35लिया है लेकिन एक और तरह का ऑथेंटिकेशन
  6306. 4:10:38मैकेनिज्म है स्प्रिंग सिक्योरिटी में
  6307. 4:10:40जिसे कहते हैं बेसिक ऑथेंटिकेशन। ठीक है?
  6308. 4:10:44उसमें फॉर्म नहीं होगा और उसके लिए आपको
  6309. 4:10:46थोड़ी कस्टमाइजेशंस करनी होगी और उसके लिए
  6310. 4:10:50आपको सिक्योरिटी का जो फिल्टर चेन होता है
  6311. 4:10:52जिसके बारे में मैंने बात की थी उस फिल्टर
  6312. 4:10:54चेन में थोड़ी सी मॉडिफिकेशंस करनी होगी।
  6313. 4:10:56क्या मॉडिफिकेशंस करनी होगी वो अब हम
  6314. 4:10:58देखेंगे और इस फॉर्म को हटाएंगे। ठीक है?
  6315. 4:11:00तो यहां पर आ जाएंगे और यहां पर मैं क्या
  6316. 4:11:03करूंगा? यहां पर ये सिंपल सी ऐप है। एक ही
  6317. 4:11:06फाइल है इसमें। लेकिन मैं यहां पर एक
  6318. 4:11:08दूसरी जावा क्लास बना लूंगा और इसे कहूंगा
  6319. 4:11:11सिक्योरिटी कॉन्फिग। ऐसे। ठीक है? अब
  6320. 4:11:15देखिए, यह कॉन्फ़िगरेशन फाइल है सिक्योरिटी
  6321. 4:11:19की। ठीक है? यह क्या है? यह कॉन्फ़िगरेशन
  6322. 4:11:21फाइल है सिक्योरिटी की। तो, सबसे पहले तो
  6323. 4:11:25मैं यहां पर इस फाइल को एज़ ए कॉन्फ़िगरेशन
  6324. 4:11:28मार्क कर दूंगा। एज़ ए कॉन्फ़िगरेशन मार्क
  6325. 4:11:30क्यों करना है? हमें स्प्रिंग बूट को या
  6326. 4:11:32स्प्रिंग फ्रेमवर्क को, स्प्रिंग बूट को
  6327. 4:11:34हमें ये बताना है कि ये जो फाइल है, ये
  6328. 4:11:36कॉन्फ़िगरेशन फाइल है। ठीक है? मैं इसकी इस
  6329. 4:11:38फाइल की जो क्लास फाइल है उसको भी ओपन कर
  6330. 4:11:41लिया और यहां पर सोर्सर्सेस को भी डाउनलोड
  6331. 4:11:42कर लिया। ठीक है? तो थोड़ी डॉक्यूमेंटेशन
  6332. 4:11:44देखने मिल जाएगा हमें। देखिए ये जो फाइल
  6333. 4:11:46है अच्छा यहां पर काफी कुछ दिया हुआ है।
  6334. 4:11:48ये सब कुछ तो नहीं पढ़ने वाले हम। अ लेकिन
  6335. 4:11:52अच्छा यहां पर जी नहीं काफी सारी इनेशन
  6336. 4:11:55है। काफी सारी इनेशन है। बट फिलहाल के लिए
  6337. 4:11:58मैं मैं चाह रहा था कि मैं आपको इसका
  6338. 4:11:59एक्चुअल डेफिनेशन दिखाऊं डॉक्यूमेंटेशन
  6339. 4:12:01में से।
  6340. 4:12:02लेकिन कॉन्फ़िगरेशन क्लास का ये मतलब है कि
  6341. 4:12:05अगर आप कोई भी अ कॉन्फ़िगरेशन डिफाइन करते
  6342. 4:12:08हो जावा कोड के अंदर तो अ स्प्रिंग बूट
  6343. 4:12:12उसे पिकअप करना चाहिए। करेक्ट? तो आप क्या
  6344. 4:12:14कर सकते हो? उस क्लास को मार्क कर सकते हो
  6345. 4:12:16एज़ ए कॉन्फ़िगरेशन। और उसके लिए आपको
  6346. 4:12:18कॉन्फ़िगरेशन एनोटेशन का इस्तेमाल करना है।
  6347. 4:12:20ठीक है? तो स्प्रिंग और स्प्रिंग
  6348. 4:12:23सिक्योरिटी इस क्लास को देखेंगे और समझ
  6349. 4:12:26जाइए कि यहां पर आपने कुछ कॉन्फ़िगरेशंस
  6350. 4:12:28डिफाइन कर रखे हैं। ठीक है? एक और एनोटेशन
  6351. 4:12:30हम लिखेंगे यहां पर जो कि है इनेबल वेब
  6352. 4:12:34सिक्योरिटी। ठीक है? इससे क्या होगा? यह
  6353. 4:12:37एनोटेशन सिक्योरिटी इनेबल करेगा। ठीक है?
  6354. 4:12:39और यहां पर मैं क्या लिखने वाला हूं? मैं
  6355. 4:12:41एक मेथड लिखने वाला हूं जो कि सिक्योरिटी
  6356. 4:12:44का फ़्टर चेन रिटर्न करेगा। क्योंकि हम
  6357. 4:12:46सिक्योरिटी फ़्टर चेन को मॉडिफाई करने वाले
  6358. 4:12:49हैं। ठीक है? और मेथड का नाम तो मैं कुछ
  6359. 4:12:51भी दे सकता हूं। सिक्योरिटी फ़िल्टर चेन दे
  6360. 4:12:53देता हूं। और यहां पर हम लेंगे HTTP
  6361. 4:12:56सिक्योरिटी का एक ऑब्जेक्ट यहां पर इस
  6362. 4:13:00तरीके से। ठीक है? और यहां पर इस मेथड को
  6363. 4:13:03क्लोज़ कर देंगे ऐसे। ठीक है? इतना हो चुका
  6364. 4:13:06है। अब यहां पर मैं क्या करूंगा? इस जो ये
  6365. 4:13:09जो मेथड है इसको मैं एज़ अ बीन मार्क कर
  6366. 4:13:12दूंगा। ठीक है? अब बीन का मतलब तो आप
  6367. 4:13:14जानते हो ये स्प्रिंग मैनेज कंपोनेंट मैं
  6368. 4:13:17चाहता हूं ये स्प्रिंग मैनेज कंपोनेंट
  6369. 4:13:18रहे। और सिक्योरिटी फिल्टर का जो बीन है
  6370. 4:13:21वो मैं रिटर्न कर रहा हूं स्प्रिंग बूट
  6371. 4:13:23को। ठीक है? अब यहां पर हम थोड़ी सी
  6372. 4:13:25कस्टमाइजेशन करेंगे। तो यहां पर देखिए
  6373. 4:13:27सिक्योरिटी का ऑब्जेक्ट है हमारे पास। तो
  6374. 4:13:28मैं कहूंगा http डॉट ऑथोराइज रिक्वेस्ट।
  6375. 4:13:32ठीक है? और यहां पर मैं कहूंगा ऑथोराइज़
  6376. 4:13:38रिक्वेस्ट। इस तरीके से और यहां पर इस
  6377. 4:13:42तरीके से लैम्ब्डा सिंटेक्स का इस्तेमाल
  6378. 4:13:44करके मैं कहूंगा ऑथोराइज़ रिक्वेस्ट डॉट
  6379. 4:13:47एनी रिक्वेस्ट। तो कोई भी रिक्वेस्ट आए
  6380. 4:13:49अगर सारी रिक्वेस्ट है ऑथेंटिकेटेड।
  6381. 4:13:52ठीक है? तो मैं कह रहा हूं यहां पर सारी
  6382. 4:13:54रिक्वेस्ट जो भी आती है वो ऑथेंटिकेटेड
  6383. 4:13:57है। ऐसा मैंने लिख दिया है। और फिर यहां
  6384. 4:13:58पर मैं कहूंगा http डॉट http बेसिक। देखिए
  6385. 4:14:03मैं बेसिक ऑथेंटिकेशन इनेबल कर रहा हूं
  6386. 4:14:05विथ डिफ़ॉल्ट्स। ठीक है? बेसिक ऑथेंटिकेशन
  6387. 4:14:09इनेबल कर रहा हूं विथ डिफ़ॉल्ट्स। डिफ़ॉल्ट
  6388. 4:14:11कॉन्फ़िगरेशन के साथ बेसिक ऑथेंटिकेशन को
  6389. 4:14:12इनेबल कर रहा हूं। और फिर रिटर्न कर रहा
  6390. 4:14:14हूं http डॉट बिल्ट यहां पर। ठीक है? तो
  6391. 4:14:19बस इतनी सी मेथड है। ठीक है? इतनी सी मेथड
  6392. 4:14:21के साथ हमारा काम हो जाएगा। हमने
  6393. 4:14:23सिक्योरिटी कॉन्फ़िगरेशन को डिफाइन कर
  6394. 4:14:25लिया। अब मैं अगर इसे रन करता हूं। ठीक
  6395. 4:14:27है? इसको रन करते हैं और देखते हैं क्या
  6396. 4:14:28आउटपुट मिलता है। तो यहां पर देखिए सबसे
  6397. 4:14:30पहले तो हमने हार्ड कोड कर रखी है
  6398. 4:14:31एप्लीकेशन प्रॉपर्टीज में यूजर नेम
  6399. 4:14:33पासवर्ड। तो यहां पर पासवर्ड तो कोई
  6400. 4:14:34प्रिंट नहीं होगी। एप्लीकेशन ऐसी ही
  6401. 4:14:36स्टार्ट हो गई। अब यहां पर अगर आप आते हो
  6402. 4:14:38और हेलो जो यूआरएल है उसे एक्सेस करने की
  6403. 4:14:41कोशिश करते हो। ठीक है? ओके। अच्छा तो अभी
  6404. 4:14:43तो मैं साइन आउट हूं। अच्छा मैंने लॉग आउट
  6405. 4:14:46नहीं किया था खुद को। तो मेरा सेशन जो है
  6406. 4:14:48वो एक्टिव है। ठीक है। देखिए लॉगउ नाम का
  6407. 4:14:50जो पेज है वो अभी है नहीं। ठीक है? तो मैं
  6408. 4:14:52क्या करूंगा? यहां से कुकीज़ को हटा दूंगा।
  6409. 4:14:55तो मेरी जो ऑथेंटिकेशन रिलेटेड इनेशन थी
  6410. 4:14:58पहले जो सेव थी वो चली जाएगी। ठीक है? अब
  6411. 4:15:01मैं हेलो पर आ जाता हूं। हेलो। अच्छा हेलो
  6412. 4:15:04पर भी आ रहा हूं। ठीक है। तो मैं मुझे
  6413. 4:15:07सेशन क्लियर क्लियर करने में थोड़ी सी
  6414. 4:15:09दिक्कत हो रही थी। सेशन क्लियर नहीं हो
  6415. 4:15:11रहा था। तो मैंने ब्राउज़र को रिस्टार्ट कर
  6416. 4:15:12दिया। ठीक है? तो सेशन हट गया है। इसका
  6417. 4:15:14मतलब जो मेरा ऑथेंटिकेटेड सेशन था वो हट
  6418. 4:15:17गया है। और मैंने जैसे ही हेलो एंड पॉइंट
  6419. 4:15:19को एक्सेस करने की कोशिश की। यहां पर
  6420. 4:15:21देखिए मैंने हेलो एंड पॉइंट टाइप किया।
  6421. 4:15:22यहां पर फॉर्म नहीं दिखाई दिया मुझे। ये
  6422. 4:15:24ब्राउज़र का पॉप अप दिखाई दिया। ठीक है?
  6423. 4:15:25देखिए मैं जैसे ही हेलो को एक्सेस करता
  6424. 4:15:27हूं। मुझे ये ब्राउज़र का पॉप अप दिखाई
  6425. 4:15:29देता है। ठीक है? तो फॉर्म हट गया है। ठीक
  6426. 4:15:31है? फॉर्म हट गया है और हम बेसिक
  6427. 4:15:33ऑथेंटिकेशन पर है और यहां पर मैं एडमिन
  6428. 4:15:35टाइप करूंगा और यहां पर एडमिन 1 2 3 या जो
  6429. 4:15:38भी पासवर्ड आपने एप्लीकेशन प्रॉपर्टीज
  6430. 4:15:40फाइल में लिख रखा है उसको साइन इन करेंगे
  6431. 4:15:42तो देखिए यहां पर हेलो दिखाई दे रहा है
  6432. 4:15:43आपको ठीक है लॉगिन आप कर रहे हो बिना
  6433. 4:15:47फॉर्म्स के कैसे कर रहे हो लॉग इन बिना
  6434. 4:15:49फॉर्म्स के अब बेसिक का बेसिक ऑथेंटिकेशन
  6435. 4:15:53को आप पोस्टमैन में भी इस्तेमाल कर सकते
  6436. 4:15:55हो पोस्टमैन में कैसे इस्तेमाल करना है
  6437. 4:15:56मैं वह भी दिखा देता हूं आपको ठीक है तो
  6438. 4:15:59यहां पर आ जाते हैं
  6439. 4:16:07अब यह जो बेसिक ऑथेंटिकेशन है इसको आप
  6440. 4:16:09पोस्टमैन में भी इस्तेमाल कर सकते हो।
  6441. 4:16:15तो अब ये सारा ऑथेंटिकेशन का जो सिस्टम
  6442. 4:16:17आपने यहां पर देखा ये आप पोस्टमैन में भी
  6443. 4:16:20ट्राई कर सकते हो। तो क्या है? पोस्टमैन
  6444. 4:16:21में जाना है आपको। पोस्टमैन ओपन है। यहां
  6445. 4:16:24पर एक नई रिक्वेस्ट बना लेनी है और आपको
  6446. 4:16:26यह जो यूआरएल है इसको पेस्ट कर देना है।
  6447. 4:16:28ठीक है? अब देखिए पोस्टमैन में एक तरीका
  6448. 4:16:31है जिसकी मदद से आप यहां पर ऑथेंटिकेशन की
  6449. 4:16:35जो डिटेल्स है वो आप ऑथराइजेशन टैब में
  6450. 4:16:38पास कर सकते हो। ठीक है? अब यहां पर
  6451. 4:16:39इन्हहेरिट ऑर्थ बाय पैरेंट बाय डिफ़ॉल्ट
  6452. 4:16:41सिलेक्टेड होता है। तो आपको क्या करना है?
  6453. 4:16:43यहां पर क्लिक करना है और यहां पर देखिए
  6454. 4:16:45बेसिक ऑथ का ऑप्शन है। ठीक है? बेसिक ऑथ
  6455. 4:16:48को सेलेक्ट कर लीजिए। तो यहां पर देखिए
  6456. 4:16:50यूजरनेम पासवर्ड पूछा जाएगा आपको। तो
  6457. 4:16:52यूजरनेम तो एडमिन है। पासवर्ड में टाइप कर
  6458. 4:16:54दीजिए एडमिन 1 2 3 ठीक है? और इसको सेंड
  6459. 4:16:57करके देखिए। सेंड करोगे तो यह रिक्वेस्ट
  6460. 4:16:59चल जाएगी। अगर आप यह डिटेल्स नहीं भेजते
  6461. 4:17:03हो तो मैं अगर नो ऑथ सेलेक्ट करता हूं और
  6462. 4:17:05एक्सेस करने की ट्राई करता हूं तो देखिए
  6463. 4:17:07401 अन ऑथराइज़्ड और यहां पर ये बोल रहा है
  6464. 4:17:09मुझे कि पास द करेक्ट ऑथेंटिकेशन
  6465. 4:17:11क्रेडेंशियल्स। इसका मतलब क्या है? यह
  6466. 4:17:13एपीआई जो है वो ऑथेंटिकेटेड है और इसको
  6467. 4:17:16एक्सेस करने के लिए आपको लगेगी एक आपको
  6468. 4:17:20लगेगा यूजरनेम पासवर्ड यानी कि ऑथेंटिकेशन
  6469. 4:17:22डिटेल्स। ठीक है? तो आपको यहां पर आना है
  6470. 4:17:24बेसिक ऑथ में यूजरनेम पासवर्ड एंटर कीजिए
  6471. 4:17:27और जो भी एंटर कर रहे हो इसको सेंड कीजिए।
  6472. 4:17:29तो देखिए यहां पर सारी डिटेल्स ये जे सेशन
  6473. 4:17:31आईडी वगैरह ये सब सेट हो जाएगी। कुकीज़
  6474. 4:17:33हेडर्स आप देख सकते हो सारी चीजें। ठीक
  6475. 4:17:35है? तो जे सेशन आईडी क्या करता है? जे
  6476. 4:17:38सेशन आईडी आपकी जो ऑथेंटिकेशन की सेशन है
  6477. 4:17:41उसको मैनेज करता है। तो अगर आप ब्राउज़र
  6478. 4:17:43में भी एंटर करते हो। ठीक है? तो ब्राउज़र
  6479. 4:17:46में भी अगर आप यहां पर आओगे इंस्पेक्ट और
  6480. 4:17:48यहां पर एप्लीकेशन में जाइए और लोकल होस्ट
  6481. 4:17:50ईटी80 को सेलेक्ट कीजिए। अच्छा यहां पर
  6482. 4:17:52अभी दिखाई नहीं दे रही है। स्टोरेज में
  6483. 4:17:54जाइए। अच्छा यहां पर दिखाई नहीं दे रही
  6484. 4:17:57है। सेशन स्टोरेज में भी दिखाई नहीं दे
  6485. 4:17:59रही है। अच्छा यहां पर तो दिखाई नहीं दे
  6486. 4:18:02रही है। लेकिन अगर आप नेटवर्क में जाओगे
  6487. 4:18:06और यहां पर जाओगे तो यहां पर आपको दिखाई
  6488. 4:18:08देगी कुकी के तौर पे जे सेशन आईडी। देखिए
  6489. 4:18:12ये कुकी की तरफ तौर पे सेव्ड है। तो यहां
  6490. 4:18:14पर कुकी में दिखाई देती है क्या? कुकीज़
  6491. 4:18:15में जाते हो अगर हां तो कुकीज़ में दिखाई
  6492. 4:18:18दे रही है देखिए आपको कुकीज़ में एप्लीकेशन
  6493. 4:18:20में कुकीज़ के अंदर दिखाई दे रही है जे
  6494. 4:18:22सेशन आईडी तो ऐसे काम करता है पोस्टमैन
  6495. 4:18:24में और ब्राउज़र में बेसिक ऑथेंटिकेशन हमने
  6496. 4:18:27यहां पर किया क्या है उसको एक बार रिवाइज़
  6497. 4:18:29कर लेते हैं देखिए हमने एक कस्टम
  6498. 4:18:31कॉन्फ़िगरेशन डिफाइन की है जहां पर हम
  6499. 4:18:33सिक्योरिटी फ़्टर चेन को थोड़ा सा मॉडिफाई
  6500. 4:18:35कर रहे हैं। ठीक है? हम ये कह रहे हैं कि
  6501. 4:18:37फॉर्म बेस्ड ऑथेंटिकेशन जो है आपके पास
  6502. 4:18:40उसको इस्तेमाल ना करें और बेसिक
  6503. 4:18:42ऑथेंटिकेशन का इस्तेमाल किया जाए। हमने
  6504. 4:18:44छोटी सी कॉन्फ़िगरेशन लिखी है उसके लिए
  6505. 4:18:46जहां पर हम ये बोल रहे हैं कि बेसिक
  6506. 4:18:47ऑथेंटिकेशन का इस्तेमाल करो और सिक्योरिटी
  6507. 4:18:50फिल्टर चेन के ऑब्जेक्ट को हम एज अ बीन
  6508. 4:18:52रिटर्न कर रहे हैं। और इस फाइल की जानकारी
  6509. 4:18:55स्प्रिंग बूट को देने के लिए हमने इसे
  6510. 4:18:57कॉन्फ़िगरेशन मार्क कर रखा है और वेब
  6511. 4:18:59सिक्योरिटी को इनेबल भी कर रखा है। उम्मीद
  6512. 4:19:02करता हूं यह हेल्पफुल रहा है और आप अपने
  6513. 4:19:05मशीन पर यह सब कुछ कॉन्फ़िगर भी कर पाए हो।
  6514. 4:19:14तो चलिए दोस्तों बात करते हैं इन मेमोरी
  6515. 4:19:17ऑथेंटिकेशन के बारे में। ठीक है? अब ये इन
  6516. 4:19:19मेमोरी ऑथेंटिकेशन क्या है? देखिए फिलहाल
  6517. 4:19:22आपने जो कोड लिखा है यहां पर मैंने उसमें
  6518. 4:19:26यूजर की जो क्रेडेंशियल्स है यानी कि
  6519. 4:19:28यूजरनेम और पासवर्ड को डिफाइन किया है।
  6520. 4:19:30यानी कि एक यूजर एग्ज़िस्ट करता है हमारे
  6521. 4:19:32स्प्रिंग सिक्योरिटी और स्प्रिंग बूट
  6522. 4:19:34एप्लीकेशन में। ठीक है? अब ये यूजर कहां
  6523. 4:19:37एग्ज़िस्ट करता है? क्या ये यूजर डेटाबेस
  6524. 4:19:39में एक्सिस्ट करता है? जी नहीं यह यूजर
  6525. 4:19:41एग्ज़िस्ट करता है इन मेमोरी। ठीक है?
  6526. 4:19:43लेकिन हमने इसे अह डिक्लेअ किया है या
  6527. 4:19:46इसकी चीजें या क्रेडेंशियल्स डिफाइन किए
  6528. 4:19:49हैं प्रॉपर्टीज फाइल में। ठीक है? अब यहां
  6529. 4:19:51पर प्रॉपर्टीज फाइल में तो आप यूज़र्स
  6530. 4:19:54डिफाइन कर सकते हो इस तरीके से। लेकिन आप
  6531. 4:19:56एक ही यूजर के क्रेडेंशियल्स डिफाइन कर
  6532. 4:19:58सकते हो। तो ये लिमिटेशन है प्रॉपर्टीज़
  6533. 4:19:59फाइल की। अब देखिए जनरली आप अगर एप्लीकेशन
  6534. 4:20:02पे काम करते हो तो मल्टीपल यूज़र्स होते
  6535. 4:20:04हैं। मल्टीपल रोल्स होते हैं उसके। ठीक
  6536. 4:20:06है? अलग-अलग तरह के यूज़र्स होते हैं
  6537. 4:20:08एप्लीकेशन में। तो एक यूजर से तो काम होता
  6538. 4:20:10नहीं है। अनलेस एंड अंटिल अगर आप कोई
  6539. 4:20:12सिंपल एप्लीकेशन या सिंगल यूजर एप्लीकेशन
  6540. 4:20:14बना रहे हो तो। ठीक है? जनरली प्रोडक्शन
  6541. 4:20:17ग्रेड एप्लीकेशनेशंस मल्टी यूजर
  6542. 4:20:18एप्लीकेशनेशंस होती है। और इसीलिए आपको यह
  6543. 4:20:21पता होना चाहिए कि मल्टीपल यूज़र्स को किस
  6544. 4:20:24तरीके से स्प्रिंग बूट में मैनेज किया
  6545. 4:20:26जाए। तो इसके लिए मल्टी यूजर ऑथेंटिकेशन
  6546. 4:20:29या मल्टीपल यूज़र्स को आप किस तरीके से
  6547. 4:20:31मैनेज और स्टोर कर सकते हो। सिक्योरिटी के
  6548. 4:20:33स्टैंड पॉइंट से ऑथेंटिकेट ऑथराइज कर सकते
  6549. 4:20:35हो ये जरूरी है। ठीक है? तो हम क्या करने
  6550. 4:20:38वाले हैं? इन मेमोरी ऑथेंटिकेशन का
  6551. 4:20:40इस्तेमाल करके हम मल्टीपल यूज़र्स बनाने
  6552. 4:20:42वाले हैं। और इन मेमोरी ऑथेंटिकेशन का
  6553. 4:20:44मतलब है कि जो यूजर है वो कोड में
  6554. 4:20:47एक्सिस्ट करेगा। डेटाबेस में नहीं। जनरली
  6555. 4:20:49आप एप्लीकेशन बनाते हो तो डेटाबेस में
  6556. 4:20:52यूज़र्स एक्सिस्ट करते हैं। और जो
  6557. 4:20:53ऑथेंटिकेशन होता है वो डेटाबेस के यूज़र्स
  6558. 4:20:55के अगेंस्ट होता है। वहां पर भी पहुंचेंगे
  6559. 4:20:57हम। लेकिन फिलहाल इन मेमोरी के बारे में
  6560. 4:21:00बात करते हैं। स्टेप बाय स्टेप पढ़ेंगे।
  6561. 4:21:01फिर उन यूज़र्स को डेटाबेस की ओर भी लेके
  6562. 4:21:04जाएंगे। ठीक है? तो देखिए यहां पर अब हमने
  6563. 4:21:06क्या किया हुआ है? प्रॉपर्टीज में एक यूजर
  6564. 4:21:09के क्रेडेंशियल्स डाल दिए। ठीक है? और अगर
  6565. 4:21:11आप ये ऐप चलाते हो और एंड पॉइंट को एक्सेस
  6566. 4:21:15करते हो तो ये क्रेडेंशियल्स के बिहाफ पर
  6567. 4:21:17आपको एप्लीकेशन की एक्सेस दी जाती है।
  6568. 4:21:20लेकिन मैं चाहता हूं मेरा एप्लीकेशन जो है
  6569. 4:21:22मल्टी यूजर रहे। ठीक है? एक यूजर नहीं
  6570. 4:21:24मुझे सिंगल यूजर नहीं चाहिए। मुझे चाहिए
  6571. 4:21:27क्या चाहिए? मुझे चाहिए मल्टी यूजर
  6572. 4:21:29एप्लीकेशन। तो इसके लिए मैं क्या करूंगा?
  6573. 4:21:32मैं इसे कमेंट कर दूंगा। ठीक है? इसको
  6574. 4:21:34कमेंट करना जरूरी है। अब मैं सिक्योरिटी
  6575. 4:21:36कॉन्फ़िगरेशन में आ जाऊंगा। यहां पर मैंने
  6576. 4:21:38सिक्योरिटी कॉन्फ़िगरेशन डिफाइन कर रखा है।
  6577. 4:21:40अब यहां पर मैं अ एक कोड लिखूंगा जिसके
  6578. 4:21:44जरिए मैं यूजर यूजर डिटेल्स सर्विस की जो
  6579. 4:21:48बीन है, ठीक है? अ उसको क्रिएट करूंगा। अब
  6580. 4:21:52यूजर डिटेल सर्विस क्या है? ठीक है? यूजर
  6581. 4:21:55डिटेल सर्विस की बीन क्यों बनानी है? तो
  6582. 4:21:57देखिए आप स्प्रिंग सिक्योरिटी का इस्तेमाल
  6583. 4:21:59करेंगे तो यहां पर मैं लिख देता हूं यूजर
  6584. 4:22:01डिटेल सर्विस एक हिसाब से यूजर डिटेल
  6585. 4:22:04देखिए यहां पर आपको यूजर डिटेल सर्विस
  6586. 4:22:06दिखाई देगी यूजर डिटेल्स भी दिखाई दे रही
  6587. 4:22:07है और यूजर डिटेल सर्विस ये दोनों जो है
  6588. 4:22:10इनबिल्ट अ इंटरफसेस है स्प्रिंग
  6589. 4:22:13सिक्योरिटी के हमने क्रिएट नहीं किए तो
  6590. 4:22:14यूजर डिटेल सर्विस में अगर आप ऐसे लिखते
  6591. 4:22:16हो और कंट्रोल प्रेस करके इसके अंदर जाते
  6592. 4:22:19हो यहां पर डाउनलोड सोर्सर्सेस मैं कर
  6593. 4:22:21लूंगा ठीक है तो यूजर डिटेल सर्विस है
  6594. 4:22:24क्या ये एक ऐसा अह इंटरफ़ेस है जिसके ज़रिए
  6595. 4:22:29स्प्रिंग सिक्योरिटी अह देखता है यूज़र की
  6596. 4:22:32इनेशन को। तो देखिए कोर इंटरफ़ेस व्हिच
  6597. 4:22:35लोड्स द यूजर स्पेसिफिक डेटा। तो इस
  6598. 4:22:38इंटरफ़ेस की मदद से सिक्योरिटी के लिए यानी
  6599. 4:22:41कि ऑथेंटिकेशन ऑथराइज़ेशन के लिए स्प्रिंग
  6600. 4:22:43फ्रेमवर्क को काम करने के लिए जो यूजर
  6601. 4:22:45इनेशन लोड की जाती है, वह इस इंटरफ़ेस की
  6602. 4:22:48मदद से की जाती है। ठीक है? और यह इंटरफ़ेस
  6603. 4:22:52ही है अह इनबिल्ट इंटरफ़ेस। ठीक है? हमने
  6604. 4:22:54क्रिएट नहीं किया यह इंटरफ़ेस को। तो देखिए
  6605. 4:22:56इसमें एक मेथड भी है लोड बाय यूजरनेम जो
  6606. 4:22:59कि लोकेट करता है यूजर को बेस्ड ऑन द
  6607. 4:23:02यूजरनेम। देखिए आपको अगर ऑथेंटिकेट करना
  6608. 4:23:03है यूजर को तो आपकी उसकी इंफॉर्मेशनेशन तो
  6609. 4:23:06लोड करनी होगी। आप इन मेमोरी लोड कीजिए या
  6610. 4:23:09डेटाबेस से लोड कीजिए। आप कहीं से भी लोड
  6611. 4:23:11कीजिए लेकिन लोड तो करनी ही होगी। ठीक है?
  6612. 4:23:13तो यूजर डिटेल्स सर्विस की मदद से
  6613. 4:23:14स्प्रिंग सिक्योरिटी जो है यूजर की
  6614. 4:23:16डिटेल्स को लोड करता है। बस इतना समझ
  6615. 4:23:18लीजिए। ठीक है? अब लोड कहां से करता है?
  6616. 4:23:20उसका सोर्स क्या है? ये डिपेंड करता है आप
  6617. 4:23:22किस टाइप के एप्लीकेशन बना रहे हो। आप
  6618. 4:23:24फाइल से लोड कर सकते हो। यूजर की इनेशन आप
  6619. 4:23:27डेटाबेस से लोड कर सकते हो। आप इन मेमोरी
  6620. 4:23:30लोड कर सकते हो। डिपेंडिंग ऑन आप किस
  6621. 4:23:31तरीके की एप्लीकेशन बना रहे हो। आप कहीं
  6622. 4:23:33से भी लोड कर सकते हो। ठीक है? तो ये तो
  6623. 4:23:35क्लियर हो गया यूजर डिटेल सर्विस। और इसकी
  6624. 4:23:37बीन क्यों बनानी है? क्योंकि यही वो
  6625. 4:23:38इंटरफ़ेस है या इसी की मदद से जो यूजर की
  6626. 4:23:42इनेशन है लोड की जाती है स्प्रिंग
  6627. 4:23:43सिक्योरिटी में। तो हमें इसकी बीन बनानी
  6628. 4:23:45होगी। और इसकी बीन बनाते वक्त हम यूजर
  6629. 4:23:48डिटेल्स का भी इस्तेमाल करेंगे। ठीक है?
  6630. 4:23:50देखिए यूजर डिटेल्स सर्विस तो आपने देख
  6631. 4:23:52ली। अभी मैं यहां पर ना ऐसे यूजर डिटेल्स
  6632. 4:23:54भी लिख देता हूं। अच्छा यहां पर सेमी
  6633. 4:23:56कॉललन डाल देता हूं। ऐसे यूजर डिटेल्स। तो
  6634. 4:23:58देखिए यह भी इनबिल्ट इंटरफ़ेस है। ठीक है?
  6635. 4:24:01इसके अंदर भी आप अगर जाओगे तो ये देखिए ये
  6636. 4:24:03क्या है? ये प्रोवाइड करता है कोर यूजर की
  6637. 4:24:06इनेशन। देखिए स्प्रिंग सिक्योरिटी है।
  6638. 4:24:08स्प्रिंग सिक्योरिटी को चाहिए होती है
  6639. 4:24:10यूजर की इनेशन। ठीक है? तो मैं यहां पर आ
  6640. 4:24:12जाता हूं। ठीक है? देखिए अ यहां पर मैं
  6641. 4:24:16बना लेता हूं यूजर डिटेल्स सर्विस। ठीक
  6642. 4:24:19है? यूजर डिटेल्स डिटेल सर्विस ऐसे ठीक है
  6643. 4:24:25और दूसरी चीज है यूजर डिटेल्स
  6644. 4:24:30ठीक है तो देखिए ये दोनों इंटरफसेस है
  6645. 4:24:33यूजर डिटेल सर्विस क्या करेगी यूजर डिटेल
  6646. 4:24:35सर्विस यूजर इनेशन को लोड करेगी कोई भी
  6647. 4:24:38सोर्स से सोर्स चाहे डेटाबेस हो फाइल हो
  6648. 4:24:40या इन मेमोरी हो ठीक है डिपेंडिंग ऑन योर
  6649. 4:24:43एप्लीकेशन आपकी जो भी एप्लीकेशन है उसके
  6650. 4:24:45बिहाफ पर अब यूजर की जो इनेशन फैच हो रही
  6651. 4:24:48है उसको उसको एक फॉर्म में तो रिप्रेजेंट
  6652. 4:24:50करना होगा ना। आप कैसे रिप्रेजेंट करोगे
  6653. 4:24:52यूजर की इनेशन को? यूजर की इनेशन है उसमें
  6654. 4:24:54काफी सारी प्रॉपर्टीज हो सकती है। जैसे कि
  6655. 4:24:56नाम, यूजर का ईमेल हो सकता है, यूजरनेम हो
  6656. 4:24:59सकता है, पासवर्ड हो सकता है। काफी सारी
  6657. 4:25:00इनेशन हो सकती है। तो, उस यूजर की इनेशन
  6658. 4:25:03को आप कैसे रिप्रेजेंट करोगे? उसके लिए
  6659. 4:25:05क्लास होनी चाहिए, कुछ तो होना चाहिए,
  6660. 4:25:06इंटरफ़ेस होना चाहिए। करेक्ट? तो, यूजर
  6661. 4:25:08डिटेल्स एक ऐसा इंटरफ़ेस है जिसके जरिए
  6662. 4:25:11यूजर की इनेशन को रिप्रेजेंट किया जाता है
  6663. 4:25:13स्प्रिंग सिक्योरिटी में। देखिए दोनों जो
  6664. 4:25:16इंटरफसेस है यह काफी इंपॉर्टेंट इंटरफसेस
  6665. 4:25:18हैं। देखिए अगर आप स्प्रिंग बूट बैक एंड
  6666. 4:25:21डेवलपमेंट को सीरियसली ले रहे हो। ठीक है?
  6667. 4:25:24तो स्प्रिंग सिक्योरिटी से आप बच नहीं
  6668. 4:25:26पाओगे। ठीक है? स्प्रिंग सिक्योरिटी का
  6669. 4:25:28इस्तेमाल होना ही है। ठीक है? आप बिगिनर
  6670. 4:25:31हो, मिड लेवल डेवलपर हो, एडवांस लेवल
  6671. 4:25:33डेवलपर हो, आप लॉन्ग टर्म डेवलपर बने रहना
  6672. 4:25:36चाहते हो। स्प्रिंग सिक्योरिटी डिफ़ॉल्ट
  6673. 4:25:38फ्रेमवर्क है। सिक्योरिटी इंप्लीमेंट करने
  6674. 4:25:40के लिए स्प्रिंग बूट में। अगर आप कोई भी
  6675. 4:25:43कंपनी जॉइन करते हो तो स्प्रिंग
  6676. 4:25:44सिक्योरिटी का इस्तेमाल तो होना ही है
  6677. 4:25:45वहां पर। ठीक है? तो आपको ये दोनों जो
  6678. 4:25:48चीजें हैं यूजर डिटेल सर्विस और यूजर
  6679. 4:25:50डिटेल्स ये तो बार-बार सुनाई देगी आपको।
  6680. 4:25:52बार-बार नहीं हर बार सुनाई देगी। ठीक है?
  6681. 4:25:54तो यूजर डिटेल सर्विस जैसे कि मैं कहा
  6682. 4:25:56यूजर की इनेशन लोड करने के लिए यूजर डिटेल
  6683. 4:25:59सर्विस काम आती है। यूजर की इनेशन को
  6684. 4:26:01रिप्रेजेंट करने के लिए यूजर डिटेल्स होती
  6685. 4:26:03है। ठीक है? और आप यह जो डॉक्यूमेंटेशन है
  6686. 4:26:06देखिए यह यूजर डिटेल्स की जो
  6687. 4:26:08डॉक्यूमेंटेशन है प्रोवाइड स्कोर यूजर
  6688. 4:26:10इनेशन। ठीक है? प्रोवाइड स्कोर यूजर
  6689. 4:26:13इनफेशन आप देख सकते हो यहां पर। ठीक है?
  6690. 4:26:15पासवर्ड, यूजरनेम, यह सारी अथॉरिटीज का
  6691. 4:26:18मतलब है रोल्स। ठीक है? अथॉरिटीज का मतलब
  6692. 4:26:20क्या है? रोल्स। तो रोल्स जो हम बोलते हैं
  6693. 4:26:23तो अगर लाइक एक यूजर को एक एंड पॉइंट
  6694. 4:26:26एक्सेस करने की परमिशन है, दूसरी एंड
  6695. 4:26:29पॉइंट एक्सेस करने की नहीं है, तो उसे
  6696. 4:26:31कहेंगे अथॉरिटी। ठीक है? तो, वह उस इस
  6697. 4:26:34लैंग्वेज में अथॉरिटी बोलते हैं। इज़
  6698. 4:26:36अकाउंट एक्सपायर्ड, नॉन एक्सपायर्ड, नॉन
  6699. 4:26:38लॉक्ड। ये सारी जो चीजें हैं ये बाय
  6700. 4:26:40डिफॉल्ट आपको दी जाती है यहां पर इस
  6701. 4:26:42इंटरफेस में। ठीक है? तो उम्मीद करता हूं
  6702. 4:26:44ये दोनों चीजें आपको समझ में आ गई है। ठीक
  6703. 4:26:46है? अब हम करने क्या वाले हैं और इन दोनों
  6704. 4:26:49चीजों के बारे में मैं क्यों बात कर रहा
  6705. 4:26:50हूं? एक तो सबसे पहली चीज तो है कि ये
  6706. 4:26:53दोनों इंटरफेस काफी इंपॉर्टेंट है। जैसे
  6707. 4:26:54कि मैं 10 बार बता बता चुका हूं। आपको समझ
  6708. 4:26:56भी आ गया रहेगा। ठीक है? लेकिन स्ट्रेस
  6709. 4:26:58करना जरूरी है। इंपॉर्टेंट है ये। स्किप
  6710. 4:27:00नहीं कीजिएगा। अब हम यूजर डिटेल सर्विस की
  6711. 4:27:03बीन को एक्सपोज़ करेंगे। यहां पर क्रिएट
  6712. 4:27:05करेंगे। ठीक है? और यूजर डिटेल्स को
  6713. 4:27:10इस्तेमाल करके हम यूज़र्स क्रिएट करेंगे।
  6714. 4:27:12ठीक है? तो चलिए आ जाते हैं यहां पर। ठीक
  6715. 4:27:15है? इतना समझ में आ गया। अब मैं क्या
  6716. 4:27:17करूंगा? पब्लिक यूजर डिटेल्स सर्विस को
  6717. 4:27:20इस्तेमाल करूंगा यहां पर और मैं कहूंगा
  6718. 4:27:22यूजर डिटेल्स सर्विस। ऐसे मैं मेथड का नाम
  6719. 4:27:24तो वैसे कुछ भी लिख सकता हूं यहां पर। और
  6720. 4:27:26यहां पर इसको एज़ ए बीन मार्क कर दूंगा।
  6721. 4:27:29बीन मार्क करूंगा तो ये क्या हो जाएगा?
  6722. 4:27:31स्प्रिंग मैनेज कंपोनेंट हो जाएगा। यानी
  6723. 4:27:33कि स्प्रिंग इस कंपोनेंट को यूजर डिटेल
  6724. 4:27:35सर्विस को मैनेज करेगा। ठीक है? अब यहां
  6725. 4:27:37पर यूजर बनानी है हमें। तो मैं क्या
  6726. 4:27:39कहूंगा? यूजर डिटेल्स और यूजर वन।
  6727. 4:27:43चलिए यूजर वन बनाते हैं। और इज़ इक्वल टू
  6728. 4:27:46यूजर डॉट वि यूजर नेम। ठीक है? और देखिए
  6729. 4:27:51यूजर क्या है? इस पर अगर आप ओवर करते हो।
  6730. 4:27:54ठीक है?
  6731. 4:27:58इस पर अगर आप ओवर करते हो तो ये देखिए
  6732. 4:28:00यहां पर ये ये यूजर की क्लास है। और ये
  6733. 4:28:03कहां पे है? स्प्रिंग सिक्योरिटी में है।
  6734. 4:28:06ठीक है? तो यह जो यूजर की क्लास है उसका
  6735. 4:28:12जो फील्ड्स है वगैरह वो सब यहां पर
  6736. 4:28:14डिफाइंड होता है। तो यहां पर अगर आप
  6737. 4:28:16स्क्रॉल करोगे तो जो आपने यूजर डिटेल्स
  6738. 4:28:18में देखा था। ठीक है? जो गेटर्स आपने देखे
  6739. 4:28:20थे उन सारी की फील्ड्स जो है वो यहां पर
  6740. 4:28:22डिफाइंड होंगी। आप देख सकते हो। ठीक है?
  6741. 4:28:24उन सों की जो फील्ड्स है वो यहां पर
  6742. 4:28:26डिफाइंड होगी। ठीक है? तो ये है और यहां
  6743. 4:28:28पर गेटर सेटर्स पूरी की पूरी क्लास दिखाई
  6744. 4:28:30देगी आपको। ठीक है? यहां पर देखिए पूरी की
  6745. 4:28:33पूरी और यहां पर लिखा भी हुआ है कि मॉडल्स
  6746. 4:28:36कोर यूजर इंफॉर्मेशनेशन रिट्रीव्ड बाय ए
  6747. 4:28:39यूजर डिटेल्स सर्विस एंड डेवलपर्स मे यूज़
  6748. 4:28:42दिस क्लास मे यूज़ दिस क्लास डायरेक्टली सब
  6749. 4:28:45क्लास इट और राइट देयर ओन यूजर डिटेल्स
  6750. 4:28:48इंप्लीमेंटेशन फ्रॉम स्क्रैच। तो आप इस
  6751. 4:28:50क्लास के डायरेक्टली इस्तेमाल कर सकते हो।
  6752. 4:28:52अगर देखिए स्प्रिंग सिक्योरिटी क्या बोलता
  6753. 4:28:54है? यूजर जो रिप्रेजेंट होता है स्प्रिंग
  6754. 4:28:56सिक्योरिटी में उसका मैंने एक डिफ़ॉल्ट
  6755. 4:28:58स्ट्रक्चर मैंने बना दिया है। ठीक है?
  6756. 4:29:01डिफ़ॉल्ट स्ट्रक्चर मैंने बना दिया। इसका
  6757. 4:29:02मतलब यूजर में अह यूजर की जो डिटेल्स है
  6758. 4:29:05उसमें होगा पासवर्ड यूजरनेम होगा,
  6759. 4:29:07अथॉरिटीज़ होगा, अकाउंट एक्सपायर्ड है या
  6760. 4:29:09नहीं है वो होगा। ये बुलियन फील्ड्स हैं
  6761. 4:29:11बाय द वे सारी अकाउंट लॉक्ड है या नहीं ये
  6762. 4:29:13होगा। क्रेडेंशियल्स एक्सपायर्ड है या
  6763. 4:29:15नहीं होगा और इनेबल्ड है या नहीं ये सारी
  6764. 4:29:17चीजें होगी। ठीक है? ऐसा स्प्रिंग
  6765. 4:29:19सिक्योरिटी बोलता है। अब आप एक बैंकिंग ऐप
  6766. 4:29:22अगर बना रहे हो। आपको यहां पे यूजर की
  6767. 4:29:24इनेशन के अगेंस्ट स्टोर करना होगा। कस्टमर
  6768. 4:29:26आईडी, बैंक का कस्टमर आईडी, अकाउंट नंबर,
  6769. 4:29:29लोन अकाउंट नंबर। तो ये सारी चीजें स्टोर
  6770. 4:29:31करनी होगी। ये स्प्रिंग सिक्योरिटी
  6771. 4:29:32प्रोवाइड कर रहा है क्या? नहीं कर रहा है।
  6772. 4:29:34तो आपको क्या करना होगा? आपको एक कस्टम
  6773. 4:29:36यूजर बनाना होगा आपके एंड पे। वो आप कैसे
  6774. 4:29:39बनाओगे? इसको मॉडिफाई करके। और वो ही चीज
  6775. 4:29:41यहां पर बोली जा रही है। ठीक है? आप
  6776. 4:29:44डायरेक्टली इस्तेमाल करें। डायरेक्टली
  6777. 4:29:45इस्तेमाल कब करोगे आप? डायरेक्टली
  6778. 4:29:47इस्तेमाल करोगे जब आपकी ये रिक्वायरमेंट
  6779. 4:29:48को सेटिस्फाई कर रहा है। अगर आप सिंपल
  6780. 4:29:51यूजर की इनफेशन स्टोर करना चाहते हो
  6781. 4:29:52सिंपली। ठीक है? ज्यादा कुछ आपको
  6782. 4:29:54कॉम्प्लेक्स नहीं करना है तो आप
  6783. 4:29:55डायरेक्टली इसको इस्तेमाल कर सकते हो।
  6784. 4:29:57लेकिन अगर आपको कुछ डोमेन स्पेसिफिक
  6785. 4:29:59इनफेशन स्टोर करनी है जैसे कि आप बैंकिंग
  6786. 4:30:01डोमेन मैप बना रहे हो। ठीक है? अकाउंट
  6787. 4:30:02नंबर, लोन अकाउंट नंबर ये सारी चीजें तो
  6788. 4:30:04अब यहां पर प्रोवाइड नहीं हो रही है। तो
  6789. 4:30:06आप इसको सब क्लास करके ठीक है? इन्हहेरिट
  6790. 4:30:08करके आप एक कस्टम यूजर की क्लास बना सकते
  6791. 4:30:11हो और उसको इस्तेमाल कर सकते हो। ऐसा ऐसी
  6792. 4:30:13सारी चीजें अलाउड है। आप कर सकते हो। ठीक
  6793. 4:30:16है? ठीक है? उम्मीद करता हूं इतना क्लियर
  6794. 4:30:18है। ठीक है? तो यहां पर हम क्या करेंगे?
  6795. 4:30:20अब यहां पर मैंने यूजर को बनाया विद
  6796. 4:30:23यूजरनेम और यहां पर आप कोई भी यूजरनेम दे
  6797. 4:30:25सकते हो। जैसे कि मैं दे रहा हूं यूजर वन।
  6798. 4:30:27ठीक है? और फिर यहां पर आप पासवर्ड दे
  6799. 4:30:29सकते हो। पासवर्ड मैं दे रहा हूं पासवर्ड
  6800. 4:30:31वन। उप्स पासवर्ड वन ऐसे। और यहां पर मैं
  6801. 4:30:35बोल देता हूं बिल्ट। ठीक है? बिल्ट। अब
  6802. 4:30:38देखिए ये जो पासवर्ड वन है इसको मैंने अ
  6803. 4:30:42किसी तरीके से हैश या हार्ड कोड नहीं किया
  6804. 4:30:45है। ठीक है? तो मुझे यहां पर स्प्रिंग
  6805. 4:30:47सिक्योरिटी को बोलना होगा। बोलना क्या
  6806. 4:30:50होगा कि ये जो पासवर्ड है इसको ऐसे ही
  6807. 4:30:52प्लेन टेक्स्ट फॉर्मेट में अभी स्टोर
  6808. 4:30:53कीजिए। ठीक है? अभी मैं डेवलपमेंट मोड पे
  6809. 4:30:55हूं और मैं इसको हार्ड कोड एनकोड नहीं
  6810. 4:30:57करना चाहता। ठीक है? तो अभी एनकोडिंग नहीं
  6811. 4:30:59कर रहे हम। तो यहां पर कर्ली बसेस लिखेंगे
  6812. 4:31:01और यहां पर एन ओपी लिखेंगे। ठीक है? ये
  6813. 4:31:04सिंटेक्स की मदद से हम क्या बोल रहे हैं?
  6814. 4:31:06हम बोल रहे हैं कि पासवर्ड को प्लेन
  6815. 4:31:08टेक्स्ट में ही रखिए। क्योंकि ये
  6816. 4:31:09डेवलपमेंट मोड में हम थोड़ा सीख रहे हैं।
  6817. 4:31:11ठीक है? तो अभी एनकोडिंग वगैरह को लाते
  6818. 4:31:13नहीं है। थोड़ी चीजें कॉम्प्लेक्स हो
  6819. 4:31:14जाएगी। तो अभी के लिए सिंपल रख रहा हूं।
  6820. 4:31:16एन ओपी लिख के मैं स्प्रिंग सिक्योरिटी को
  6821. 4:31:18ये बोल रहा हूं कि इस पासवर्ड को एज अ
  6822. 4:31:20प्लेन टेक्स्ट कंसीडर कीजिए। ठीक है?
  6823. 4:31:22जनरली स्प्रिंग सिक्योरिटी क्या एक्सपेक्ट
  6824. 4:31:24करता है कि आप एनकोड करके पासवर्ड दोगे
  6825. 4:31:27क्योंकि देखिए पासवर्ड ऐसे ही प्लेइंटेक्स
  6826. 4:31:29में स्टोर करना सबसे पहली बात तो सही
  6827. 4:31:32प्रैक्टिस नहीं है। ठीक है? लेकिन आप सीख
  6828. 4:31:34रहे हैं तो ठीक है? ऐसी कोई बात नहीं है।
  6829. 4:31:36सीखते हुए ये सारी चीजें करना बिल्कुल ओके
  6830. 4:31:38है। ठीक है? अब मैं क्या करूंगा? अब यहां
  6831. 4:31:40पर मैं रिटर्न करूंगा और रिटर्न करते वक्त
  6832. 4:31:43मैं कहूंगा न्यू इन मेमोरी
  6833. 4:31:48इन मेमोरी अ और यहां पर एक सजेशन आ रहा है
  6834. 4:31:51आपको ठीक है इन मेमोरी यूजर डिटेल्स
  6835. 4:31:54मैनेजर देखिए यूजर डिटेल्स मैनेजर इन
  6836. 4:31:56मेमोरी इसका इस्तेमाल करेंगे हम तो सबसे
  6837. 4:31:58पहले तो मैं आपको यह भी बता दूं देखिए अगर
  6838. 4:32:00मैं यूजर डिटेल्स मैनेजर लिखता हूं तो
  6839. 4:32:03यहां पर अलग-अलग टाइप के यूजर डिटेल्स
  6840. 4:32:05मैनेजर है जैसे कि इन मेमोरी है जीडीबीसी
  6841. 4:32:07यूजर डिटेल्स मैनेजर है ठीक है तो हम इन
  6842. 4:32:10मेमोरी का इस्तेमाल कर रहे हैं। अभी
  6843. 4:32:11फिलहाल डेटाबेस का इस्तेमाल नहीं कर रहे।
  6844. 4:32:13तो इन मेमोरी यूजर डिटेल्स मैनेजर का
  6845. 4:32:15इस्तेमाल करेंगे यहां पर। और यहां पर
  6846. 4:32:17जितने भी हमारे यूज़र्स हैं उसको पास कर
  6847. 4:32:19देंगे। तो हमारे यूजर क्या है? एक ही यूजर
  6848. 4:32:21है फिलहाल तो तो उसको पास कर देंगे। कॉमा
  6849. 4:32:23कर देंगे। ठीक है? अभी फिलहाल एक ही यूजर
  6850. 4:32:25क्रिएट किया है। हम और भी बनाएंगे। अभी
  6851. 4:32:27मैं फिलहाल इसको रन करता हूं और देखते हैं
  6852. 4:32:29ये सही तरीके से रन होता है या नहीं। तो
  6853. 4:32:31यूजर वन और पासवर्ड वन हमारे
  6854. 4:32:32क्रेडेंशियल्स हैं। इसको ध्यान में
  6855. 4:32:34रखिएगा। ठीक है? और अब यहां पर आ जाते हैं
  6856. 4:32:37पोस्टमैन में। ठीक है? एडमिन और एडमिन 1 2
  6857. 4:32:403 से कोशिश करता हूं पहले। तो देखिए यह
  6858. 4:32:43अनऑथराइज्ड आ गया क्योंकि गलत पासवर्ड हो
  6859. 4:32:45गया। क्यों गलत हो गया? क्योंकि मैंने
  6860. 4:32:47एप्लीकेशन डॉट प्रॉपर्टीज में जो हमने
  6861. 4:32:48डिफाइन किया था पहले उसको मैंने कमेंट कर
  6862. 4:32:50दिया है। तो ये गलत हो गया। ठीक है? अब
  6863. 4:32:52यहां पर क्या डालना होगा मुझे? यूजर वन और
  6864. 4:32:55फिर यहां पर डालना होगा पासवर्ड। पासवर्ड
  6865. 4:32:58वन डालना होगा। लेकिन मैं गलत डालता हूं
  6866. 4:33:00पासवर्ड। ठीक है? ये देखिए फिर भी नहीं
  6867. 4:33:03चलेगा ये। पासवर्ड वन डालता हूं अब। ठीक
  6868. 4:33:05है? पासवर्ड वन डालूंगा तो देखिए यह चल
  6869. 4:33:09गया। देख रहे हो आप? ठीक है? यह चल गया।
  6870. 4:33:12अगर मैं गलत यूजरनेम पासवर्ड डालता हूं
  6871. 4:33:14फिर से अगर कोई गलती होती है। पासवर्ड टू
  6872. 4:33:16और यूजर टू डालता हूं यहां पर और इसको रन
  6873. 4:33:19करता हूं। तो देखिए 401 अनऑथराइज्ड। तो ये
  6874. 4:33:22जो रिक्वेस्ट है ये ऑथेंटिकेटेड है और यह
  6875. 4:33:24तभी चलेगी जब आप यूजरनेम और पासवर्ड सही
  6876. 4:33:27दोगे। ठीक है? अब मैंने आपको प्रॉमिस किया
  6877. 4:33:30था कि हम एक नहीं मल्टीपल यूज़र्स के साथ
  6878. 4:33:32काम करेंगे। अभी तो एक ही यूज़र्स बनाया
  6879. 4:33:34हमने। करेक्ट? एक ही यूजर बनाया। तो हम एक
  6880. 4:33:36और यूजर बनाते हैं। चलिए कौन क्या नाम दें
  6881. 4:33:38इसको? तो इसको दे देते हैं एडमिन दे देते
  6882. 4:33:41हैं। चलिए यहां पर एक एडमिन बना देते हैं।
  6883. 4:33:44ठीक है? और फिर अ एडमिन पासवर्ड ऐसे लिख
  6884. 4:33:49देते हैं। ठीक है? एक और यूजर बना देते
  6885. 4:33:51हैं। ठीक है? तीन यूजर बनाएंगे हम। यूजर
  6886. 4:33:54टू भी बना लेते हैं क्योंकि मैंने वहां पे
  6887. 4:33:56यूजर टू टाइप किया हुआ है। ठीक है? यूजर
  6888. 4:34:00टू। ठीक है? यूजर टू पासवर्ड टू और यहां
  6889. 4:34:02पर आएंगे यूजर वन। यूजर टू और फिर एडमिन।
  6890. 4:34:08ठीक है? इसको रन करते हैं। अब रन करेंगे
  6891. 4:34:10तो देखिए आपको क्या दिखाई देगा? आपको
  6892. 4:34:13दिखाई देगा तीनों के तीनों यूजर आपके
  6893. 4:34:15क्रिएट हो चुके हैं। ठीक है? यूजर टू
  6894. 4:34:17पासवर्ड टू पहले नहीं चल रहा था। अब मैं
  6895. 4:34:19सेंड करूंगा तो ये चल जाएगा। ठीक है?
  6896. 4:34:21एडमिन और एडमिन पासवर्ड भी लिखूंगा और
  6897. 4:34:26चलाऊंगा तो यह भी चल जाएगा। ठीक है? तो
  6898. 4:34:29हमारी जो एप्लीकेशन है वो तीन यूज़र्स को
  6899. 4:34:31भी सर्व कर रही है। तीन क्रेडेंशियल्स को
  6900. 4:34:34ऑथेंटिकेट कर रही है और उतनी कैपेबल हो
  6901. 4:34:37चुकी है। कैसे हुई है इतनी कैपेबल? हमने
  6902. 4:34:39ज्यादा कोड नहीं लिखा है। देखिए आप ध्यान
  6903. 4:34:41से देखोगे तो मैंने सिर्फ इतना कोड ऐड
  6904. 4:34:44किया है। बस
  6905. 4:34:46बस ज्यादा कोड ऐड नहीं किया है मैंने। तो
  6906. 4:34:49देखिए आप स्प्रिंग सिक्योरिटी की पावर को
  6907. 4:34:50समझे। यहां पर स्प्रिंग सिक्योरिटी कितनी
  6908. 4:34:53बड़ी चीज है। चीजों को कितना आसान कर देती
  6909. 4:34:55है। यहां पर हमने मल्टी यूजर एप्लीकेशन
  6910. 4:34:59बनाने के लिए सिर्फ तीन सिर्फ तीन यूजर
  6911. 4:35:03डिटेल्स के ऑब्जेक्ट्स बनाए हैं। ठीक है?
  6912. 4:35:05और एक यूजर डिटेल्स सर्विस का इंस्टेंस
  6913. 4:35:09बनाकर हमने एज अ बीन एक्सपोज किया है। बस
  6914. 4:35:11बाकी सारा काम स्प्रिंग सिक्योरिटी कर रहा
  6915. 4:35:14है। क्या हमने यूजर नेम, पासवर्ड के चेक्स
  6916. 4:35:16लगाए? जी नहीं। हमने पासवर्ड के चेकक्स
  6917. 4:35:18हमने पासवर्ड, रोल्स वगैरह कुछ चेक्स
  6918. 4:35:19लगाए? जी नहीं। हमने कोई चेक्स नहीं
  6919. 4:35:21लगाया। ठीक है? ये ऐसे ही काम कर रहा है।
  6920. 4:35:24ठीक है? तो ये है बेनिफिट स्प्रिंग
  6921. 4:35:26सिक्योरिटी का। और देखिए स्प्रिंग
  6922. 4:35:27सिक्योरिटी इतना जबरदस्त है। इसलिए
  6923. 4:35:29स्प्रिंग सिक्योरिटी को इतना इस्तेमाल
  6924. 4:35:31किया जाता है। लाइक आप अगर आप प्रोडक्शन
  6925. 4:35:33ग्रिड एप्लीकेशनेशंस बनाओगे आगे चलके कोई
  6926. 4:35:35भी एप्लीकेशनेशंस बनाते हो स्प्रिंग
  6927. 4:35:37सिक्योरिटी डिफेक्ट होता है। ठीक है? तो
  6928. 4:35:40देखिए हमने क्या किया यहां पर? सबसे पहले
  6929. 4:35:43तो एप्लीकेशन डॉट प्रॉपर्टीज में पासवर्ड
  6930. 4:35:45सेव था। ठीक है? और हमारी एप्लीकेशन
  6931. 4:35:47लिमिटेड थी जो कि एक पासवर्ड के साथ ही
  6932. 4:35:49काम करती एक यूजरनेम पासवर्ड के साथ काफी
  6933. 4:35:51लिमिटेड थी। तो मैंने वो चीज वो लिमिटेशन
  6934. 4:35:54को हटाकर मैंने एप्लीकेशन डॉट प्रॉपर्टीज
  6935. 4:35:57में वो चीज को कमेंट कर कर मैंने
  6936. 4:35:59सिक्योरिटी कॉन्फ़िगरेशन में थोड़े से
  6937. 4:36:01कस्टमाइजेशंस लाए जहां पर मैंने इन मेमोरी
  6938. 4:36:03ऑथेंटिकेशन को इस्तेमाल किया। इन मेमोरी
  6939. 4:36:05ऑथेंटिकेशन को इस्तेमाल किया ये कैसे पता
  6940. 4:36:07चल रहा है? क्योंकि यहां पर मैंने इन
  6941. 4:36:09मेमोरी यूजर डिटेल्स मैनेजर का इस्तेमाल
  6942. 4:36:12किया है। और जो यूज़र्स हैं वो डेटाबेस में
  6943. 4:36:14स्टोर ही नहीं हो रहे। वह ऑन द फ्लाई
  6944. 4:36:16क्रिएट हो रहे हैं यहां पर और एप्लीकेशन
  6945. 4:36:17में ऑथेंटिकेशन के लिए इस्तेमाल हो रहे
  6946. 4:36:19हैं। तो देखिए जनरली प्रोडक्शन ग्रेड
  6947. 4:36:22एप्लीकेशनेशंस में आप इस तरीके से
  6948. 4:36:23ऑथेंटिकेशन या इस तरीके से यूज़र्स नहीं
  6949. 4:36:25बनाओगे। आप डेटाबेस में स्टोर करते हो
  6950. 4:36:27यूज़र्स में। लेकिन ये ये जो मेथड है वो भी
  6951. 4:36:30जानना जरूरी है। क्योंकि अगर आप कोई
  6952. 4:36:31क्लाइंट के लिए पीओसी बना रहे हो। ठीक है?
  6953. 4:36:33प्रूफ ऑफ कॉनसेप्ट क्लाइंट को दिखाने के
  6954. 4:36:36लिए कुछ डेमो पर्पस के लिए कुछ बना रहे हो
  6955. 4:36:38जो किसी क्लाइंट से कॉन्ट्रैक्ट जीतने के
  6956. 4:36:40लिए आप जनरली कंपनीज़ करती है पीओसी वगैरह
  6957. 4:36:42बनाती है तो उसमें अगर कुछ डेमो यूज़र्स
  6958. 4:36:45आपको लोड करने हैं और डेटाबेस वगैरह जैसी
  6959. 4:36:47कॉम्प्लेक्सिटी नहीं चाहिए और ऑथेंटिकेशन
  6960. 4:36:49हो रहा है यह क्लाइंट को बताना है तो इस
  6961. 4:36:51तरीके से आप कर सकते हो। ठीक है? लेकिन ये
  6962. 4:36:53प्रोडक्शन ग्रेड प्रैक्टिस नहीं है। यह आप
  6963. 4:36:56डेमो प्रोजेक्ट्स के लिए कर सकते हो। ठीक
  6964. 4:36:58है? तो इन मेम मेरी ऑथेंटिकेशन क्या इनेबल
  6965. 4:37:01करता है? हमें मल्टीपल यूज़र्स क्रिएट करने
  6966. 4:37:04इनेबल करता है। हम रोल्स को कंट्रोल कर
  6967. 4:37:06सकते हैं। यहां पर अब रोल्स की तो बात
  6968. 4:37:07मैंने की ही नहीं है। लेकिन रोल्स को भी
  6969. 4:37:09बढ़िया तरीके से कंट्रोल कर सकते हैं।
  6970. 4:37:10अथॉरिटीज़ को जैसे कि मैंने कहा। ठीक है?
  6971. 4:37:13और यूजर डिटेल्स सर्विस का इंटरनली हम
  6972. 4:37:15इस्तेमाल कर रहे हैं क्योंकि इन मेमोरी
  6973. 4:37:17ऑथेंटिकेशन उसी का इस्तेमाल करता है। और
  6974. 4:37:20हमने अ जो पासवर्ड है उसको भी फिलहाल
  6975. 4:37:23टेक्स्ट में स्टोर किया है। ठीक है? अभी
  6976. 4:37:26अकोडिंग जैसी कॉम्प्लेक्स चीज को हमने अभी
  6977. 4:37:29इंट्रोड्यूस नहीं किया। लेकिन स्प्रिंग
  6978. 4:37:30सिक्योरिटी उसको भी बढ़िया तरीके से
  6979. 4:37:32सपोर्ट करता है बिल्कुल कम कोड के साथ।
  6980. 4:37:34ठीक है? उम्मीद करता हूं अब तक मजा आ रहा
  6981. 4:37:36है आपको और आगे भी आता ही रहेगा।
  6982. 4:37:45तो दोस्तों, अब बात करते हैं रोल बेस्ड
  6983. 4:37:48एक्सेस कंट्रोल के बारे में। और आप यह
  6984. 4:37:52देखकर शॉक हो जाओगे कि रोल बेस्ड एक्सेस
  6985. 4:37:54कंट्रोल इंप्लीमेंट करना स्प्रिंग
  6986. 4:37:56सिक्योरिटी में कितना आसान है। ठीक है? और
  6987. 4:37:59एक्चुअली आपको और मजा आएगा स्प्रिंग
  6988. 4:38:01सिक्योरिटी में जैसे ही आप रोल बेस्ड
  6989. 4:38:02एक्सेस कंट्रोल की लॉजिक देखते हो। ठीक
  6990. 4:38:04है? तो देखिए रोल बेस्ड एक्सेस कंट्रोल
  6991. 4:38:07सबसे पहले तो होता क्या है? अगर आप लोगों
  6992. 4:38:09को नहीं पता तो मैं वो बता दूं आप लोगों
  6993. 4:38:11को। ठीक है? देखिए आपके पास एक एंड पॉइंट
  6994. 4:38:14होगी। ठीक है? ये एंड एंड पॉइंट वन। ठीक
  6995. 4:38:18है? ये एंड पॉइंट होगी जो कोई भी एक्सेस
  6996. 4:38:21कर सकता है। ठीक है? एनीवन इन द वर्ल्ड
  6997. 4:38:23कोई भी कहीं से भी हो। तो मान लीजिए ये
  6998. 4:38:25प्रोडक्ट्स की एंड पॉइंट है। आप ई-कॉमर्स
  6999. 4:38:27एप्लीकेशन बना रहे प्रोडक्ट्स के एंड
  7000. 4:38:28पॉइंट है। कोई भी एक्सेस कर सकता है और
  7001. 4:38:30आपके एप्लीकेशन में क्या-क्या प्रोडक्ट्स
  7002. 4:38:31हैं, क्या-क्या प्राइस है वो सारी चीजें
  7003. 4:38:33देख सकता है। ठीक है? तो ये हो गई एंड
  7004. 4:38:36पॉइंट और ये एंड पॉइंट कोई भी मतलब कोई भी
  7005. 4:38:39रोल हो यूजर का वो एक्सेस कर सकता है इसे।
  7006. 4:38:43ठीक है? एक वैलिड रोल होना जरूरी है। ऐसे
  7007. 4:38:44ही बिना रोल के कोई भी एक्सेस नहीं कर
  7008. 4:38:47सकता। ठीक है? तो हर कोई विद एनी रोल
  7009. 4:38:49एक्सेस कर सकता है। ठीक है? लेकिन कुछ एंड
  7010. 4:38:52पॉइंट्स ऐसी होगी जहां पर आप चाहोगे कि
  7011. 4:38:55एडमिन ओनली हो। ठीक है? तो एडमिन ओनली
  7012. 4:38:59स्लैश एडमिन एंड पॉइंट्स ये एडमिन ओनली हो
  7013. 4:39:02जैसे कि आप यूजर को डिलीट करना चाहते हो।
  7014. 4:39:04आप मास ईमेल भेजना चाहते हो। आप प्राइस
  7015. 4:39:08चेंज करना चाहते हो प्रोडक्ट की तो ऐसी
  7016. 4:39:10एंड पॉइंट्स जो होगी वो आप रिस्ट्रिक्टेड
  7017. 4:39:12रखना चाहोगे और चाहोगे कि कोई स्पेसिफिक
  7018. 4:39:16यूजर जिनके पास एक पर्टिकुलर रोल हो एक
  7019. 4:39:18पर्टिकुलर अथॉरिटी हो वही इस एंड पॉइंट को
  7020. 4:39:21एक्सेस कर पाए। ठीक है? देखिए रोल रोल मैं
  7021. 4:39:24दो-तीन बार बोल रहा हूं। ठीक है? तो मैं
  7022. 4:39:26आपको रोल का मतलब भी बता दूं। तो देखिए एक
  7023. 4:39:28यूजर होता है आपके पास। ये यूजर है। ठीक
  7024. 4:39:31है? यूजर में यूजर की इनेशन होगी। ठीक है?
  7025. 4:39:34यूजर की इनेशन क्या-क्या होगी? जैसे कि
  7026. 4:39:36यूजर का नाम हो गया, ईमेल हो गया और
  7027. 4:39:38पासवर्ड हो गया। और यूजर के पास यूजर का
  7028. 4:39:40रोल भी होगा। रोल क्या होता है? रोल का
  7029. 4:39:43मतलब है कि ये यूजर जो है वो क्या-क्या कर
  7030. 4:39:46सकता है अपने आपके एप्लीकेशन में? इसको
  7031. 4:39:48किस लेवल की अथॉरिटी देनी है। ठीक है? और
  7032. 4:39:51ये आपको समझाने के लिए मैं आपको एक और
  7033. 4:39:53एग्जांपल दे देता हूं। देखिए अगर आपके आप
  7034. 4:39:55एक ऑफिस में जाते हो। ठीक है? आप ऑफिस में
  7035. 4:39:57जाते हो। ठीक है? और ये ऑफिस है और आपने
  7036. 4:40:01ऑफिस में एंट्री कर ली आई कार्ड दिखा के।
  7037. 4:40:03अब आप उस आई कार्ड की मदद से कहां-कहां जा
  7038. 4:40:07सकते हो ऑफिस में यह डिक्टेट करता है कौन?
  7039. 4:40:10आपका रोल। ठीक है? तो आप देखिए आप अगर कोई
  7040. 4:40:12फ्रेशर हो तो आपको हो सकता है जो फाइनेंस
  7041. 4:40:15डिपार्टमेंट है उस फ्लोर का एक्सेस ना हो।
  7042. 4:40:18आपको जो सीनियर मैनेजमेंट जहां बैठते हैं
  7043. 4:40:21उस फ्लोर का एक्सेस ना हो। आपको कैफेट
  7044. 4:40:23एरिया का एक्सेस हो। आपको जिम का एक्सेस
  7045. 4:40:25हो। ठीक है? अगर आप फाइनेंस टीम से हो तो
  7046. 4:40:28ऑफ कोर्स आपको सारी चीजों का एक्सेस होगा
  7047. 4:40:30और फाइनेंस का जो डिपार्टमेंट है उसका भी
  7048. 4:40:32एक्सेस होगा। ठीक है? करेक्ट? लेकिन आपको
  7049. 4:40:35सीनियर मैनेजमेंट या सीईओ ऑफिस का एक्सेस
  7050. 4:40:37नहीं होगा। अब आप सीईओ हो तो आपको पूरी
  7051. 4:40:40ऑफिस का एक्सेस होगा। करेक्ट? तो आप एज अ
  7052. 4:40:45यूजर ऑफिस में कहां-कहां जा सकते हो?
  7053. 4:40:47क्या-क्या चीजें एक्सेस कर सकते हो? यह
  7054. 4:40:49कैसे डिक्टेट होता है? आपके रोल पे। ठीक
  7055. 4:40:51है? आप कौन हो? आप चलो ऑफिस में तो अंदर आ
  7056. 4:40:54गए। ऑफिस में अंदर आके क्योंकि आप एंप्लई
  7057. 4:40:56हो, आप काम कर रहे हो, आप प्रोडक्ट बना
  7058. 4:40:57रहे हो। लेकिन आपको किस लेवल का एक्सेस
  7059. 4:41:00है। यह डिक्टेट करता है आपका रोल। ठीक है?
  7060. 4:41:03और वैसे ही एप्लीकेशन में रोल होता है जो
  7061. 4:41:06हर यूजर से एसोसिएटेड होता है। और यह रोल
  7062. 4:41:10डिक्टेट करता है कि आप एप्लीकेशन में
  7063. 4:41:12क्या-क्या कर सकते हो? आप कौन सी-कौन सी
  7064. 4:41:13एंड पॉइंट्स यूज़ कर सकते हो। क्या आप
  7065. 4:41:15डिलीट यूजर की एंड पॉइंट यूज़ कर सकते हो?
  7066. 4:41:17जी नहीं। वो सिर्फ एडमिन ओनली है। क्या आप
  7067. 4:41:20डिलीट प्रोडक्ट की इस्तेमाल कर सकते हो?
  7068. 4:41:22जी हां। क्योंकि आप एडमिन हो। तो उस हिसाब
  7069. 4:41:25से बेसिकली आपका आपका रोल डिसाइड करता है
  7070. 4:41:27कि आप क्या करते हो और रोल अलग-अलग किस्म
  7071. 4:41:29के होते हैं। ठीक है? देखिए आप अपने
  7072. 4:41:32एप्लीकेशन में किसी भी तरह की रोल्स
  7073. 4:41:33डिफाइन कर सकते हो। फॉर एग्जांपल मैं आपको
  7074. 4:41:36बताऊं अगर आप ई-कॉमर्स एप्लीकेशन बना रहे
  7075. 4:41:39हो तो आपके पास होगा एक नॉर्मल यूजर का
  7076. 4:41:41रोल। आपके पास होगा एडमिन का रोल। आपके
  7077. 4:41:44पास होगा सेलर का रोल। ठीक है? तो देखिए
  7078. 4:41:47एडमिन सारे सेलर्स को देख सकता है। यूजर
  7079. 4:41:49तो देखिए यूजर सिर्फ यूजर रिलेटेड इनेशन
  7080. 4:41:52देख सकता है। ठीक है? जैसे कि प्रोडक्ट्स
  7081. 4:41:54क्या है? अह वह प्रोडक्ट को एडिट नहीं कर
  7082. 4:41:56सकता, क्रिएट नहीं कर सकता। प्रोडक्ट को
  7083. 4:41:58ऑर्डर ज़रूर कर सकता है। करेक्ट? एडमिन
  7084. 4:42:00क्या कर सकता है? एडमिन सारे सेलर्स की
  7085. 4:42:03इनेशन देख सकता है। सेलर को क्रिएट कर
  7086. 4:42:05सकता है। किसी सेलर को डिलीट करना है, वह
  7087. 4:42:07भी कर सकता है। किसी यूजर को डिलीट करना
  7088. 4:42:09है, वह भी कर सकता है। हर प्रोडक्ट की
  7089. 4:42:11प्राइस चेंज कर सकता है। चाहे वह किसी भी
  7090. 4:42:13सेलर से हो। ठीक है? सेलर क्या कर सकता
  7091. 4:42:16है? सेलर सिर्फ खुद एज अ सेलर वह खुद के
  7092. 4:42:19ही प्रोडक्ट्स को देख सकता है। खुद के ही
  7093. 4:42:22प्रोडक्ट्स को मॉडिफाई कर सकता है। खुद के
  7094. 4:42:24ही शॉप के अंदर प्रोडक्ट्स न्यू क्रिएट कर
  7095. 4:42:27सकता है। प्रोडक्ट्स लिस्ट कर सकता है और
  7096. 4:42:30खुद के प्रोडक्ट्स की प्राइस चेंज कर सकता
  7097. 4:42:31है। दूसरे सेलर्स की इनेशन, दूसरे सेलर्स
  7098. 4:42:34की इनफेशन को एडिट करना, मॉडिफाई करना,
  7099. 4:42:36अपडेट करना ये सारी चीजें सेलर नहीं कर
  7100. 4:42:38सकता है। वो सिर्फ एडमिन कर सकता है। तो
  7101. 4:42:40देखिए ये हो गया ई-कॉमर्स का एग्जांपल।
  7102. 4:42:42बैंकिंग का एग्जांपल अलग होगा। उसमें
  7103. 4:42:43रोल्स अलग होंगे। उसमें भी होगा यूजर
  7104. 4:42:45होगा, एडमिन होगा। फिर हो सकता है कुछ लोन
  7105. 4:42:49डिपार्टमेंट से कोई हो तो उसका लोन के लिए
  7106. 4:42:51कुछ रोल हो। ठीक है? कोई अकाउंट्स
  7107. 4:42:53डिपार्टमेंट से हो तो उसके लिए अकाउंट्स
  7108. 4:42:55का रोल हो। तो ऐसे डिपेंडिंग ऑन द
  7109. 4:42:56एप्लीकेशन आप खुद के रोल्स बना सकते हो।
  7110. 4:42:58आप जो डोमेन में हो उस हिसाब से। ठीक है?
  7111. 4:43:01तो रोल रहता है और रोल के बेसिस पर एक्सेस
  7112. 4:43:03डिसाइड होता है। इतना आपको समझ में आ गया।
  7113. 4:43:05अब हम एप्लीकेशन में आ जाते हैं यहां पर।
  7114. 4:43:08ठीक है? इस एप्लीकेशन में अब हम रोल की
  7115. 4:43:10इनेशन को किस तरीके से मैनेज करें? तो
  7116. 4:43:12देखिए यूजर में अगर आप जाओगे यहां पर यह
  7117. 4:43:15यूजर जो मिल रहा है हमें यह स्प्रिंग
  7118. 4:43:18सिक्योरिटी से ही मिल रहा है। ठीक है?
  7119. 4:43:20स्प्रिंग सिक्योरिटी से मिल रहा है। देखिए
  7120. 4:43:21यूजर हमने नहीं बनाया यूजर। तो ये यूजर का
  7121. 4:43:24जो स्ट्रक्चर है उसको डिफाइन करता है। ठीक
  7122. 4:43:26है? यहां पर देखिए पासवर्ड है, लॉगर है,
  7123. 4:43:29यूजरनेम है, सब कुछ है। ठीक है? और यहां
  7124. 4:43:32पर अथॉरिटीज़ है। अथॉरिटीज़ होनी चाहिए। ये
  7125. 4:43:35रही अथॉरिटीज़। अब इसको सेट कैसे किया जाए?
  7126. 4:43:37तो अगर आप नीचे जाओगे अगर आप नीचे जाते हो
  7127. 4:43:40तो यहां पर अ रोल्स करके कुछ होना चाहिए।
  7128. 4:43:44ठीक है? यहां पर अगर आप स्क्रॉल करते हो
  7129. 4:43:46ठीक है?
  7130. 4:43:50रोल्स। तो देखिए यहां पर एग्जांपल्स दिए
  7131. 4:43:52गए।
  7132. 4:43:54देखिए यह जो है रोल्स यहां पर आपको रोल्स
  7133. 4:43:58डालने हैं। ये मेथड को कॉल करना है और
  7134. 4:44:00यहां पर रोल्स को पास करना है। जो भी आप
  7135. 4:44:02रोल्स असाइन करना चाहते हो और वो रोल्स
  7136. 4:44:04अथॉरिटीज़ मतलब वो अथॉरिटीज़ का ऑब्जेक्ट
  7137. 4:44:07क्रिएट करेगा इंटरनली। ये कोड से आपको कुछ
  7138. 4:44:09लेना देना नहीं है। ये कोड आप लिख नहीं
  7139. 4:44:11रहे हो। लेकिन समझना जरूरी है किस तरीके
  7140. 4:44:13से रोल्स स्टोर होते हैं। और यह मैं क्यों
  7141. 4:44:15बता रहा हूं यह भी मैं आपको बोलता हूं। ये
  7142. 4:44:16भी उस पर भी मैं आता हूं। लेकिन पहले मैं
  7143. 4:44:18ये एक्सप्लेनेशन फिनिश कर लेता हूं। ठीक
  7144. 4:44:19है? आप कहेंगे कि अच्छा ये इंटरनल क्लासेस
  7145. 4:44:22के कोड क्यों एक्सप्लेन कर रहा है? मैं
  7146. 4:44:23बताता हूं आपको क्यों एक्सप्लेन कर रहा
  7147. 4:44:25हूं। ठीक है? तो देखिए आप जब भी रोल्स सेट
  7148. 4:44:27करोगे तो आपको रोल्स ऐसे पास कर देना है
  7149. 4:44:30मल्टीपल रोल्स जैसे कि एडमिन सेलर। तो
  7150. 4:44:32देखिए एक यूजर के पास मल्टीपल रोल्स भी हो
  7151. 4:44:34सकते हैं। तो मैं एज अ यूजर मैं नॉर्मल
  7152. 4:44:37यूजर भी हो सकता हूं। ठीक है? मैं
  7153. 4:44:39ई-कॉमर्स साइट से प्रोडक्ट भी ऑर्डर कर
  7154. 4:44:41सकता हूं और मैं एडमिन भी हूं या मैं सेलर
  7155. 4:44:44भी हूं। मैं प्रोडक्ट बेच भी रहा हूं और
  7156. 4:44:46दूसरे सेलर्स के प्रोडक्ट खरीद भी रहा
  7157. 4:44:48हूं। ठीक है? Amazon पर आप सेलर भी बन
  7158. 4:44:50सकते हो। आप प्रोडक्ट्स खरीद भी सकते हो,
  7159. 4:44:53यूजर भी हो सकते हो। करेक्ट? तो मल्टीपल
  7160. 4:44:55रोल्स भी आप असाइन कर सकते हो। तो इसके
  7161. 4:44:56लिए देखिए यहां पर मल्टीपल रोल्स की अ
  7162. 4:44:59फैसिलिटी की हुई है और उस रोल्स को अंदर
  7163. 4:45:01लिया जाता है मेथड के अंदर और एक ग्रांटेड
  7164. 4:45:04अथॉरिटी की एक लिस्ट बनाई जाती है और फिर
  7165. 4:45:07अथॉरिटीज में उस उस रोल को ऐड किया जाता
  7166. 4:45:11है। अभी देखिए ये जो कोड है ना ये यहां पर
  7167. 4:45:13काफी सारी चीजें आपको समझ में आएगी। ठीक
  7168. 4:45:15है? सबसे पहले तो मैं आपको ये बता देता
  7169. 4:45:17हूं कि इसको क्रिएट कैसे करना है। तो
  7170. 4:45:19देखिए यहां पर है ना एग्जांपल दिया हुआ
  7171. 4:45:21था। देखिए इस तरीके से आपको इस्तेमाल करना
  7172. 4:45:23है। इस तरीके से ठीक है? यूजर विद डिफ़ॉल्ट
  7173. 4:45:26पासवर्ड एनकोडर और यहां पर ये देखिए ये
  7174. 4:45:28पासवर्ड एनकोडर का इस्तेमाल कर रहा है।
  7175. 4:45:30यानी कि पासवर्ड को एनकोड कर रहा है। हमने
  7176. 4:45:32एनकोड नहीं किया हुआ है। लेकिन ये जो
  7177. 4:45:34तरीका है या ऐसे यूजर को यूजर में रोल सेट
  7178. 4:45:38करना है। ठीक है? तो यहां पर अगर मैं रोल
  7179. 4:45:39सेट करना चाहूं तो यहां पर मैं यूजर रोल
  7180. 4:45:41सेट कर दिया इसका इन दोनों का और इसका मैं
  7181. 4:45:44रोल सेट कर दूंगा एडमिन।
  7182. 4:45:46एडमिन ऐसे अब ये रोल तो सेट कर दिया। ठीक
  7183. 4:45:50है? तो ये रोल कैसे सेट हो रहा है?
  7184. 4:45:51इंटरनली इसको स्प्रिंग सिक्योरिटी क्या
  7185. 4:45:53कहता है? इंटरनली इसको स्प्रिंग
  7186. 4:45:55सिक्योरिटी कहता है अथॉरिटीज। सबसे पहले
  7187. 4:45:58तो यही चीज आपको समझना जरूरी है कि यहां
  7188. 4:46:00पर देखिए रोल्स यहां पर सेट करने दे रहा
  7189. 4:46:02है आपको। आप रोल सेट कर रहे हो इस तरीके
  7190. 4:46:04से। लेकिन इंटरनली इसको एज एन अथॉरिटी
  7191. 4:46:06स्टोर कर रहा है ये। देखिए यहां पर
  7192. 4:46:08अथॉरिटीज़ रिटर्न अथॉरिटीज़। ठीक है?
  7193. 4:46:11अथॉरिटीज़ बोलते हैं इंटरनली स्प्रिंग
  7194. 4:46:13सिक्योरिटी को रोल्स। ठीक है? रोल्स को
  7195. 4:46:15इंटरनली स्प्रिंग सिक्योरिटी अथॉरिटीज़
  7196. 4:46:17बोलते हैं। ठीक है? सॉरी। तो यह समझना
  7197. 4:46:19जरूरी है क्योंकि अगर आपको कोई एरर आती है
  7198. 4:46:21कुछ भी आपको स्टक ट्रेज देखनी है एरर आएगी
  7199. 4:46:24तो आप यहां पर स्टैक ट्रेस देखोगे करेक्ट
  7200. 4:46:26कि क्या एरर आई है यहां पर लिखा हुआ होगा
  7201. 4:46:29अथॉरिटीज तो अथॉरिटीज होती क्या है ये
  7202. 4:46:32समझना जरूरी है लोग क्या कंफ्यूज हो जाते
  7203. 4:46:34हैं क्या अथॉरिटीज अथॉरिटीज बोल रहा है
  7204. 4:46:36अथॉरिटीज है रोल्स ठीक है बस और दूसरी चीज
  7205. 4:46:40रोल अंडरस्कोर आप देखोगे यहां पे जो भी आप
  7206. 4:46:42रोल पास कर रहे हो ना वहां पर रोल
  7207. 4:46:45अंडरस्कोर ऐड किया जा रहा है देखिए यहां
  7208. 4:46:48पर रोल अंडरस्कोर ऐड किया जा रहा है। आप
  7209. 4:46:50देख रहे हो यहां पर पहले वह चेक कर रहा है
  7210. 4:46:53कि रोल स्टार्ट होता है क्या रोल
  7211. 4:46:55अंडरस्कोर से। अगर होता है तो ठीक है। अगर
  7212. 4:46:58नहीं होता है तो यहां पर देखिए रोल
  7213. 4:47:00अंडरस्कोर ऐड किया जा रहा है। रोल
  7214. 4:47:02अंडरस्कोर क्यों ऐड किया जा रहा है? ठीक
  7215. 4:47:05है? रोल अंडरस्कोर क्यों ऐड किया जा रहा
  7216. 4:47:06है? क्योंकि इंटरनली स्प्रिंग सिक्योरिटी
  7217. 4:47:09में रोल्स को रोल अंडरस्कोर और फिर एडमिन।
  7218. 4:47:13रोल अंडरस्कोर और फिर यूजर तो उस तरीके से
  7219. 4:47:16अह रिप्रेजेंट किया जाता है। ठीक है? तो
  7220. 4:47:18देखिए यहां पर स्प्रिंग सिक्योरिटी में
  7221. 4:47:20आपने यूजर और एडमिन पास कर दिया लेकिन
  7222. 4:47:21इंटरनली यहां पर उसको स्टोर किया जाएगा
  7223. 4:47:24रोल अंडरस्कोर यूजर। ठीक है? और इसको
  7224. 4:47:27स्टोर किया जाएगा रोल अंडरस्कोर एडमिन। तो
  7225. 4:47:30यहां पर आ जाएगा एडमिन इस तरीके से। ठीक
  7226. 4:47:32है? ये इंटरनल चीजें हैं। लेकिन ये आपको
  7227. 4:47:35हेल्प करती है समझने में। इंटरव्यूज वगैरह
  7228. 4:47:37में ये सारी चीजें हेल्प करती है जो मैं
  7229. 4:47:39बता रहा हूं आपको। आप इंटरव्यू प्रूफ भी
  7230. 4:47:41होते जा रहे हो और आपको यह भी समझ में आ
  7231. 4:47:44रहा है किस तरीके से चीजें इंटरनली वर्क
  7232. 4:47:46करती है तो आगे चलकर कोई इशू आती है, कोई
  7233. 4:47:48एरर आती है, कुछ डिब करना है, कुछ नहीं चल
  7234. 4:47:50रहा है तो वो सारी चीजें आप कर सकते हो।
  7235. 4:47:52अनलेस एंड अंटिल आपको ये समझ में नहीं
  7236. 4:47:54आएगा। आप वो सब नहीं कर पाओगे। ठीक है? तो
  7237. 4:47:56मैं इसके लिए ज्यादा टाइम लगता नहीं है ये
  7238. 4:47:58सब एक्सप्लेन करने के लिए। ठीक है? लेकिन
  7239. 4:48:00ये सारी चीजें काफी इंपॉर्टेंट है। ठीक
  7240. 4:48:02है? तो ये सारी चीजें समझ में आ गई। देखिए
  7241. 4:48:04ये जो प्रैक्टिस है ना यहां पर मैं जाके
  7242. 4:48:06सोर्स कोड खोल लेता हूं इंटरनल। यहां पर
  7243. 4:48:09मैंने जो मेथड लिखा है उसका सोर्स कोड ही
  7244. 4:48:10मैं खोल लेता हूं। देखिए इसको अगर आप ओवर
  7245. 4:48:12करके यहां पर आओगे तो यह सेम मेथड पर
  7246. 4:48:14आएगा। अब यह मेथड में हो क्या रहा है मैं
  7247. 4:48:16देख लेता हूं। तो ये जो प्रैक्टिस है ये
  7248. 4:48:19आप भी कीजिए। आप अगर कुछ भी बना रहे हो
  7249. 4:48:21बिल्ड कर रहे हो तो ये प्रैक्टिस रहना
  7250. 4:48:22जरूरी है ताकि आप आप यू नो आपको पता रहे
  7251. 4:48:26कि बिहाइंड द सीन्स क्या हो रहा है। बाहर
  7252. 4:48:28से तो क्या हो रहा है वो सबको पता है। ठीक
  7253. 4:48:30है? आप ऑनलाइन एक एग्जांपल सर्च कर लोगे
  7254. 4:48:33आपको मिल जाएगा जो मैं कर रहा हूं। लेकिन
  7255. 4:48:34इंटरनली हो क्या रहा है यह आपको कोई नहीं
  7256. 4:48:36बताएगा। तो यह समझना जरूरी है और उसके लिए
  7257. 4:48:39यह प्रैक्टिस जरूरी है। जो प्रैक्टिस आप
  7258. 4:48:40देख रहे हो मेरे स्क्रीन पर जहां पर हम
  7259. 4:48:43इंटरनल क्लास फाइल्स को ओपन करके
  7260. 4:48:45इंटेलिजेंट में डॉक्यूमेंटेशन देखते हैं
  7261. 4:48:48वो जरूरी है। ठीक है? ऑनलाइन आर्टिकल्स
  7262. 4:48:50गलत हो सकते हैं। लेकिन ये डॉक्यूमेंटेशन
  7263. 4:48:52कभी गलत नहीं होगा। ये रियल है। ठीक है?
  7264. 4:48:53क्योंकि ये ऑफिशियल है। करेक्ट? तो ये
  7265. 4:48:55देखिए मैंने रोल असाइन कर दिया है। ठीक
  7266. 4:48:58है? अब मैं क्या करता हूं? यहां पर आ जाता
  7267. 4:49:01हूं। ठीक है? अब हम क्या करेंगे? एक चीज
  7268. 4:49:04को सिमुलेट करेंगे। ठीक है? मैं यहां पर
  7269. 4:49:07एक एक नहीं दो एंड पॉइंट बना देता हूं।
  7270. 4:49:10ठीक है? एक बनाता हूं स्लश एडमिन हेलो।
  7271. 4:49:14ठीक है? और सी एडमिन हेलो बोल देता हूं
  7272. 4:49:16इसे। और यहां पर कहूंगा हेलो कॉमा एडमिन
  7273. 4:49:20ऐसे। ठीक है? तो ये हो गई एडमिन को एक्सेस
  7274. 4:49:23होने वाली एपीआई। ठीक है? और दूसरी मैं
  7275. 4:49:26एंड पॉइंट बनाता हूं जो कि रहेगा यूजर।
  7276. 4:49:29यूजर हेलो। तो यहां पर कहूंगा हेलो यूजर।
  7277. 4:49:33ठीक है? और हेलो यूजर और यहां पर कहूंगा
  7278. 4:49:36हेलो से यूजर हेलो इस तरीके से ठीक है तो
  7279. 4:49:39अब हमारे पास तीन एंड पॉइंट है एक स्लैश
  7280. 4:49:41हेलो एडमिन हेलो स्लश यूजर स्लैश ये हमने
  7281. 4:49:45क्यों किया है ताकि मैं आपको रोल बेस्ड
  7282. 4:49:47एक्सेस कंट्रोल का डेमोंस्ट्रेशन दे पाऊं
  7283. 4:49:49सिंपल सिंपल एंड पॉइंट्स रखे हैं सिर्फ ये
  7284. 4:49:51जो टेक्स्ट मैसेज है उसको चेंज किया है जो
  7285. 4:49:53हमें रिटर्न में मिल रहा है ठीक है अब मैं
  7286. 4:49:55यहां पर आ जाऊंगा सिक्योरिटी कॉन्फिग में
  7287. 4:49:57अब रोल्स तो हमने असाइन कर दिए यूजर को
  7288. 4:49:59ठीक है अब इन रोल का इस्तेमाल कैसे करना
  7289. 4:50:01है ठीक है तो हमें यहां पर ऊपर आना है और
  7290. 4:50:04यहीं पर हम रोल बेस्ड एक्सेस कंट्रोल को
  7291. 4:50:08इंप्लीमेंट करेंगे। तो यहां पर मैं क्या
  7292. 4:50:09करूंगा? यहां पर मैं करूंगा रिक्वेस्ट
  7293. 4:50:11मैचर्स। ठीक है? अच्छा यहां पर
  7294. 4:50:16ऑथराइज़ रिक्वेस्ट ऑथराइज़ रिक्वेस्ट डॉट
  7295. 4:50:19रिक्वेस्ट मैच ऐसे और यहां पर लिख दूंगा
  7296. 4:50:23स्लैश एडमिन स्लैश एडमिन की जो एंड
  7297. 4:50:25पॉइंट्स है तो मैंने ऐसे पैटर्न लिख दिया
  7298. 4:50:28यहां पर देखिए ये पैटर्न। सो स्लैश एंड
  7299. 4:50:30पॉइंट स्लैश एडमिन सॉरी नॉट स्लैश एंड
  7300. 4:50:33पॉइंट स्लैश एडमिन जो भी एंड पॉइंट में है
  7301. 4:50:36वो मैं चाहता हूं कि सिर्फ एडमिन लोग ही
  7302. 4:50:39इस्तेमाल कर पाए। तो हैज़ रोल हैज़ रोल और
  7303. 4:50:44यहां पर लिख दूंगा एडमिन। तो ये जो एंड
  7304. 4:50:47पॉइंट है सिर्फ एडमिन ही यूज़ कर पाएगा।
  7305. 4:50:50ठीक है? करेक्ट। और फिर मैं यहां पर लिखता
  7306. 4:50:53हूं फिर से डॉट रिक्वेस्ट मैचर्स। ठीक है?
  7307. 4:50:57और यहां पर लिखूंगा
  7308. 4:51:00यूज़र्स यूजर था कि यूज़र्स था वो देख लेते
  7309. 4:51:03हैं। यूजर ठीक है? स्लश यूजर जो भी एंड
  7310. 4:51:06पॉइंट में है वो इस्तेमाल कर पाए
  7311. 4:51:11डॉट हैज़ रोल और वो इस्तेमाल कर पाए यूजर
  7312. 4:51:15और एडमिन को भी उसका एक्सेस दे देते हैं।
  7313. 4:51:18ठीक है? एडमिन ऊप्स
  7314. 4:51:22ऐसे। ठीक है? इतना हो गया। अब
  7315. 4:51:27ठीक है? ठीक है? अब यहां पर रेड मार्क आ
  7316. 4:51:28रहा है तो यहां पर मुझे डॉट लगाना होगा इस
  7317. 4:51:30तरीके से। ठीक है? और आई थिंक ऑथराइज़्ड
  7318. 4:51:33रिक्वेस्ट की जरूरत है नहीं यहां पर। ठीक
  7319. 4:51:36है? इतना हो गया। और यहां पर एरर आ रही
  7320. 4:51:39है। ठीक है? ये एरर इसलिए आ रही है
  7321. 4:51:41क्योंकि ये हैज़ रोल दो पैरामीटर्स नहीं
  7322. 4:51:43लेता है। ठीक है? हैज़ एनी रोल लेता है।
  7323. 4:51:46हैज़ एनी रोल का इस्तेमाल करना होगा। लेकिन
  7324. 4:51:48मैं हैज़ रोल इस्तेमाल करता हूं अभी के
  7325. 4:51:49लिए। तो एक काम करते हैं। यूजर के यूजर को
  7326. 4:51:52ही रखते हैं। यहां पर एडमिन को हटा देते
  7327. 4:51:53हैं। ठीक है? चीजों को सिंपल रखते हैं और
  7328. 4:51:56इसको जो है मैं रन कर दूंगा। ठीक है? इसको
  7329. 4:51:58रन करते हैं। देखते हैं क्या आउटपुट आता
  7330. 4:52:00है। तो यहां पर आ जाता हूं मैं। ठीक है?
  7331. 4:52:02और यहां पर स्लैश हेलो है हमारे पास।
  7332. 4:52:05करेक्ट एक नई एंड पॉइंट बना लेता। लेता
  7333. 4:52:08हूं। यहां पर आ जाता हूं। और यहां पर
  7334. 4:52:10ऑथराइजेशन में आ जाता हूं। बेसिक ऑथ अच्छा
  7335. 4:52:14अब क्या हो गया? बेसिक ऑथ और यहां पर
  7336. 4:52:17स्लैश एडमिन
  7337. 4:52:19हेलो। ठीक है? एडमिन हेलो। तो अब देखिए ये
  7338. 4:52:23एप्लीकेशन तो स्टार्ट हो गई है एडमिन हेलो
  7339. 4:52:25एडमिन का यूजरनेम पासवर्ड डालते हैं और
  7340. 4:52:27इसको रन करते हैं तो देखिए चल जाएगी हेलो
  7341. 4:52:29एडमिन ठीक है हेलो एडमिन अब यहां पर मैं
  7342. 4:52:32स्लैश यूजर ऐड कर देता हूं स्लैश यूजर रन
  7343. 4:52:35करोगे तो देखिए 403 फॉरबिडन आ गया 403
  7344. 4:52:39फॉरबिडन का मतलब यह है कि एक्सेस टू द
  7345. 4:52:42रिसोर्स इज़ प्रोहिबिटेड
  7346. 4:52:44ठीक है देखिए यहां पर दो स्टेटस कोड्स
  7347. 4:52:47हमने देखे 401 अनऑथराइज्ड और 403 फॉरबिडन
  7348. 4:52:51ठीक है? 401 अन ऑथराइज का मतलब ये है कि
  7349. 4:52:55आपने जो यूजरनेम पासवर्ड डाला है वो
  7350. 4:52:57इनकरेक्ट है। ऐसा कोई यूजर है ही नहीं।
  7351. 4:52:59ठीक है? 403 फॉरबिडन का मतलब ये है कि
  7352. 4:53:02यूजरनेम पासवर्ड तो करेक्ट है लेकिन ये जो
  7353. 4:53:04चीज आप एक्सेस करना चाह रहे हो इसकी आपको
  7354. 4:53:06परमिशन नहीं है। आप नहीं कर सकते इसे
  7355. 4:53:09एक्सेस। तो ये दोनों स्टेटस कोड्स में
  7356. 4:53:12डिफरेंस है। समझना जरूरी है। 401 क्यों
  7357. 4:53:15है? 403 क्यों है? 401 अनअथराइज़्ड। 403
  7358. 4:53:19फॉरबिडन बट यू आर ऑथराइज्ड। ठीक है? आप
  7359. 4:53:21ऑथेंटिकेट हो चुके हो लेकिन फॉरबिडन हो।
  7360. 4:53:24ठीक है? तो यह दिखाई दे रहा है आपको और
  7361. 4:53:27यहां पर देखिए कुछ लॉग्स में कुछ आया
  7362. 4:53:28नहीं। यहीं पर रिक्वेस्ट रिजेक्ट हो गई
  7363. 4:53:30है। ठीक है? अब मैं इसके बजाय अगर मैं
  7364. 4:53:33यूजर और फिर सॉरी यू पासवर्ड वन ये
  7365. 4:53:38पासवर्ड वन हो गया। और यह यूजर वन हो गया।
  7366. 4:53:40इसको अगर लेकर रिक्वेस्ट चलाता हूं तो
  7367. 4:53:42देखिए चल जाएगी। क्योंकि यह सिर्फ यूजर
  7368. 4:53:45एक्सेस कर सकता है। ठीक है? अकॉर्डिंग टू
  7369. 4:53:48जो हमने रूल एस्टैब्लिश किया है। यह जो
  7370. 4:53:50रूल मेंशन किया है उसी के हिसाब से सब चल
  7371. 4:53:52रहा है। करेक्ट आप देख पा रहे हो। और
  7372. 4:53:55स्लैश हेलो तो वैसे भी काम करेगा। एडमिन
  7373. 4:53:57के लिए भी काम करेगा। स्लैश हेलो और यहां
  7374. 4:54:01पर अगर मैं यूजर का पासवर्ड भी डाल दूं तो
  7375. 4:54:04यूजर वन और फिर पासवर्ड वन। ऐसे भी डाल
  7376. 4:54:08दूं तो यह तो वैसे भी चलने वाला है
  7377. 4:54:10क्योंकि यहां पर मैंने रोल बेस्ड
  7378. 4:54:11रिस्ट्रिक्शंस डाले नहीं है। मैंने सिर्फ
  7379. 4:54:13इसको ऑथेंटिकेटेड मार्क किया है। रोल
  7380. 4:54:15बेस्ड रिस्ट्रिक्शंस स्लैश एडमिन और स्लैश
  7381. 4:54:17यूजर पे है। ठीक है? तो आप देख पा रहे हो
  7382. 4:54:19कैसे मैं एक यूजर से एक चीज एक्सेस कर पा
  7383. 4:54:22रहा हूं लेकिन दूसरी चीज नहीं। और दूसरे
  7384. 4:54:25यूजर से दूसरी चीज एक्सेस कर पा रहा हूं
  7385. 4:54:27लेकिन पहली नहीं। ठीक है? तो ये है रोल
  7386. 4:54:31बेस्ड एक्सेस कंट्रोल। अब यहां पर थोड़ी
  7387. 4:54:33मॉडिफिकेशंस कर देंगे। ठीक है? देखिए यहां
  7388. 4:54:34पर मैं चाहता हूं कि स्लैश यूजर की जो
  7389. 4:54:36एपीआई है वो यूजर भी एक्सेस करे और एडमिन
  7390. 4:54:39भी पहले एडमिन एक्सेस नहीं कर पा रहा था।
  7391. 4:54:41ठीक है? तो देखिए यहां पर अगर आप आते हो
  7392. 4:54:43अच्छा यहां पर तो स्लैश यूजर स्लैश हेलो
  7393. 4:54:46तो एडमिन को अगर यूजर तो कर पा रहा है।
  7394. 4:54:48अगर मैं एडमिन से यहां पर कोशिश करूं तो
  7395. 4:54:51एडमिन पासवर्ड तो मुझे फॉरबिडन आ जाएगा।
  7396. 4:54:53देखिए फॉरबिडन इसका मतलब मैं अलाउड नहीं
  7397. 4:54:56हूं। ठीक है? तो यहां पर हैज़ एनी रोल लिख
  7398. 4:54:58देता हूं। तो अगर आप मल्टीपल रोल्स का
  7399. 4:55:00इस्तेमाल करना चाहते हो और मल्टीपल रोल्स
  7400. 4:55:03का एक्सेस देना चाहते हो किसी एक
  7401. 4:55:04पर्टिकुलर रिसोर्स पे के लिए तो हैज़ एनी
  7402. 4:55:06रोल का इस्तेमाल करना है और इसको रन करता
  7403. 4:55:08हूं मैं। ठीक है? यहां से ऐसे रन कर
  7404. 4:55:10दूंगा। अब रन करने पर देखिए मैं यहां पर
  7405. 4:55:13एडमिन से इसको एक्सेस नहीं कर पा रहा था
  7406. 4:55:14लेकिन अब कर पाऊंगा। देखिए कर पा रहा हूं।
  7407. 4:55:17और यूजर से भी कर पाऊंगा। तो यहां पर यूजर
  7408. 4:55:19वन लिखता हूं और फिर यहां पर लिखता हूं
  7409. 4:55:21पासवर्ड वन।
  7410. 4:55:24इससे भी कर पाऊंगा। देखिए दोनों से चल रही
  7411. 4:55:26है। तो दोनों रोल्स के जो यूजर है वो
  7412. 4:55:29स्लैश यूजर से जो भी एंड पॉइंट बनेगी उसको
  7413. 4:55:31एक्सेस कर सकते हैं। स्लैश यूजर से जो भी
  7414. 4:55:34एंड पॉइंट बनेगी आप अगर 10 एंड पॉइंट
  7415. 4:55:35बनाते हो स्लैश यूजर से तो उस पे ये रूल
  7416. 4:55:38एप्लीकेबल हो जाएगा। स्लैश एडमिन से अगर
  7417. 4:55:40कोई एंड पॉइंट बनाते हो तो उस पर ये रूल
  7418. 4:55:42एप्लीकेबल हो जाएगा। ठीक है? है ना
  7419. 4:55:44जबरदस्त चीज? तो ये है रूल बेस्ड एक्सेस
  7420. 4:55:47कंट्रोल। उम्मीद करता हूं आपको यह क्लियर
  7421. 4:55:50रहा और आप इसको फॉलो कर पाए।
  7422. 4:55:57अब देखिए रोल बेस्ड एक्सेस कंट्रोल तो ठीक
  7423. 4:56:00है। ठीक है? अ मैं बात करना चाहता हूं
  7424. 4:56:04मेथड बेस्ड एक्सेस कंट्रोल के बारे में।
  7425. 4:56:07ठीक है? अब मेथड बेस्ड एक्सेस कंट्रोल है
  7426. 4:56:09क्या? देखिए यहां पर आपने जो जो रूल्स
  7427. 4:56:13लगाए सिक्योरिटी के वो आपने सेंट्रली
  7428. 4:56:15लगाए। सेंट्रली का मतलब क्या है?
  7429. 4:56:16सिक्योरिटी कॉन्फिग की एक फाइल है और
  7430. 4:56:18उसमें आप सारे रोल्स लगा दिए हो कि किसको
  7431. 4:56:21अ किस किस रोल को किस एंड पॉइंट की एक्सेस
  7432. 4:56:24है। ठीक है? आप फ्यूचर में अगर कोई और एंड
  7433. 4:56:27पॉइंट्स बनाते हो तो आप यहां पर ये
  7434. 4:56:28रिक्वेस्ट मैचर्स को डुप्लीकेट करके और भी
  7435. 4:56:30रूल्स यहां पर डिफाइन कर सकते हो। ठीक है?
  7436. 4:56:33लेकिन स्प्रिंग सिक्योरिटी में एक ऐसा
  7437. 4:56:36तरीका भी है जहां पर आप मेथड लेवल पर
  7438. 4:56:38सिक्योरिटी को अ इंप्लीमेंट कर सकते हो।
  7439. 4:56:41और वो करने के लिए आपको क्या करना है?
  7440. 4:56:43आपको कुछ एनोटेशंस दिए जाते हैं और उस
  7441. 4:56:46एनोटेशन का इस्तेमाल करना है आपको। तो
  7442. 4:56:49आपको क्या करना है? सबसे पहले तो यहां पर
  7443. 4:56:51आपको लिखना है इनेबल
  7444. 4:56:54मेथड सिक्योरिटी। ठीक है? अगर आप मेथड
  7445. 4:56:56लेवल पर चीजों को सिक्योर करना चाहते हो
  7446. 4:56:58और मेथड को सिक्योर करना चाहते हो। ठीक
  7447. 4:57:00है? तो आपको इस्तेमाल करना है इनेबल मेथड
  7448. 4:57:03सिक्योरिटी। और फिर आप किसी भी मेथड पर आ
  7449. 4:57:08जाइए। तो मान लीजिए मैं यही मेथड पर आ
  7450. 4:57:10जाता हूं। ठीक है? और यहां पर मैं लिखता
  7451. 4:57:13हूं अ प्री ऑथोराइज़। ठीक है? ऐसा एनोटेशन
  7452. 4:57:17और फिर यहां पर लिखूंगा हैज़ रोल। और फिर
  7453. 4:57:21यहां पर मैं लिखूंगा एडमिन। तो अब जो हेलो
  7454. 4:57:24की एंड पॉइंट है वो सिर्फ एडमिन एक्सेस कर
  7455. 4:57:27पाएगा और कोई नहीं। ठीक है? तो कोई भी अगर
  7456. 4:57:30एक्सेस करना चाहे इस एंड पॉइंट को तो हम
  7457. 4:57:33चाहते हैं कि उसके पास रोल हो एडमिन का।
  7458. 4:57:36ठीक है? तो इसको रन करके देखते हैं। चलिए।
  7459. 4:57:39ठीक है? रन करोगे आप तो देखिए यहां पर आते
  7460. 4:57:43हैं तो पहले हेलो तो आप एक्सेस कर पा रहे
  7461. 4:57:45थे यूजर से ठीक है यूजर से देखिए 200 ओके
  7462. 4:57:48आया हुआ है लेकिन अब ऐसे रन करोगे आप तो
  7463. 4:57:50देखिए 403 फॉरबिट इन और ये सिर्फ एडमिन से
  7464. 4:57:53ही चलेगा अभी एडमिन और फिर एडमिन पासवर्ड
  7465. 4:57:56ऐसे एडमिन से ही चलेगा क्योंकि आपने मेथड
  7466. 4:57:59लेवल सिक्योरिटी यहां पर इंप्लीमेंट कर दी
  7467. 4:58:01है। कहां पर इंप्लीमेंट किया है आपने?
  7468. 4:58:03मेथड लेवल पर इंप्लीमेंट किया है। आपने
  7469. 4:58:04सेंट्रलाइज़्ड कॉन्फ़िगरेशन का इस्तेमाल
  7470. 4:58:06नहीं किया है। देखिए अब सिक्योरिटी
  7471. 4:58:08कॉन्फ़िगरेशन की जो फाइल है ये वाली जिसका
  7472. 4:58:10नाम सिक्योरिटी कॉन्फ़िग है हमारे
  7473. 4:58:12एप्लीकेशन में आप कोई भी नाम दे सकते हो।
  7474. 4:58:14लेकिन जो भी नाम दे दो ये सिक्योरिटी
  7475. 4:58:16कॉन्फ़िगरेशन की फाइल कहता है इसे। क्योंकि
  7476. 4:58:17इसमें सिक्योरिटी की सारी कॉन्फ़िगरेशंस
  7477. 4:58:19डिफाइंड है। तो सिक्योरिटी कॉन्फ़िगरेशन की
  7478. 4:58:22हमारी जो फाइल है, उसमें आपने जो रूल्स
  7479. 4:58:24डिफाइन किए हैं। ठीक है? वो तो ठीक है
  7480. 4:58:27लेकिन आपने मेथड लेवल पर जो रूल्स डिफाइन
  7481. 4:58:30किए हैं उसकी मदद से यह चल रहा है। ठीक
  7482. 4:58:33है? और अगर आप मैं इसको कमेंट कर लेता
  7483. 4:58:35हूं। ठीक है? तो देखिए प्री ऑथराइज
  7484. 4:58:37एनोटेशन आ भी कहां से रहा है? ये आ रहा है
  7485. 4:58:40सिक्योरिटी फ्रेमवर्क से। तो अगर मैं इसे
  7486. 4:58:42कमेंट कर देता हूं तो जैसे पहले चल रही थी
  7487. 4:58:43बिना ऑथेंटिकेशन के वैसे चलने लग जाएगी।
  7488. 4:58:46सॉरी बिना ऑथेंटिकेशन के नहीं बिना
  7489. 4:58:48ऑथराइजेशन के वैसे चलने लग जाएगी। ठीक है?
  7490. 4:58:50तो एक हिसाब से मैंने रोल बेस्ड एक्सेस
  7491. 4:58:52कंट्रोल यहां पर डाल दिया है मेथड लेवल पर
  7492. 4:58:55और मैं यहां पर हैज़ रोल तो लिख दिया है
  7493. 4:58:57मैंने। इसको डुप्लीकेट कर देता हूं। हैज़
  7494. 4:58:59एनी रोल भी लिख सकता हूं मैं। ठीक है? हैज़
  7495. 4:59:02एनी रोल ऐसे और यहां पर एडमिन कॉमा और फिर
  7496. 4:59:06यहां पर यूजर भी लिख सकता हूं। तो दो
  7497. 4:59:08रोल्स को एक्सेस दे दिया है मैंने इस एंड
  7498. 4:59:10पॉइंट का। वैसा भी कर सकता हूं मैं। तो
  7499. 4:59:12इसको रन कर रहा हूं मैं। ठीक है? यहां पर
  7500. 4:59:14आओगे तो देखिए अब तक यह एडमिन से चल रहा
  7501. 4:59:16था। अच्छा सर्वर डाउन हो गया। अब तक एडमिन
  7502. 4:59:19से चल रहा था यह। ठीक है? एडमिन से तो चल
  7503. 4:59:21रहा है। अब मैं यहां पर इसको यूजर से भी
  7504. 4:59:23चलाऊंगा। ठीक है? इसको यूजर से भी
  7505. 4:59:26चलाएंगे। ऐसे देखिए यूजर से भी चल रहा है।
  7506. 4:59:28एडमिन से भी चल रहा है। ठीक है? क्यों?
  7507. 4:59:30क्योंकि मैंने यूजर और एडमिन दोनों के रूल
  7508. 4:59:32इसको असाइन कर दिए इस एंड पॉइंट। तो इसे
  7509. 4:59:34कहते हैं मेथड लेवल एक्सेस कंट्रोल। ठीक
  7510. 4:59:37है? और देखिए, हमने जो भी अभी तक सीखा है,
  7511. 4:59:39मैं आपको बता देता हूं। हमने जो भी सीखा
  7512. 4:59:41है, हमने दो इंपॉर्टेंट कांसेप्ट्स को
  7513. 4:59:43सीखा है। दो इंपॉर्टेंट कांसेप्ट्स। ठीक
  7514. 4:59:45है? सबसे पहले हमने सीखा है ऑथेंटिकेशन।
  7515. 4:59:48ऑथेंटिकेशन का मतलब है आप यूजरनेम पासवर्ड
  7516. 4:59:51को किस तरीके से वैलिडेट कर सकते हो। अगर
  7517. 4:59:53कोई रिक्वेस्ट आ रही है तो वो ऑथेंटिकेटेड
  7518. 4:59:55है या नहीं? सही सोर्स से आ रही है कि
  7519. 4:59:57नहीं? उसमें यूजर क्रेडेंशियल सही है या
  7520. 4:59:59नहीं? उसे कहते हैं ऑथेंटिकेशन। ठीक है?
  7521. 5:00:02ऑथेंटिकेशन होने के बाद इस यूजर को
  7522. 5:00:04किस-किस चीज का एक्सेस है? उसे कहते हैं
  7523. 5:00:07ऑथोराइजेशन।
  7524. 5:00:10ठीक है? ऑथराइजेशन। तो देखिए ऑथेंटिकेशन
  7525. 5:00:13का मतलब क्या है? आप बिल्डिंग में आ गए।
  7526. 5:00:16ठीक है? आई कार्ड आपने लगाया, दरवाजा खुल
  7527. 5:00:18गया। आप बिल्डिंग में घुस गए। ऑफिस में
  7528. 5:00:20घुस गए। मान लीजिए बिल्डिंग नहीं ऑफिस है
  7529. 5:00:22आपकी। ऑफिस में घुस गए आप। अब ऑफिस में
  7530. 5:00:25घुसने के बाद आपको किस-किस डिपार्टमेंट का
  7531. 5:00:27एक्सेस है वो डिटरमाइन करता है ऑथराइजेशन।
  7532. 5:00:30तो ऑफिस में घुसना इज़ ऑथेंटिकेशन। क्योंकि
  7533. 5:00:33जो ऑफिस का जो सिस्टम लगा है, जहां पर आप
  7534. 5:00:35आई कार्ड पंच करके अंदर जाते हो, दरवाजा
  7535. 5:00:37खुल जाता है। वो सिस्टम को पता है कि
  7536. 5:00:40अच्छा आप अंदर आ चुके। कैसे पता? क्योंकि
  7537. 5:00:42आपका आई कार्ड पंच हुआ है। करेक्ट? तो इसे
  7538. 5:00:44कहेंगे ऑथेंटिकेशन। यूजर ऑथेंटिकेट हो
  7539. 5:00:46चुका है। यह जो एंट्री थी वह ऑथेंटिकेट हो
  7540. 5:00:48चुकी है। लेकिन अब यह यूजर कहां-कहां जा
  7541. 5:00:50सकता है? वह डिटरमाइन करेगा ऑथराइजेशन।
  7542. 5:00:52ठीक है? और ऑथेंटिकेशन को हमने इंप्लीमेंट
  7543. 5:00:54किया स्प्रिंग सिक्योरिटी की मदद से। ठीक
  7544. 5:00:57है? और यूजरनेम पासवर्ड ऑथेंटिकेशन
  7545. 5:00:59इंप्लीमेंट किया है। और यहां पर भी हमने
  7546. 5:01:01सिक्योरिटी का इस्तेमाल किया। लेकिन यहां
  7547. 5:01:02पर रोल बेस्ड एक्सेस कंट्रोल जिसे आरबीएसी
  7548. 5:01:06भी कहा जाता है। रोल बेस्ड एक्सेस
  7549. 5:01:08कंट्रोल। तो ये दोनों चीजें हम देख चुके
  7550. 5:01:10हैं और रोल बेस्ड एक्सेस कंट्रोल में भी
  7551. 5:01:11हमने देखा है अ क्या देखा है हमने अ मेथड
  7552. 5:01:15लेवल
  7553. 5:01:17और सेंट्रल
  7554. 5:01:19ठीक है सेंट्रल का मतलब है सेंट्रल
  7555. 5:01:21ऑथेंटिकेशन ठीक है तो ये मेथड लेवल थोड़ा
  7556. 5:01:23गलत हो गया है सेंट्रल भी नहीं बोलते
  7557. 5:01:25सेंट्रलाइज्ड बोलूंगा ठीक है ऐसे तो रोल
  7558. 5:01:29बेस्ड एक्सेस कंट्रोल में मेथड लेवल रोल
  7559. 5:01:31बेस्ड एक्सेस कंट्रोल और सेंट्रलाइज्ड
  7560. 5:01:33ऑथेंटिकेशन सॉरी सेंट्रलाइज्ड ऑथराइजेशन
  7561. 5:01:36ठीक है ये दोनों चीज हम देख चुके हैं
  7562. 5:01:38उम्मीद करता हूं यह हेल्पफुल रहा और आपको
  7563. 5:01:40अब तक सब समझ में आया।
  7564. 5:01:47तो दोस्तों आप सिक्योरिटी की मदद से चीजों
  7565. 5:01:50को ऑथेंटिकेट तो कर पा रहे हो, ऑथराइज भी
  7566. 5:01:53कर पा रहे हो। अब जो चीज रह गई है वो यह
  7567. 5:01:57है कि यहां पर आप जो भी यूज़र्स बना रहे हो
  7568. 5:02:00वो यूजर आप बना रहे हो इन मेमोरी। यानी कि
  7569. 5:02:03यह यूज़र्स जो है यह डेटाबेस में नहीं बनाए
  7570. 5:02:06जा रहे हैं। यह बनाए जा रहे हैं सिर्फ इन
  7571. 5:02:08मेमोरी। ठीक है? तो, हम क्या देखने वाले
  7572. 5:02:10हैं कि आप जो यूज़र्स बना रहे हो उनको आप
  7573. 5:02:14डेटाबेस में कैसे स्टोर कर सकते हो और
  7574. 5:02:17अगेंस्ट अ डेटाबेस यूजर यानी कि एक यूजर
  7575. 5:02:19जो डेटाबेस में एक्सिस्ट करता है उसको आप
  7576. 5:02:22किस तरीके से इस्तेमाल कर सकते हो
  7577. 5:02:24ऑथेंटिकेशन के लिए। क्योंकि असल जिंदगी
  7578. 5:02:26में अगर आप काम करोगे प्रोडक्शन रेडी
  7579. 5:02:27एप्लीकेशनेशंस पर काम करोगे तो आप डेटाबेस
  7580. 5:02:30में जो यूजर सेव्ड है उसे ही इस्तेमाल
  7581. 5:02:32करोगे ऑथेंटिकेशन और ऑथराइजेशन के लिए।
  7582. 5:02:35ठीक है? ये ऐसे इन मेमोरी तो आप जो डेमो
  7583. 5:02:38प्रोजेक्ट्स या पीओसीस बना रहे हो कुछ
  7584. 5:02:40क्लाइंट्स के लिए उसमें यूज़ करोगे। ठीक
  7585. 5:02:42है? तो फिलहाल मैं क्या करूंगा? देखिए,
  7586. 5:02:44अभी फिलहाल तो डेटाबेस कॉन्फ़िगरर्ड नहीं
  7587. 5:02:46है हमारे एप्लीकेशन में। अगर आप pmxl में
  7588. 5:02:49भी जाओगे तो यहां पर डेटाबेस की कोई भी
  7589. 5:02:51डिपेंडेंसी लगी हुई नहीं है। तो मैं आपको
  7590. 5:02:53बताऊंगा कि आप माय सीक्वल का इस्तेमाल
  7591. 5:02:56कैसे कर सकते हो। तो यहां पर मैं आ जाऊंगा
  7592. 5:02:58start.
  7593. 5:03:00जो कि है हमारी फेवरेट वेबसाइट जो कि हम
  7594. 5:03:03इस्तेमाल करते हैं स्प्रिंगboot डेवलपमेंट
  7595. 5:03:06के दौरान और यहां पर मैं टाइप कर दूंगा
  7596. 5:03:08एसक्यूएल और यहां पर या तो फिर माय सीक्वल
  7597. 5:03:12टाइप कीजिए और यह माय सीक्वल का जो
  7598. 5:03:13ड्राइवर है वह आपको दिख जाएगा। यहां पर
  7599. 5:03:16आइए और फिर इस ड्राइवर को एक हिसाब से
  7600. 5:03:20कॉपी कर लीजिए ऐसे। ठीक है? और यहां पर
  7601. 5:03:24इसकी डिपेंडेंसी को है ऐड कर दीजिए। ठीक
  7602. 5:03:26है? अब इतना करने के बाद हमें क्या करना
  7603. 5:03:28है? हमें जो देखिए माय सीक्वल का ड्राइवर
  7604. 5:03:32तो ऐड हो चुका है हमारी एप्लीकेशन में। अब
  7605. 5:03:33हमें माय सीक्वल के लिए जो कनेक्शन
  7606. 5:03:37डिटेल्स है यानी कि देखिए स्प्रिंग बूट को
  7607. 5:03:39तो पता है हम My सीक्वल का इस्तेमाल कर
  7608. 5:03:41रहे हैं। जैसे ही हमने यह ऐड कर दी
  7609. 5:03:42डिपेंडेंसी। इसको बाय द वे मेवन रीलोड भी
  7610. 5:03:44कर देना यहां पर ताकि डिपेंडेंसी फैच हो
  7611. 5:03:46जाए और चेंजेस सारे सिंक हो जाए। देखिए ये
  7612. 5:03:48सब हो रहा है ज़ॉल्विंग मेवन डिपेंडेंसी।
  7613. 5:03:50ठीक है? ये कर लीजिएगा। अब हमने स्प्रिंग
  7614. 5:03:52बूट को ये तो बता दिया कि हमें माय सीक्वल
  7615. 5:03:54डेटाबेस का इस्तेमाल करना है। ठीक है? माय
  7616. 5:03:55सीक्वल डेटाबेस का इस्तेमाल करना है।
  7617. 5:03:57लेकिन अब इसकी इस डेटाबेस को कनेक्ट कैसे
  7618. 5:04:00करना है। कहां है डेटाबेस? तो उसके लिए
  7619. 5:04:02मैं यहां पर कुछ कॉन्फ़िगरेशन पेस्ट कर
  7620. 5:04:04दूंगा और यहां पर अ लिख दूंगा सिक्योरिटी।
  7621. 5:04:07सिक्योरिटी अ ऐप ऐसे करके। ठीक है? तो
  7622. 5:04:11देखिए ये है मेरी डेटाबेस की कनेक्शन
  7623. 5:04:14डिटेल्स। तो अब इतना कर लिया है हमने। अब
  7624. 5:04:16हम क्या करेंगे? अब हम अ यहां पर आ
  7625. 5:04:19जाएंगे। ठीक है? ये हमने सिक्योरिटी ऐप
  7626. 5:04:21बनाया है यहां पर ये स्कीमा का नाम। तो
  7627. 5:04:24यहां पर आके मैं क्या करूंगा? यहां पर
  7628. 5:04:26राइट क्लिक करके क्रिएट अ स्कीमा और यहां
  7629. 5:04:29पर सिक्योरिटी ऐप नाम का स्कीमा बना
  7630. 5:04:31दूंगा। देखिए मैं माय सीक्वल का इस्तेमाल
  7631. 5:04:32कर रहा हूं। आप चाहो तो कोई और डेटाबेस
  7632. 5:04:35इस्तेमाल कर सकते हो। पॉस्कर सीक्वल
  7633. 5:04:37इस्तेमाल कर सकते हो। ठीक है? तो माय
  7634. 5:04:39सिक्योरिटी सिक्योरिटी ऐप करके यह स्कीमा
  7635. 5:04:41बन चुका है और इसको रिफ्रेश करूंगा यहां
  7636. 5:04:43पर तो दिख भी जाएगा सिक्योरिटी ऐप देखिए
  7637. 5:04:46सिक्योरिटी अंडरs ऐप सिक्योरिटी ऐप ऑलरेडी
  7638. 5:04:48था मेरे पास सिक्योरिटी अंडरs ऐप यूनिक
  7639. 5:04:50होना जरूरी है नाम ठीक है तो मैं माय
  7640. 5:04:52सीक्वल का इस्तेमाल कर रहा हूं आप चाहे तो
  7641. 5:04:53पोस्टगड सीक्वल कोई और डेटाबेस अगर आपको
  7642. 5:04:55पसंद है तो वो आप इस्तेमाल कर सकते हो गोल
  7643. 5:04:58यह है मैं आपको यह दिखाना चाह रहा हूं कि
  7644. 5:05:00किस तरीके से आप डेटाबेस में जो यूजर
  7645. 5:05:03सेव्ड है उसके अगेंस्ट आप किस तरीके से
  7646. 5:05:06ऑथेंटिकेशन कर सकते हो। ठीक है? तो इतना
  7647. 5:05:09हो चुका। अब देखिए यहां पर हमने ठीक है?
  7648. 5:05:13डेटाबेस को कनेक्ट कर लिया। यहां पर ये
  7649. 5:05:14सारे क्रेडेंशियल्स हैं। हमने डायलग भी
  7650. 5:05:16लिख लिया। ठीक है? और माय सिक्योरिटी
  7651. 5:05:18कॉन्फिग पर आ जाते हैं। यहां पर अब माय
  7652. 5:05:21सिक्योरिटी कॉन्फ़िग में अगर आप देखोगे तो
  7653. 5:05:23यहां पर हमने कुछ यूज़र्स क्रिएट किए हुए
  7654. 5:05:26हैं ऑलरेडी। और ये यूज़र्स क्रिएट हो रहे
  7655. 5:05:29हैं मेमोरी में। क्योंकि हम यहां पर
  7656. 5:05:31इस्तेमाल कर रहे हैं फिलहाल इन मेमोरी
  7657. 5:05:34ऑथेंटिकेशन। ठीक है? तो मैं अब क्या करना
  7658. 5:05:35चाहूंगा? मेमोरी में यूज़र्स नहीं क्रिएट
  7659. 5:05:37करना चाहता मैं। मैं इस्तेमाल करना चाहता
  7660. 5:05:39हूं अ डेटबेस का। ठीक है? तो यहां पर इसको
  7661. 5:05:43कमेंट कर दूंगा मैं और यहां पर आऊंगा। और
  7662. 5:05:46यहां पर देखिए यूजर अगर आप यूजर डिटेल्स
  7663. 5:05:49मैनेजर टाइप करते हो यूजर डिटेल्स
  7664. 5:05:53मैनेजर। ठीक है? तो यहां पर आपको दो यूजर
  7665. 5:05:55डिटेल्स मैनेजर दिखेंगे। एक तो इन मेमोरी
  7666. 5:05:58यूजर डिटेल्स मैनेजर। ठीक है? और दूसरा
  7667. 5:06:00होना चाहिए जीडीबीसी।
  7668. 5:06:04जेडीबीसी वाला कहां चला गया? ठीक है?
  7669. 5:06:06जेडीबीसी वाला दिखाई नहीं दे रहा। सजेशन
  7670. 5:06:08में आया नहीं। लेकिन जेडीपीसी
  7671. 5:06:10यूजर डिटेल्स मैनेजर देखिए ये वाला है।
  7672. 5:06:13ठीक है? तो इसका हम इस्तेमाल करेंगे
  7673. 5:06:14क्योंकि हम डेटाबेस का इस्तेमाल कर रहे
  7674. 5:06:16हैं यूज़र्स के लिए। तो जेडीबीसी का
  7675. 5:06:19इस्तेमाल होगा और फिर यहां पर यूजर
  7676. 5:06:21डिटेल्स मैनेजर इज़ इक्वल ट न्यू और फिर
  7677. 5:06:25जेडीबीसी
  7678. 5:06:27यूजर डिटेल्स मैनेजर और फिर यहां पर हमें
  7679. 5:06:30इस्तेमाल करना होगा डेटा सोर्स का। ठीक
  7680. 5:06:34है? अब देखिए यहां पर मैं लिखूंगा डेटा
  7681. 5:06:36सोर्स का। तो ये जो यूजर डिटेल मैनेजर है,
  7682. 5:06:40इसको किस डेटा सोर्स से बात करनी है? डेटा
  7683. 5:06:42सोर्स का मतलब क्या? कि डेटाबेस कहां पर
  7684. 5:06:44है? करेक्ट? डाटा सोर्स का मतलब क्या हुआ?
  7685. 5:06:47डाटा बेस कहां पर है? तो हमें यहां पर
  7686. 5:06:50क्या चाहिए? यह जो ऑब्जेक्ट है, यह है
  7687. 5:06:53डेटाबेस का कनेक्शन ऑब्जेक्ट चाहिए हमें।
  7688. 5:06:55क्योंकि उस कनेक्शन ऑब्जेक्ट की मदद से
  7689. 5:06:58जीडीबीसी यूर यूजर डिटेल्स मैनेजर जो है,
  7690. 5:07:00कनेक्शन एस्टैब्लिश करेगा और ये सारे जो
  7691. 5:07:03यूज़र्स हमने यहां पर क्रिएट किए, उसको
  7692. 5:07:04क्रिएट करेगा डेटाबेस में। करेक्ट? तो, यह
  7693. 5:07:07डेटा सोर्स अब हम कहां से लाएं? ठीक है?
  7694. 5:07:08तो, देखिए, हमने डेटाबेस को कॉन्फ़िगर कर
  7695. 5:07:11रखा है। कहां कॉन्फ़िगर कर रखा है? तो हमने
  7696. 5:07:13कॉन्फ़िगर कर रखा है यहां pmxl में। ये
  7697. 5:07:16डिपेंडेंसी ऐड कर रखी है और यहां पर
  7698. 5:07:18कॉन्फ़िगरेशंस मेंशंड है। तो कॉन्फ़िगरेशन
  7699. 5:07:20डन है हमारे एंड से। लेकिन हम चाहते हैं
  7700. 5:07:22उसका एक ऑब्जेक्ट मिले हमें। कनेक्शन का
  7701. 5:07:24एक ऑब्जेक्ट मिले। तो मैं क्या करूंगा?
  7702. 5:07:26मैं यहां पर डेटा सोर्स का एक ऑब्जेक्ट
  7703. 5:07:28बनाऊंगा। आप देख रहे हो डेटा सोर्स और
  7704. 5:07:30यहां पर कहूंगा डेटा सोर्स इस तरीके से और
  7705. 5:07:33यहां पर ऐड कर दूंगा ऑटो वायड। ठीक है? तो
  7706. 5:07:37ये क्या होने वाला है? इस कोड की मदद से
  7707. 5:07:40क्या होगा? स्प्रिंग जो है ऑटोमेटिकली
  7708. 5:07:43कॉन्फिगरर्ड डेटाबेस जो है हमारी
  7709. 5:07:46एप्लीकेशन के साथ उसकी जो कनेक्शन
  7710. 5:07:48ऑब्जेक्ट है ठीक है उसको इंजेक्ट कर देगा
  7711. 5:07:51यहां पर जो जो भी कॉन्फ़िगर डेटाबेस है
  7712. 5:07:54आपके पास पॉजग्रस सीक्वल है जो भी डेटाबेस
  7713. 5:07:56है आपने कॉन्फ़िगर कर रखा है उसकी जो
  7714. 5:07:58कनेक्शन ऑब्जेक्ट है उसको यहां पर पास कर
  7715. 5:08:00देगा डेटा सोर्स ऑब्जेक्ट में ठीक है और
  7716. 5:08:03इसका हम इस्तेमाल कर सकते हैं क्वरीज़ रन
  7717. 5:08:05करने के लिए डेटाबेस से कनेक्ट करने के
  7718. 5:08:08लिए ठीक है समझ में आ गया तो ये हम यहां
  7719. 5:08:10पर इस्तेमाल कर रहे हैं। ठीक है? डेटा
  7720. 5:08:12सोर्स यहां पर इस तरीके से और फिर मैं
  7721. 5:08:16यहां पर आऊंगा। ठीक है? और यहां पर अब
  7722. 5:08:18मेरे पास डेटा सोर्स है और यूजर डिटेल्स
  7723. 5:08:20जीडीबीसी यूजर डिटेल्स मैनेजर का ऑब्जेक्ट
  7724. 5:08:22भी है। तो मैं अब इस यूजर डिटेल्स मैनेजर
  7725. 5:08:25की मदद से मैं क्रिएट करूंगा यूजर को यहां
  7726. 5:08:28पर और मैं मेंशन करूंगा यूजर वन। सबसे
  7727. 5:08:31पहले फिर मेंशन करूंगा यूजर टू और फिर
  7728. 5:08:33मेंशन करूंगा एडमिन। ठीक है? सारे यूज़र्स
  7729. 5:08:36क्रिएट हो जाएंगे और फिर मैं कहूंगा
  7730. 5:08:38रिटर्न यूजर डिटेल्स मैनेजर।
  7731. 5:08:42ठीक है? उम्मीद करता हूं समझ में आ रहा है
  7732. 5:08:43आपको कि हो क्या रहा है। ठीक है? काफी
  7733. 5:08:45सिंपल चीज हो रही है। पहले हम सिर्फ इन
  7734. 5:08:47मेमोरी यूजर डिटेल्स मैनेजर का इस्तेमाल
  7735. 5:08:49कर रहे थे। क्यों? क्योंकि हम यूज़र्स को
  7736. 5:08:53इन मेमोरी मैनेज कर रहे थे। हम डेटाबेस का
  7737. 5:08:55इस्तेमाल कर ही नहीं रहे थे। फिर हमने
  7738. 5:08:57सोचा चलिए डेटाबेस को लेके आते हैं। तो
  7739. 5:08:58पहले तो डेटाबेस एप्लीकेशन में कॉन्फ़िगर
  7740. 5:09:00कर लिया हमने। ठीक है? फिर हमने यहां पर
  7741. 5:09:02जीडीबीसी यूजर डिटेल्स मैनेजर की मदद से
  7742. 5:09:04डेटाबेस को कनेक्ट किया। यहां पर उसकी
  7743. 5:09:06कनेक्शन ऑब्जेक्ट की मदद से इसकी ऑब्जेक्ट
  7744. 5:09:08बनाई यहां पर जो कि जीडीबीसी यूजर डिटेल्स
  7745. 5:09:10मैनेजर है। और फिर हमने इस मैनेजर की मदद
  7746. 5:09:14से तीन यूज़र्स को क्रिएट किया है। तीन
  7747. 5:09:17यूज़र्स क्रिएट हो चुके हैं डेटाबेस में।
  7748. 5:09:19अब हम एप्लीकेशन को रन करते हैं। ठीक है?
  7749. 5:09:22और रन करते हैं और देखते हैं होता क्या
  7750. 5:09:24है। अच्छा यहां पर कुछ गलत हो गया। क्या
  7751. 5:09:27गलत हो गया है? यहां पर आ रही है कुछ एरर
  7752. 5:09:31हमें। ठीक है? तो ये एरर क्या कह रहा है
  7753. 5:09:35हमें?
  7754. 5:09:37ठीक है? जावा कैन नॉट एक्सेस
  7755. 5:09:41दिस। ओके। ये कहां पे बोल रहा है? लाइन
  7756. 5:09:43नंबर 57 पे। ओके। तो यहां पर यह जो इशू आ
  7757. 5:09:47रहा है यह शायद कुछ डिपेंडेंसी मिसिंग है
  7758. 5:09:50जो कि जीडीबीसी डिपेंडेंसी जो मैंने ऐड
  7759. 5:09:52नहीं किया है। तो यहां पर मुझे वो भी ऐड
  7760. 5:09:55कर लेना चाहिए था। तो यहां पर जेडीबीसी
  7761. 5:09:58लिख लूंगा। ठीक है? स्टार्टर जेडीबीसी ये
  7762. 5:10:01वाला। ठीक है? अ इसको एक्सप्लोर करता हूं।
  7763. 5:10:06यही है। अह जी हां, यही है। तो इसको कॉपी
  7764. 5:10:11कर लूंगा यहां पर और यहां पर आ जाते हैं
  7765. 5:10:14ओम ड.xml में यहां पर और इसको आराम से
  7766. 5:10:18पेस्ट कर देते हैं ऐसे और इसको मेवन रीलोड
  7767. 5:10:21कर देते हैं और फिर इसको रन करते हैं। ठीक
  7768. 5:10:25है? तो अब डिपेंडेंसी रिलेटेड कुछ इशू
  7769. 5:10:27नहीं आना चाहिए। लेकिन एक इशू शायद अभी भी
  7770. 5:10:29आएगा। ठीक है? देखते हैं क्या होता है।
  7771. 5:10:32देखिए इशू आ गया। ठीक है? यह पता ही था
  7772. 5:10:35मुझे इशू आएगा ही। तो देखिए हो क्या रहा
  7773. 5:10:39है मैं आपको बताता हूं। यह एप्लीकेशन
  7774. 5:10:42स्टार्ट हुई। ठीक है? एप्लीकेशन स्टार्ट
  7775. 5:10:44हुई और देखिए ये डेटा को इंसर्ट करना चाह
  7776. 5:10:46रहा है। क्यों इंसर्ट करना चाह रहा है?
  7777. 5:10:48क्योंकि हमने यहां पर सिक्योरिटी कॉन्फ़िग
  7778. 5:10:50में लिखा है कि भाई डेटा सोर्स का
  7779. 5:10:52ऑब्जेक्ट लीजिए। इसका मतलब माय सीक्वल की
  7780. 5:10:55कनेक्शन बनाओ डीबीसी यूजर डिटेल्स मैनेजर
  7781. 5:10:58की मदद से और ये तीन यूजर को क्रिएट कर
  7782. 5:11:00दो। ठीक है? तीन यूजर को क्रिएट तो करना
  7783. 5:11:02है। यह देखिए इंसर्ट क्वरी चल तो रही है
  7784. 5:11:05लेकिन प्रॉब्लम यह है इसकी जो एसक्यूएल है
  7785. 5:11:08यानी कि ये जो डेटाबेस है वो उसमें टेबल
  7786. 5:11:13एग्ज़िस्ट ही नहीं करती है। टेबल एग्ज़िस्ट
  7787. 5:11:14करती है नहीं करती है। तो आपको क्या करना
  7788. 5:11:16होगा? मैनुअली टेबल बनाना होगा। ठीक है?
  7789. 5:11:18अब मैनुअली टेबल बनाने के लिए मैं क्या
  7790. 5:11:20करूंगा? मैं यहां पर लिखूंगा यूज़
  7791. 5:11:22सिक्योरिटी अंडरs ऐप ऐसे। ये मैनुअली ये
  7792. 5:11:26मैंने डेटाबेस का इस्तेमाल कर दिया। और
  7793. 5:11:28यहां पर ये जो एसक्यूएल क्वेरी है इसको
  7794. 5:11:31मैंने पेस्ट कर दिया। ठीक है? तो देखिए ये
  7795. 5:11:33सिंपल क्वेरी है। ऐसा कुछ नहीं है। आप
  7796. 5:11:35इसको टाइप कर सकते हो खुद से। लेकिन मैं
  7797. 5:11:37यूज़र्स को क्रिएट कर रहा हूं। इसमें
  7798. 5:11:39यूजरनेम, पासवर्ड नाम की फील्ड रखा हूं और
  7799. 5:11:41इनेबल्ड नाम की फील्ड है। ठीक है? ये तीन
  7800. 5:11:43फील्ड है। यूजरनेम, वेयर केयर और पासवर्ड
  7801. 5:11:46और नॉट नल प्राइमरी की है ये। यूजरनेम और
  7802. 5:11:49यह भी नॉट नल है। अथॉरिटीज़ जहां पर हम रोल
  7803. 5:11:52स्टोर करेंगे। ठीक है? तो यहां पर यूजरनेम
  7804. 5:11:54को मैंने लिखा है अथॉरिटी और एक
  7805. 5:11:56कंस्ट्रेंट रखा है जहां पर अ ये यूजरनेम
  7806. 5:12:00यहां का यूजरनेम और इसके यूजरनेम में एक
  7807. 5:12:03प्राइमरी की फॉरेन की का रिलेशनशिप है।
  7808. 5:12:05ठीक है? ये मैंने किया और एक इंडेक्स बना
  7809. 5:12:07दिया मैंने। ठीक है? एक इंडेक्स बनाई है
  7810. 5:12:09ये। तो इतना क्रिएट करना है आपको और मैं
  7811. 5:12:12क्या करता हूं? इसको मैं कॉपी कर लेता हूं
  7812. 5:12:14और इसको रन कर देता हूं। अच्छा तो ये क्या
  7813. 5:12:17हो गया?
  7814. 5:12:19यहां पर अच्छा यह इंडेक्स नहीं बन रही है
  7815. 5:12:22लेकिन यह दोनों तो शायद बन रहे हैं। तो एक
  7816. 5:12:24हिसाब से मैं पहले इसको बना लेता हूं। यह
  7817. 5:12:26बन गया। फिर मैं इसको बनाता हूं। ये भी बन
  7818. 5:12:29गया। और अब मैं इंडेक्स को बनाता हूं। ठीक
  7819. 5:12:32है? तो एक-एक करके क्वरी अगर एग्जीक्यूट
  7820. 5:12:34करोगे तो बन जाएगा। देखिए तीनों बन चुके
  7821. 5:12:36हैं। और अगर यहां पर इसको रन करता हूं
  7822. 5:12:37मैं। ठीक है? तो ये देखिए ये आ चुके हैं
  7823. 5:12:41दोनों। ठीक है? ये बन चुका है। अब आप क्या
  7824. 5:12:44कर सकते हो? यहां पर आ जाइए। ठीक है? और
  7825. 5:12:47यह एप्लीकेशन को रन कीजिए। तो अभी स्कीमा
  7826. 5:12:49तो डिफाइंड है। अब यह एप्लीकेशन रन तो
  7827. 5:12:51वैसे होनी ही चाहिए। देखिए एप्लीकेशन रन
  7828. 5:12:54हो गई है। स्टार्ट हो चुकी है। ठीक है? तो
  7829. 5:12:55स्कीमा का ही इशू था। और अगर आप यहां पर
  7830. 5:12:57आते हो यूज़र्स में और इसको रन करते हो तो
  7831. 5:13:00देखिए हमारे पास यूज़र्स क्रिएट हो चुके
  7832. 5:13:03हैं। यूज़र्स क्रिएट हो चुके हैं। अथॉरिटी
  7833. 5:13:05देखते हैं। अथॉरिटी में देखिए एडमिन जो
  7834. 5:13:08यूजर है उसको एडमिन का रोल दिया हुआ है।
  7835. 5:13:10यूजर वन जो है उसको यूजर का रोल दिया हुआ
  7836. 5:13:13है। और यूजर टू जो है उसको यूजर का रोल
  7837. 5:13:15दिया हुआ है। ठीक है? अब देख रहे हो किस
  7838. 5:13:17तरीके से ये क्रिएट हो गया यहां पर। ठीक
  7839. 5:13:19है? और यहां पर देखिए यहां पर कुछ लॉग्स
  7840. 5:13:21तो मिलेंगे नहीं लेकिन आपको थोड़ी एनहांस
  7841. 5:13:23लॉगिन इनेबल करनी होगी एप्लीकेशन
  7842. 5:13:24प्रॉपर्टीज में। ठीक है? और सिक्योरिटी
  7843. 5:13:27लेवल पर अगर आप लॉग इन इनेबल करते हो तो
  7844. 5:13:29आपको यहां पर इंसर्ट क्वेरीज भी दिखाई
  7845. 5:13:31देगी। ठीक है? तो हो क्या रहा है?
  7846. 5:13:33एप्लीकेशन स्टार्ट पर ये कॉन्फ़िगरेशन पिक
  7847. 5:13:36की जा रही है स्प्रिंग सिक्योरिटी की मदद
  7848. 5:13:39से। और स्प्रिंग सिक्योरिटी ये यूज़र्स जो
  7849. 5:13:41है उसको डेटाबेस में क्रिएट कर रहा है। और
  7850. 5:13:43ये डेटाबेस में तभी क्रिएट करेगा जब आपके
  7851. 5:13:45पास स्कीमा है। स्कीमा कब बनाई हमने?
  7852. 5:13:47स्कीमा का मतलब है डेटाबेस स्ट्रक्चर। तो
  7853. 5:13:48वो हमने बना रखा है टेबल्स। ठीक है? और आप
  7854. 5:13:51देख रहे हो यहां पर देखिए मैंने जो भी
  7855. 5:13:53बताया है अब तक वो सारी चीजें आपको अब
  7856. 5:13:55दिखाई देगी। यहां पर आप देख रहे हो यूज़र्स
  7857. 5:13:57क्रिएट हो गई। ठीक है? यूज़र्स क्रिएट हो
  7858. 5:13:59गए। अथॉरिटीज़ टेबल में आपको रोल्स दिखाई
  7859. 5:14:01देंगे। और यहां पर आप देखोगे रोल
  7860. 5:14:03अंडरस्कोर करके प्रीफिक्स है। यहां पर
  7861. 5:14:05एडमिन आपने रोल क्या नाम क्या दिया है?
  7862. 5:14:08आपने रोल का नाम सिर्फ एडमिन दिया है।
  7863. 5:14:11लेकिन मैंने आपको कहा था कि रोल स्टोर
  7864. 5:14:13होता है स्प्रिंग सिक्योरिटी में या
  7865. 5:14:15स्प्रिंग सिक्योरिटी यूज़ करता है। उसमें
  7866. 5:14:17रोल प्रीफिक्स ऐड करके। रोल अंडरस्कोर
  7867. 5:14:19एडमिन। यह हमने एक इंटरनल फाइल भी ओपन
  7868. 5:14:21करके देखा था। ठीक है? पूरा लॉजिक देखा था
  7869. 5:14:24हमने। तो यहां पर देख पा रहे हो आप वो
  7870. 5:14:26लॉजिक अप्लाई हो रहा है यहां पर। करेक्ट?
  7871. 5:14:28और वो कौन सी फाइल थी वो भी मैं आपको बता
  7872. 5:14:29देता हूं। रोल्स पे अगर आप ओवर करते हो
  7873. 5:14:31अंदर जाते हो तो यहां पर आप देखोगे ये रोल
  7874. 5:14:32अपेंड कर रहा है उसमें। ठीक है? तो रोल
  7875. 5:14:34अपेंड हो रहा है आपका। जैसे ही आप ये सेट
  7876. 5:14:36कर रहे हो और रोल अपेंड हो के सॉरी रोल
  7877. 5:14:38प्रिपेंड हो के अपेंड नहीं रोल प्रिपेंड
  7878. 5:14:40हो के यानी एडमिन के आगे रोल अंडरस्कोर लग
  7879. 5:14:42रहा है। यूजर के आगे रोल अंडरस्कोर लग रहा
  7880. 5:14:44है। यहां पर भी यूजर के आगे रोल अंडरस्कोर
  7881. 5:14:46लग रहा है और वो रोल अंडरस्कोर के साथ ही
  7882. 5:14:48सेव हो रहा है। ठीक है? तो स्प्रिंग
  7883. 5:14:50सिक्योरिटी ये स्टाइल में यूज़ करता है
  7884. 5:14:52रूल्स को। आप कुछ भी नाम दे दो आगे वो रोल
  7885. 5:14:54अंडरस्कोर लगा लेगा। ठीक है? तो ये हो गई
  7886. 5:14:57बात यहां पर। अब हम यहां पर आ जाते हैं और
  7887. 5:14:59देखते हैं हमारी सारी एपीआई चल रही है
  7888. 5:15:01क्या? ये एंड पॉइंट चलनी चाहिए ऐसे। जी
  7889. 5:15:03हां, चल रही है। अगर मैं पासवर्ड गलत दे
  7890. 5:15:06देता हूं लाइक तीन टाइप कर देता हूं। तो
  7891. 5:15:07देखिए यह अनथराइज्ड आ रहा है। ठीक है?
  7892. 5:15:09यहां पर आ जाता हूं यूजर में। यूजर का जो
  7893. 5:15:12एंड पॉइंट है उसको यूजर एक्सेस कर पा रहा
  7894. 5:15:14है। जी हां, कर पा रहा है। एडमिन के एंड
  7895. 5:15:16पॉइंट को यूजर एक्सेस कर पाएगा। एडमिन
  7896. 5:15:18हेलो ट्राई करते हैं। जी नहीं कर पाएगा।
  7897. 5:15:21देखिए मैंने एडमिन चेंज किया यहां पर एंड
  7898. 5:15:23पॉइंट को। अगर यूजर कर लूं तो यूजर कर
  7899. 5:15:25पाएगा। देखिए और एडमिन कर लूं तो एडमिन
  7900. 5:15:27नहीं कर पाएगा। तो ये कैसे काम कर रहा है?
  7901. 5:15:30यह काम कर रहा है डेटाबेस में जो यूज़र्स
  7902. 5:15:32क्रिएटेड है उसके अगेंस्ट। ठीक है? इन
  7903. 5:15:34मेमोरी ऑथेंटिकेशन नहीं है अब ये। अब यह
  7904. 5:15:37डेटाबेस ऑथेंटिकेशन है जहां पर आपका जो
  7905. 5:15:40डेटाबेस है उसके अगेंस्ट ऑथेंटिकेशन लगी
  7906. 5:15:43हुई है और चीजें उस तरीके से काम कर रही
  7907. 5:15:46है। ठीक है? तो यही है पूरा का पूरा
  7908. 5:15:50सिस्टम। ठीक है? और यहां पर कुछ लोगों को
  7909. 5:15:52ये मैंने अक्सर देखा है बिगिनर्स को ये
  7910. 5:15:54डेटा सोर्स समझने में दिक्कत आती है कि
  7911. 5:15:56डेटा सोर्स में ऑटोमेटिकली कनेक्शन की
  7912. 5:15:58डिटेल्स कैसे इंजेक्ट हो जाती है। तो
  7913. 5:15:59देखिए डेटा सोर्स में जो भी कनेक्शन की
  7914. 5:16:02डिटेल्स इंजेक्ट होती है वो कॉन्फ़िगरेशन
  7915. 5:16:05अ स्प्रिंग बूट को मिलता है यहां से
  7916. 5:16:07एप्लीकेशन प्रॉपर्टीज में से। ठीक है? तो
  7917. 5:16:09एप्लीकेशन प्रॉपर्टीज में से स्प्रिंग बूट
  7918. 5:16:11क्या करता है? कॉन्फ़िगरेशन डिटेल्स लेता
  7919. 5:16:13है, कनेक्शन ऑब्जेक्ट बनाता है, कनेक्शन
  7920. 5:16:15बनता है और फिर यह डेटा सोर्स बीन में आकर
  7921. 5:16:18यहां पर असाइन कर देता है और हमें हमारे
  7922. 5:16:21लिए वो अवेलेबल हो जाती है। यहां पर हमने
  7923. 5:16:23ऑटो वायर लिखा है तो हम स्प्रिंग बूट को
  7924. 5:16:24बोल रहे हैं कि भाई तुम ही मैनेज करो। ठीक
  7925. 5:16:26है? तो ऑटो कॉन्फ़िगरेशन मैकेनिज्म यहां पर
  7926. 5:16:29काम में आ जाता है। और यहां पर आप देखोगे
  7927. 5:16:30तो देखिए स्प्रिंग डॉट डेटा सोर्स लिख रहे
  7928. 5:16:32हो। डेटा सोर्स डेटा सोर्स। तो यही वो
  7929. 5:16:35डेटा सोर्स ऑब्जेक्ट है जो यहां पर हमें
  7930. 5:16:36मिल रहा है। ठीक है? तो यही है। आप चाहो
  7931. 5:16:40तो ये क्लास को जाकर ऐसे आप पढ़ भी सकते
  7932. 5:16:42हो कि क्या हो रहा है यहां पर। ठीक है? तो
  7933. 5:16:44ये फैक्ट्री है फॉर कनेक्शंस। ठीक है?
  7934. 5:16:46कनेक्शन को रिप्रेजेंट करता है। तो यही है
  7935. 5:16:50अ डेटाबेस रिलेटेड ऑथेंटिकेशन और उम्मीद
  7936. 5:16:53करता हूं ये हेल्पफुल लगा आपको।
  7937. 5:17:01देखिए दोस्तों अगर फिलहाल आप हमारी यूज़र्स
  7938. 5:17:05टेबल देखेंगे तो आप देखोगे उसमें जो डेटा
  7939. 5:17:08है यानी कि पासवर्ड है वो बिल्कुल के
  7940. 5:17:10बिल्कुल नॉन इंक्रिप्टेड फॉर्म में है।
  7941. 5:17:13किसी तरह का हैशिंग वगैरह कुछ नहीं लगा
  7942. 5:17:15हुआ है। ठीक है? इसको इंक्रिप्ट नहीं किया
  7943. 5:17:17गया है। तो जनरली पासवर्ड को ऐसे स्टोर
  7944. 5:17:20करना सही बात नहीं है। ठीक है? तो अभी तक
  7945. 5:17:22तो हमने किया नहीं क्योंकि हम लर्न कर रहे
  7946. 5:17:24थे लेकिन फिलहाल हम बात करेंगे पासवर्ड
  7947. 5:17:27एनकोडिंग की और हैशिंग की। देखिए पासवर्ड
  7948. 5:17:31एनकोडिंग हैशिंग वगैरह के ना काफी सारे
  7949. 5:17:33एल्गोरिदम्स होते हैं। और स्प्रिंग
  7950. 5:17:35सिक्योरिटी इतना बढ़िया है कि यहां पर
  7951. 5:17:38ऑलरेडी इंप्लीमेंट किए हुई चीजें हैं। ठीक
  7952. 5:17:41है? तो अगर आप यहां पर आओगे ठीक है? यहां
  7953. 5:17:44पर टाइप कीजिए बिक्रिप्ट।
  7954. 5:17:47ठीक है? बिक्रिप्ट पासवर्ड एनकोडर। तो अगर
  7955. 5:17:50इसमें आप जाओगे यहां पर डाउनलोड सोर्स कर
  7956. 5:17:53लीजिए। ठीक है? तो यह एक हिसाब से एक
  7957. 5:17:54क्लास है। ठीक है? और देखिए एक यह
  7958. 5:17:57इंप्लीमेंटेशन है पासवर्ड एनकोडर का और ये
  7959. 5:18:01बिक्रिप्ट स्ट्रांग हैशिंग फंक्शन का
  7960. 5:18:03इस्तेमाल करता है। ठीक है? तो बेसिकली ये
  7961. 5:18:06एक हैशिंग फंक्शन का इस्तेमाल करके हमारे
  7962. 5:18:10जो पासवर्ड्स हैं उसको अ सिक्योर करने में
  7963. 5:18:13मदद करता है और ये जो पासवर्ड्स है उसको
  7964. 5:18:16इस तरीके से इनकोड करेगा कि ह्यूमन के लिए
  7965. 5:18:19रीडेबल नहीं होगा। ठीक है? लेकिन
  7966. 5:18:21एप्लीकेशन में आप डेटाबेस में स्टोर कर
  7967. 5:18:23सकते हो और ये अगर कोई डेवलपर या कोई भी
  7968. 5:18:26इस डेटा को एक्सेस करता है उसे वो पासवर्ड
  7969. 5:18:28समझ में नहीं आएंगे। ठीक है? तो एक हिसाब
  7970. 5:18:31से सिक्योरिटी मैकेनिज्म है जो हम
  7971. 5:18:33इंप्लीमेंट करने जा रहे हैं। ठीक है? और
  7972. 5:18:35देखिए पासवर्ड एनकोडिंग या हैशिंग ये एक
  7973. 5:18:38हिसाब से क्रिटिकल है। तो अगर आपका
  7974. 5:18:41डेटाबेस मल्टीपल लोग इस्तेमाल कर रहे हैं,
  7975. 5:18:44एक्सेस कर रहे हैं। देखिए जनरली कंपनीज़
  7976. 5:18:46में क्या होता है? डेटाबेस का एक्सेस है
  7977. 5:18:47ना काफी सारे लोगों को होता है। डेटाबेस
  7978. 5:18:49डेवलपर को होता है, सिस्टम एडमिनस को होता
  7979. 5:18:51है। टीम लीड्स को भी होगा शायद। डेटा टीम
  7980. 5:18:53को होता है। डेटाबेस का एक्सेस काफी लोगों
  7981. 5:18:55को होता है। लेकिन अब उसमें ये लोग
  7982. 5:18:57पासवर्ड देखने लग जाएंगे। तो वह तो गलत
  7983. 5:18:59चीज़ हो गई। ये लोग पासवर्ड अगर आप दिखा
  7984. 5:19:00रहे हो सबको और ऐसे ही स्टोर कर रहे हो
  7985. 5:19:02पासवर्ड को तो यह तो डेवलपर की गलती है
  7986. 5:19:05जिसने यह फंक्शनैलिटी बनाई क्योंकि अब उस
  7987. 5:19:08पासवर्ड का इस्तेमाल करके उन
  7988. 5:19:09क्रेडेंशियल्स का इस्तेमाल करके कोई भी
  7989. 5:19:10एंप्लई यानी कि एंप्लई अगर कंपनी छोड़
  7990. 5:19:13देता है फ्यूचर में और उसके पास वो डेटा
  7991. 5:19:15है यू नो उसने वो डेटा नोट कर लिया था
  7992. 5:19:17कहीं पर तो वो उसका मिसयूज़ भी कर सकता है
  7993. 5:19:19और अगर सर्वर वगैरह कुछ हैक होता है
  7994. 5:19:22डेटाबेस हैक होता है तो प्रॉब्लम क्या
  7995. 5:19:24होगी कि आपका जो
  7996. 5:19:27डेटा है ठीक है उसमें सब कुछ नॉन
  7997. 5:19:30इंक्रिप्टेड फॉर्म में है और कोई भी उसको
  7998. 5:19:31इस्तेमाल कर सकता है। तो हैशिंग, पासवर्ड
  7999. 5:19:34एनकोडिंग ये सारी चीजें क्रिटिकल है। ठीक
  8000. 5:19:36है? और हैश पासवर्ड पासवर्ड की मदद से आप
  8001. 5:19:40ना डायरेक्टली यूजर का पासवर्ड को
  8002. 5:19:42एक्चुअली रिवील नहीं करते हो। ठीक है? तो
  8003. 5:19:44सबसे बढ़िया प्रैक्टिस तो यही है
  8004. 5:19:46सिक्योरिटी स्टैंड पॉइंट से कि पासवर्ड को
  8005. 5:19:48कभी भी इस तरीके से स्टोर नहीं करना है।
  8006. 5:19:50ये हमने किया गलती से। ये गलती नहीं
  8007. 5:19:53कहूंगा। जान के किया क्योंकि हम लर्न कर
  8008. 5:19:56रहे थे और कांसेप्ट्स को एक-एक करके समझ
  8009. 5:19:57रहे मैं नहीं चाहता था कि हैशिंग पासवर्ड
  8010. 5:20:00एनकोडिंग के कांसेप्ट को मैं पहले ही
  8011. 5:20:02इंट्रोड्यूस कर दूं और काफी सारे
  8012. 5:20:04कांसेप्ट्स हो जाते हैं तो
  8013. 5:20:07लोग कंफ्यूज हो जाते हैं। ठीक है? तो अब
  8014. 5:20:09हम क्या करेंगे? अब हम पासवर्ड एनकोडिंग
  8015. 5:20:12को इंप्लीमेंट करेंगे यहां पर। तो मैं
  8016. 5:20:14क्या करने वाला हूं? मैं यहां पर आ जाता
  8017. 5:20:15हूं। ठीक है? बिक्रिप्ट एनकोडर को
  8018. 5:20:17इस्तेमाल करेंगे। यहां पर बिक्र काफी
  8019. 5:20:19कॉमनली यूज़ होने वाला एल्गोरिदम है। ठीक
  8020. 5:20:21है? तो मैं यहां पर लिख देता हूं पब्लिक
  8021. 5:20:24पासवर्ड एनकोडर। तो यहां पर हम पासवर्ड
  8022. 5:20:26एनकोडर का बीन सबसे पहले तो बना लेंगे।
  8023. 5:20:28ठीक है? पासवर्ड एनकोडर का बीन। यह क्यों
  8024. 5:20:30बनाएंगे? ताकि हम इस पासवर्ड एनकोडर के
  8025. 5:20:33बीन को कहीं पर भी हमारी एप्लीकेशन में
  8026. 5:20:35इस्तेमाल कर पाए। क्योंकि ये स्प्रिंग
  8027. 5:20:36मैनेज कंपोनेंट हो जाएगा। करेक्ट? तो यहां
  8028. 5:20:38पर लिखना है पासवर्ड एनकोडर। और आप कोई भी
  8029. 5:20:41एनकोडर इस्तेमाल कर सकते हो। लेकिन यहां
  8030. 5:20:44पर अ हम यूज़ करेंगे न्यू अ सॉरी रिटर्न
  8031. 5:20:48न्यू बिक्रिप्ट पासवर्ड एनकोडर का
  8032. 5:20:52इंस्टेंस रिटर्न करेंगे हम। तो हमारी
  8033. 5:20:53एप्लीकेशन में हम बिक्रिप्ट पासवर्ड
  8034. 5:20:55एनकोडर का इंस्टेंस रिटर्न कर रहे हैं और
  8035. 5:20:58बिक्रिप पासवर्ड एनकोडर एक अह पासवर्ड
  8036. 5:21:00एनकोडर का टाइप है। ठीक है? तो पासवर्ड
  8037. 5:21:02एनकोडर का बीन ए के हिसाब से हम एक्सपोज़
  8038. 5:21:04कर रहे हैं। अब यहां पर आएंगे और पासवर्ड
  8039. 5:21:06जब हम स्टोर कर रहे हैं। देखिए तो हम यहां
  8040. 5:21:08पर नूब का इस्तेमाल कर रहे हैं। मैं इसको
  8041. 5:21:09डुप्लीकेट कर लेता हूं और एक लाइन को
  8042. 5:21:11कमेंट कर देता हूं। और यहां पर मैं
  8043. 5:21:13लिखूंगा पासवर्ड डॉट। ठीक है? यहां पर जो
  8044. 5:21:16भी पासवर्ड है इसको कॉपी कर लेता हूं। ये
  8045. 5:21:18वाले पासवर्ड को कट कर लेता हूं। और ये
  8046. 5:21:19इसे हटा देता हूं। ठीक है? यहां पर लिख
  8047. 5:21:22दूंगा पासवर्ड एनकोडर डॉट एनकोड और यहां
  8048. 5:21:25पर लिख दूंगा पासवर्ड वन ऐसे। ठीक है? सेम
  8049. 5:21:29लॉजिक का इस्तेमाल करेंगे। यहां से
  8050. 5:21:30पासवर्ड को हटा देंगे और फिर लिखेंगे
  8051. 5:21:33पासवर्ड एनकोडर डॉट एनकोड सॉरी और ऐसे लिख
  8052. 5:21:37देंगे। ठीक है? सेम लॉजिक यहां पर भी और
  8053. 5:21:41यहां पर भी ऐसे कट कर लूंगा मैं इसे और
  8054. 5:21:43फिर मैं लिख दूंगा पासवर्ड एनकोडर डॉट
  8055. 5:21:46एनकोड और यहां पर लिख दूंगा ये। ठीक है?
  8056. 5:21:48अब मैं एप्लीकेशन को रन करता हूं। अब
  8057. 5:21:50देखते हैं क्या होता है। ठीक है? रन करके
  8058. 5:21:52देखते हैं। तो एप्लीकेशन रन होने जा रही
  8059. 5:21:55है। हो चुकी। अच्छा नहीं हुई है रन। अब
  8060. 5:22:00कुछ दिक्कत आ गई है। अच्छा डुप्लीकेट
  8061. 5:22:02एंट्री फॉर यूज़र्स डॉट प्राइमरी। तो
  8062. 5:22:05दिक्कत ये हो रही है कि ये जो यूजर है
  8063. 5:22:08यूजर वन ये ऑलरेडी क्रिएटेड है। ठीक है?
  8064. 5:22:11तो मैं क्या करूंगा? यहां पर आ जाता हूं।
  8065. 5:22:14कहां पर आना चाहिए मुझे? एप्लीकेशन डॉट
  8066. 5:22:16प्रॉपर्टीज में। और यहां पर अपडेट की बजाय
  8067. 5:22:18मैं कहूंगा क्रिएट ड्रॉप। यानी कि जब
  8068. 5:22:21एप्लीकेशन स्टॉप हो तो जो डेटाबेस स्कीमा
  8069. 5:22:23है उसे ड्रॉप कर दिया जाए। ऐसा कहूंगा
  8070. 5:22:25मैं। ठीक है? तो ये रन नहीं होगा। ये
  8071. 5:22:28स्टॉप हो गया। अब यहां पर अच्छा स्कीमा को
  8072. 5:22:30ड्रॉप कर दिया है मैंने। तो अच्छा एक मिनट
  8073. 5:22:34स्कीमा को ड्रॉप नहीं करना चाहिए मुझे।
  8074. 5:22:36मुझे यहां पर अपडेट ही रहने देता हूं मैं।
  8075. 5:22:38ठीक है? यहां पर आ जाता हूं। और यह जो
  8076. 5:22:40सारे यूज़र्स हैं इनको सों को मैं डिलीट
  8077. 5:22:42करना चाहूंगा। तो यहां पर राइट क्लिक करके
  8078. 5:22:44ट्रंकेट टेबल कर देता हूं। ट्रंकेट
  8079. 5:22:47अच्छा यह ट्रंकेट नहीं होगा क्योंकि रोल्स
  8080. 5:22:49को पहले ट्रंकेट करना होगा क्योंकि
  8081. 5:22:50प्राइमरी की फॉरेन की का रिलेशनशिप है और
  8082. 5:22:53फिर इनको अच्छा क्या हो रहा है दिक्कत
  8083. 5:22:56दिक्कत क्या हो रही है ये तो ट्रंकेट हो
  8084. 5:22:58चुका है लेकिन यूज़र्स क्यों नहीं हो रहा
  8085. 5:23:00है ट्रंकेट ट्रंकेट अच्छा ये एफ के यूज़र्स
  8086. 5:23:06फॉरेन की लगी हुई है तो इसके लिए ट्रंकेट
  8087. 5:23:09नहीं हो रहा है ऐसा बोल रहा है यह लेकिन
  8088. 5:23:10फॉरेन की तो ठीक है तो यह जो फॉरेन की है
  8089. 5:23:14इसके चलते नहीं हो रहा
  8090. 5:23:17ठीक है? तो ड्रॉप करने में दिक्कत आ रही
  8091. 5:23:18है मुझे। तो मैं क्या कर रहा हूं? यहां पर
  8092. 5:23:20आ जाता हूं। ये दोनों टेबल्स को ही ड्रॉप
  8093. 5:23:22करने की सोच रहा हूं। तो मैं टेबल को ही
  8094. 5:23:24ड्रॉप कर देता हूं। ठीक है? मुझे क्योंकि
  8095. 5:23:27इसमें टाइम वेस्ट नहीं करना है। सो ये
  8096. 5:23:30टेबल को मैंने कर दिया ड्रॉप। ठीक है? और
  8097. 5:23:32अब मैं इन दोनों टेबल्स को ठीक है?
  8098. 5:23:35इंडेक्स को क्रिएट नहीं करता हूं। दोनों
  8099. 5:23:36टेबल्स को क्रिएट कर दूंगा यहां पर। ठीक
  8100. 5:23:37है? तो दोनों टेबल्स क्रिएट हो चुके हैं
  8101. 5:23:39दोबारा। और ये क्लीन क्रिएशन हो गया है।
  8102. 5:23:43ठीक है? यहां पर रिफ्रेश करूंगा। अच्छा
  8103. 5:23:45यूज़र्स तो हो चुकी है। अथॉरिटी क्रिएट
  8104. 5:23:47नहीं हुई। अथॉरिटी को भी क्रिएट कर देते
  8105. 5:23:48हैं। ठीक है? रिफ्रेश किया। तो देखिए
  8106. 5:23:50यूज़र्स और अथॉरिटीज़ दोनों क्रिएट हो चुकी
  8107. 5:23:52है। और दोनों में अभी कोई डेटा नहीं है।
  8108. 5:23:54ठीक है? अब हम एप्लीकेशन को रिस्टार्ट
  8109. 5:23:56करते हैं। ठीक है? अ तो ये मैंने
  8110. 5:23:59एप्लीकेशन को रिस्टार्ट किया है और अब आप
  8111. 5:24:01अगर देखते हो यहां पर। ठीक है? यूज़र्स
  8112. 5:24:05में। तो देखिए ये जो पासवर्ड है ये पूरी
  8113. 5:24:07की पूरी तरह हैड है। ठीक है? ये ह्यूमन
  8114. 5:24:12रीडेबल नहीं है। करेक्ट? आप इसे रीड नहीं
  8115. 5:24:14कर सकते। करेक्ट। लेकिन आपकी जो एप्लीकेशन
  8116. 5:24:17है वह सेम तरीके से काम करेगी। तो यहां पर
  8117. 5:24:20अगर आप आते हो एक्सेस करने की कोशिश करते
  8118. 5:24:22हो एडमिन एंड पॉइंट को तो आपको एरर दिया
  8119. 5:24:24जाएगा। और यूजर एंड पॉइंट को एक्सेस करने
  8120. 5:24:26की कोशिश करते हो यूजर तो देखिए यूजर से
  8121. 5:24:29हम एडमिन को एक्सेस करने की कोशिश की तो
  8122. 5:24:31यहां पर 403 फॉरबिडन और यूजर से हम यूजर
  8123. 5:24:35के एंड पॉइंट को एक्सेस करने की कोशिश की
  8124. 5:24:37तो ये चल गया। ठीक है? तो ये बिल्कुल चल
  8125. 5:24:39रहा है प्रॉपर्ली। लेकिन जो पासवर्ड है वो
  8126. 5:24:43रॉ टेक्स्ट फॉर्म में नहीं स्टोर हो रहा
  8127. 5:24:45है। ऐसे फॉर्म हो रहा है। तो अब इससे क्या
  8128. 5:24:46है? एक लेवल की सिक्योरिटी काफी अब एक
  8129. 5:24:48लेवल नहीं मैं बोलूंगा आपकी सिक्योरिटी
  8130. 5:24:50आपकी काफी बढ़ गई है। ठीक है? और हमने कोड
  8131. 5:24:53ही क्या लिखा है? ठीक है? सब सब हमें
  8132. 5:24:55रेडीमेड मिला था। अ स्प्रिंग सिक्योरिटी
  8133. 5:24:58की मदद से हमने सिर्फ एनकोडर लगाया है।
  8134. 5:25:00कौन सा एनकोडर यूज़ करना है वो बोल दिया
  8135. 5:25:02है। ठीक है? और यहां पर देखिए एनकोडर को
  8136. 5:25:05इस्तेमाल करके हमने पासवर्ड को एनकोड
  8137. 5:25:06किया। बस इतना ही किया हमने। हमने ना तो
  8138. 5:25:10एनकोडिंग का लॉजिक लिखा है। वो सब रेडीमेड
  8139. 5:25:12मिला है हमें। देखिए वो सब लिखने की जरूरत
  8140. 5:25:14नहीं है। आपको सिर्फ बिनेस लॉजिक पर फोकस
  8141. 5:25:16करना है। और ये सब जो रीयूज़ होने वाली
  8142. 5:25:18चीजें हैं जो हर एप्लीकेशन में लगती है।
  8143. 5:25:20ये जो चीज है ना देखिए ये जो चीजें आप
  8144. 5:25:22समझिए ये चीज हर एप्लीकेशन में लगती है।
  8145. 5:25:24जहां पर आप सिक्योरिटी की सिक्योरिटी का
  8146. 5:25:26इस्तेमाल करोगे वहां पर ये चीज लगने वाली
  8147. 5:25:28है। ठीक है? तो ये बनी बनाई है स्प्रिंग
  8148. 5:25:32सिक्योरिटी में और इसीलिए फ्रेमवर्क्स का
  8149. 5:25:33इस्तेमाल करना लोग प्रेफर करते हैं रादर
  8150. 5:25:35दैन रॉ लैंग्वेज। फ्रेमवर्क्स में क्या सब
  8151. 5:25:37कुछ रेडीमेड मिल जाता है। स्टैंडर्ड चीजें
  8152. 5:25:39होती है। आप उसको बस इस्तेमाल करना सही से
  8153. 5:25:41आना है और आपको बिजनेस लॉजिक पर फोकस करना
  8154. 5:25:45है। ठीक है? तो देखिए ये हो चुका है। अ
  8155. 5:25:48हमने पूरा कर दिया है। थैंक यू वेरी मच।
  8156. 5:25:57तो चलिए दोस्तों आगे बढ़ते हैं और समझेंगे
  8157. 5:26:01कि जे डब्ल्यू टी क्या है और जे डब्ल्यू
  8158. 5:26:04टी क्यों इस्तेमाल किया जाता है। ठीक है?
  8159. 5:26:07तो मैं आपको कॉनंसेप्चुअली सब कुछ समझा
  8160. 5:26:08समझा दूंगा यहां पर। ठीक है? तो देखिए
  8161. 5:26:11सबसे पहले तो मैं आपको ये बता दूं JWT
  8162. 5:26:15का मतलब है JSON वेब टोकन। ठीक है? इसका
  8163. 5:26:20मतलब क्या है? एक काफी सिंपल तरीके से
  8164. 5:26:24आपको बता देता हूं और फिर इसकी थोड़ी
  8165. 5:26:25डिटेलिंग करेंगे हम। JWT टोकन इशू किया
  8166. 5:26:29जाता है सर्वर द्वारा। तो अगर आप किसी अ
  8167. 5:26:33एप्लीकेशन के अगेंस्ट खुद को ऑथेंटिकेट कर
  8168. 5:26:35रहे हो और उसमें बैक एंड सर्वर है। ठीक
  8169. 5:26:37है? तो आपने अपनी यूजरनेम क्रेडेंशियल्स
  8170. 5:26:39भेज दी। अब यूजरनेम क्रेडेंशियल्स को
  8171. 5:26:41वैलिडेट करके जो बैक एंड सर्वर है वो आपको
  8172. 5:26:44इशू कर देगा एक टोकन।
  8173. 5:26:47टोकन का मतलब क्या है? यह एक टिकट है। एक
  8174. 5:26:50टिकट की तरह होता है। एक आपके पास एक टोकन
  8175. 5:26:53आ जाएगा और वो स्ट्रिंग होगी। उसको आपको
  8176. 5:26:57हर बार आप जभी भी रिक्वेस्ट भेज रहे हो तो
  8177. 5:26:59आपको यूजरनेम पासवर्ड नहीं भेजना है। वो
  8178. 5:27:00टोकन दिखा रहा है। तो वो टोकन एक हिसाब से
  8179. 5:27:02आपकी टिकट पास बोल सकते हो या आई कार्ड
  8180. 5:27:05बोल सकते हो। उसकी तरह होगा और उसकी एक
  8181. 5:27:06एक्सपायरी होती है। ठीक है? तो टोकन की
  8182. 5:27:09बहुत सारी चीज़ होती है। जैसे कि कब इशू
  8183. 5:27:11हुआ? ठीक है? व्हेन इशूड और फिर एक्सपायरी
  8184. 5:27:14और फिर और कुछ टोकन स्पेसिफिक डाटा है।
  8185. 5:27:16जैसे कि टोकन में क्या-क्या रोल्स है वह
  8186. 5:27:19सारी चीजें टोकन में ऐड हो सकती है। ठीक
  8187. 5:27:22है? तो इसे ये जो टोकन है इसे कहते हैं
  8188. 5:27:24JWD टोकन यानी कि जेसन वेब टोकन। इसकी
  8189. 5:27:29थोड़ी डिटेलिंग करेंगे और समझेंगे कि यह
  8190. 5:27:32इसको समझना क्यों जरूरी है और जो
  8191. 5:27:34ट्रेडिशनल ऑथेंटिकेशन सिस्टम है जो
  8192. 5:27:36स्प्रिंग सिक्योरिटी या कोई भी एप्लीकेशन
  8193. 5:27:38में होता है। आप नोट js पकड़ लीजिए। कोई
  8194. 5:27:40भी एप्लीकेशन में यूजरनेम पासवर्ड को
  8195. 5:27:42वैलिडेट करके हर बार हर रिक्वेस्ट में
  8196. 5:27:44वैलिडेट करना और हर रिक्वेस्ट में यूजरनेम
  8197. 5:27:46पासवर्ड भेजना यह सही क्यों नहीं है? और
  8198. 5:27:49जेडब्ल्यूडी का इस्तेमाल वाइडली इतना
  8199. 5:27:51क्यों होता है? ये क्या प्रॉब्लम सॉल्व
  8200. 5:27:53करता है? ये सारी चीजें समझेंगे। ठीक है?
  8201. 5:27:55तो देखिए ट्रेडिशनल ऑथेंटिकेशन सिस्टम में
  8202. 5:27:58होता क्या है? ठीक है? सबसे पहले तो ये
  8203. 5:27:59क्लाइंट है। ठीक है? सी लिख देता हूं मैं।
  8204. 5:28:02ठीक है? ज्यादा कुछ लिखूंगा नहीं यहां पर
  8205. 5:28:04क्योंकि ज्यादा स्पेस लेगा ये और हमें
  8206. 5:28:07थोड़ा लिखने के लिए थोड़ी स्पेस लगेगी।
  8207. 5:28:10ठीक है? और ये है सर्वर। सर्वर या बोल
  8208. 5:28:12सकते हो यह बैक एंड है। ठीक है? अब जनरली
  8209. 5:28:15होता क्या है? यहां से एक रिक्वेस्ट आएगी।
  8210. 5:28:18ठीक है? एक रिक्वेस्ट जानी है सर्वर के
  8211. 5:28:20पास। तो कैसे जाएगी रिक्वेस्ट? क्लाइंट जो
  8212. 5:28:23है अच्छा यहां पर एरो देखिए नीचे की ओर
  8213. 5:28:25मुड़ गया। पता नहीं क्यों। ठीक है? इसको
  8214. 5:28:27सीधे-सीधे एरो को ले लेते हैं। ठीक है? तो
  8215. 5:28:30ये एक रिक्वेस्ट जा रही है सर्वर के पास
  8216. 5:28:31क्लाइंट से। अब देखिए क्लाइंट कुछ भी हो
  8217. 5:28:33सकता है। क्लाइंट का मतलब क्या है? या तो
  8218. 5:28:34वह ब्राउज़र हो सकता है, वेब एप्लीकेशन हो
  8219. 5:28:37सकता है या तो फिर पोस्टमैन हो सकता है।
  8220. 5:28:39पोस्टमैन से आप रिक्वेस्ट भेज रहे हो बैक
  8221. 5:28:41एंड की ओर या तो फिर आपने कोई मोबाइल ऐप
  8222. 5:28:43बनाई है वो हो सकता है। तो ऐसी या तो कोई
  8223. 5:28:46थर्ड पार्टी एप्लीकेशन हो सकता है। तो
  8224. 5:28:47कहीं से भी एपीआई जो है आपकी हिट हो सकती
  8225. 5:28:50है जहां-जहां आपने शेयर किया हुआ है या
  8226. 5:28:52एपीआई को यूज़ कर रखा है। ठीक है? तो
  8227. 5:28:55रिक्वेस्ट आएगी बैक एंड की ओर। अब
  8228. 5:28:57रिक्वेस्ट ऑथेंटिकेट करने के लिए यूजरनेम
  8229. 5:29:00पासवर्ड भेजना होगा क्लाइंट को। ठीक है?
  8230. 5:29:02यूजरनेम पासवर्ड। तो एक्चुअल प्रोसेस कैसे
  8231. 5:29:04वर्क करता है? मैं आपको वो लिख देता हूं।
  8232. 5:29:06यहां पर देखिए सबसे पहला स्टेप होता है।
  8233. 5:29:09ठीक है? यूजर अ क्लाइंट से आता है। ठीक
  8234. 5:29:12है? क्लाइंट से आता है यूजरनेम
  8235. 5:29:16और पासवर्ड। ठीक है? पासवर्ड क्लाइंट से
  8236. 5:29:19आता है। ठीक है? इसको मैं थोड़ा छोटा भी
  8237. 5:29:22कर देता हूं ताकि थोड़ा लिखने में दिक्कत
  8238. 5:29:23ना हो। क्लाइंट से आता है यूजरनेम,
  8239. 5:29:25पासवर्ड। अब क्या होगा? सर्वर पे यूजरनेम
  8240. 5:29:28पासवर्ड आ जाता है। तो सर्वर क्या करेगा?
  8241. 5:29:30सर्वर क्रिएट्स सेशन। ठीक है? क्योंकि
  8242. 5:29:34देखिए हो सकता है यह जो क्लाइंट है ये
  8243. 5:29:37रिक्वेस्ट को बार-बार एक्सेस करना चाहे या
  8244. 5:29:39सॉरी ये सर्वर का जो डेटा है उसको बार-बार
  8245. 5:29:41एक्सेस करना चाहे। तो सर्वर क्या करता है?
  8246. 5:29:43यूजरनेम पासवर्ड वैलिडेट करता है। ठीक है?
  8247. 5:29:45और फिर अ सर्वर जो है सेशन बनाता है। ठीक
  8248. 5:29:49है? तो वैलिडेशन प्लस सर्वर क्रिएट्स
  8249. 5:29:52सेशन। ठीक है? उसके बाद में एक सेशन आईडी
  8250. 5:29:55दिया जाता है क्लाइंट को। ठीक है? तो
  8251. 5:29:58क्लाइंट या सर्वर
  8252. 5:30:00सेंड्स सेशन आईडी। ठीक है? क्लाइंट के पास
  8253. 5:30:05एक सेशन आईडी आता है। इसका मतलब ये है
  8254. 5:30:07उसका सेशन आईडी। और अब वो जभी भी
  8255. 5:30:11रिक्वेस्ट भेजता है सर्वर को उसे वो सेशन
  8256. 5:30:13आईडी भी साथ में भेजनी है। ठीक है? तो अगर
  8257. 5:30:16आप देखते हो यहां पर यहां पर लिखता हूं
  8258. 5:30:18क्लाइंट सेंड्स सेशन आईडी। जो सब्सीक्वेंट
  8259. 5:30:20रिक्वेस्ट होती है उसके बाद उसमें क्लाइंट
  8260. 5:30:22भेजेगा सेशन आईडी। और फिर सर्वर क्या
  8261. 5:30:24करेगा? सर्वर लुक्स अप सेशन आईडी
  8262. 5:30:29डाटा ऑल टाइम ठीक है या यहां पर लिख देता
  8263. 5:30:32हूं एवरी टाइम ठीक है तो देखिए ये होता है
  8264. 5:30:36ऑथेंटिकेशन का ऑथेंटिकेशन का नॉर्मल
  8265. 5:30:38प्रोसेस क्लाइंट और सर्वर सिनेरियो में
  8266. 5:30:41यहां पर क्लाइंट भेजेगा यूजरनेम पासवर्ड
  8267. 5:30:44सर्वर जो है वैलिडेट करेगा ठीक है और सेशन
  8268. 5:30:47क्रिएट करेगा और फिर सर् सर्वर सेशन आईडी
  8269. 5:30:50भेजेगा क्लाइंट के पास और फिर क्लाइंट
  8270. 5:30:52सेशन आईडी भेजेगा हर रिक्वेस्ट में जितनी
  8271. 5:30:55भी बार वह रिक्वेस्ट भेज रहा है। उसमें
  8272. 5:30:57सेशन आईडी भेजेगा कि अच्छा यह मेरी सेशन
  8273. 5:30:58आईडी है। आप देख लीजिए जरा। तो सर्वर जो
  8274. 5:31:01है सबसे पहले सेशन आईडी को चेक करेगा और
  8275. 5:31:04फिर अ फिर जो रिक्वेस्ट है उसको फुलफिल
  8276. 5:31:07करेगा। तो ये होता है पूरा का पूरा
  8277. 5:31:09प्रोसेस। अब दोस्तों इतनी चीज तो आपको
  8278. 5:31:11क्लियर हो गई। ठीक है? कि ये प्रोसेस
  8279. 5:31:13जनरली कैसे वर्क करता है? ठीक है? तो अब
  8280. 5:31:16इसमें दिक्कत क्या है? ठीक है? इसमें कुछ
  8281. 5:31:18दिक्कतें खामियां होगी तभी तो JWT को लाया
  8282. 5:31:21गया। करेक्ट? JWT अलग तरीके से काम करता
  8283. 5:31:24है। JW स्टेटलेस होता है। ये सारी चीजें
  8284. 5:31:26मैं आपको एक्सप्लेन करता हूं। क्या होता
  8285. 5:31:28है ये सारे कॉन्सेप्ट्स। लेकिन मैं पहले
  8286. 5:31:29तो इसमें प्रॉब्लम बताता हूं कि क्यों JWT
  8287. 5:31:31को इन्वेंट किया गया और क्यों लाया गया?
  8288. 5:31:33देखिए यहां पर सबसे पहली दिक्कत तो ये है
  8289. 5:31:35कि सर्वर में आपको सेशन को ट्रैक करने की
  8290. 5:31:39जरूरत है। ठीक है? सेशन को ट्रैक करने की
  8291. 5:31:42जरूरत है। ठीक है? और अगर तो अगर आपके पास
  8292. 5:31:45एक सर्वर है तो ठीक है? ये तो चल जाएगा।
  8293. 5:31:47लेकिन अगर आपके पास मल्टी सर्वर सेटअप है
  8294. 5:31:51तो उसमें क्या है एक सर्वर देखिए अगर अब
  8295. 5:31:53अगर मेरे पास फ्यूचर में मल्टी सर्वर
  8296. 5:31:54सेटअप आ जाता है तो मान लीजिए मैंने S1 ये
  8297. 5:31:57मेरा सर्वर वन है। ये मेरी सर्वर टू है और
  8298. 5:32:00मैंने और चार सर्वसर्स लगा दिए यहां पर।
  8299. 5:32:02ठीक है? तो दिक्कत क्या होगी? चार
  8300. 5:32:04सर्वसर्स लगा दिए मैंने। तो सपोज़ सर्वर वन
  8301. 5:32:06पे सेशन आईडी क्रिएट हुई है। तो अब सर्वर
  8302. 5:32:09टू को पता नहीं है उस सेशन आईडी के बारे
  8303. 5:32:11में। ठीक है? तो मल्टीपल सर्वर्स में एक
  8304. 5:32:13शेयरर्ड सेशन स्टोर होने की जरूरत है।
  8305. 5:32:16यानी कि एक शेयर्ड स्टोरेज बनाने की जरूरत
  8306. 5:32:17है। जहां पर सिर्फ सेशन आईडी स्टोर हो
  8307. 5:32:19ताकि सभी सर्वर्स उसको एक्सेस कर पाएं।
  8308. 5:32:22ठीक है? ये हो गई दूसरी दिक्कत। और अब ये
  8309. 5:32:24जो मैं सेटअप बता रहा हूं यहां पर मल्टीपल
  8310. 5:32:26सर्विज का बैक एंड में। यह माइक्रो
  8311. 5:32:28सर्विसेस आर्किटेक्चर है और यह काफी कॉमन
  8312. 5:32:30प्रैक्टिस है आजकल। ठीक है? और इतनी सी
  8313. 5:32:32चीज के लिए शेयर स्टोरेज वगैरह सेटअप करो।
  8314. 5:32:35यह काफी दिक्कत वाली बात हो जाती है। और
  8315. 5:32:37यह बेहतर नहीं है एपीआई के लिए। मोबाइल
  8316. 5:32:41एप्लीकेशनेशंस के लिए, क्लाइंट साइड
  8317. 5:32:42एप्लीकेशन के लिए। ठीक है? क्योंकि हर बार
  8318. 5:32:44क्या है? सर्वर को एक और चीज करनी होती है
  8319. 5:32:46कि सेशन आईडी जब आता है, ठीक है? तो उसको
  8320. 5:32:49सेशन आईडी लुकअप भी करना है, ढूंढना भी है
  8321. 5:32:51सेशन आईडी। उसके एंड पे वैलिडेट भी करना
  8322. 5:32:52है और फिर रिक्वेस्ट को आगे जाने देना है।
  8323. 5:32:54तो ये दिक्कत है ये ट्रेडिशनल ऑथेंटिकेशन
  8324. 5:32:56अप्रोच में। ठीक है? और सेशन आईडी अगर
  8325. 5:32:59आपको देखना है एक्चुअल प्रैक्टिस में तो
  8326. 5:33:00सेशन आईडी अगर आप फॉर्म बेस्ड ऑथेंटिकेशन
  8327. 5:33:03का इस्तेमाल करते हो अ स्प्रिंग बूट में
  8328. 5:33:05तो आपको जे सेशन आईडी करके कुछ मिलेगा।
  8329. 5:33:08ठीक है? जे सेशन आईडी। तो ये जो जे सेशन
  8330. 5:33:10आईडी होती है यही सेशन आईडी होती है जो
  8331. 5:33:12फ्रंट एंड पर स्टोर होती है। आप जे सेशन
  8332. 5:33:14आईडी को देख सकते हो। ब्राउज़र में अगर आप
  8333. 5:33:16लॉग इन करते हो तो आप राइट क्लिक करके
  8334. 5:33:18इंस्पेक्ट पे जाइए और वहां पर आप अगर
  8335. 5:33:21कुकीज़ में जाओगे एप्लीकेशन के अंडर कुकीज़
  8336. 5:33:24में तो वहां पर आप जेसेशन आईडी देख सकते
  8337. 5:33:25हो। ठीक है? तो ये है अ प्रॉब्लम बेसिकली
  8338. 5:33:29इस ट्रेडिशनल अप्रोच के साथ। ठीक है? इसको
  8339. 5:33:31मैं थोड़ा छोटा कर देता हूं। अब मैं आपको
  8340. 5:33:33मॉडर्न अप्रोच बताता हूं जो कि है JWT अ
  8341. 5:33:35जिसका आजकल बहुत इस्तेमाल किया जाता है और
  8342. 5:33:38ये कैसे काम करता है उसके बारे में बात
  8343. 5:33:40करेंगे तो सेम सेटअप को मैं ठीक है सेम
  8344. 5:33:43सेटअप को मैं रेप्लिकेट कर देता हूं यहां
  8345. 5:33:45पर ठीक है ये हो गया JWT वाला ठीक है तो
  8346. 5:33:48यहां पर लिख भी देते हैं JW टी ठीक है तो
  8347. 5:33:51अब JWT होता क्या है देखिए JWT जैसे कि
  8348. 5:33:54मैंने बताया एक हिसाब से टोकन है ठीक है
  8349. 5:33:56और यह जो टोकन है टोकन का मतलब क्या है एक
  8350. 5:33:59आपको टिकट की तरह दिया जाएगा उसको आपको हर
  8351. 5:34:02हर बार जब भी आप रिक्वेस्ट भेजते हो वो
  8352. 5:34:04प्रेजेंट करना है। ठीक है? अब टोकन में
  8353. 5:34:06काफी सारी इंफॉर्मेशनेशन ऑलरेडी एंबेडेड
  8354. 5:34:09होती है। जैसे कि ये टोकन कब इशू हुआ? अ
  8355. 5:34:11यूजर कौन है? ये भी स्टोर होता है।
  8356. 5:34:13एक्सपायरी टोकन कब एक्सपायर होने वाला है?
  8357. 5:34:16रोल्स क्या-क्या है इस यूजर के? यानी कि
  8358. 5:34:18ये टोकन है। उसकी रोल्स क्या-क्या है? ठीक
  8359. 5:34:21है? तो ये सारी चीजें टोकन में ही होती है
  8360. 5:34:23और ये डिजिटली साइन होता है और इसको कोई
  8361. 5:34:25भी मॉडिफाई या टेंपर नहीं कर सकता है।
  8362. 5:34:28काफी सिक्योर चीज़ होती है। ठीक है? तो ये
  8363. 5:34:30होता है टोकन। अब टोकन बेस्ड अप्रोच में
  8364. 5:34:33बेसिकली काम कैसे करती है चीज़ वह उस पर
  8365. 5:34:35बात करते हैं हम लोग। देखिए सबसे पहले
  8366. 5:34:37सबसे पहले तो अह क्लाइंट फिर से सेंड्स
  8367. 5:34:41यूजरनेम प्लस पासवर्ड। ठीक है? इसको फिर
  8368. 5:34:45से छोटा कर देता हूं क्योंकि यह बाहर जा
  8369. 5:34:47रहा है। ठीक है? तो क्लाइंट भेजता है
  8370. 5:34:48क्या? यूजरनेम भेजता है और फिर पासवर्ड भी
  8371. 5:34:50भेजता है। ठीक है? यह हो गया। अब सर्वर
  8372. 5:34:55वेरीफाई
  8373. 5:34:56एंड इशूज़ टोकन। ठीक है? सर्वर जो है वह
  8374. 5:35:01डाटा जो है उसको मिला है जो यूजरनेम
  8375. 5:35:04पासवर्ड है उसको वेरीफाई करता है वैलिडेट
  8376. 5:35:06करता है और अगर सही है तो उस यूजर का जो
  8377. 5:35:10इंफॉर्मेशनेशन डाल के उस यूजर की इनेशन जो
  8378. 5:35:12भी है लाइक इशू कब हुआ है एक्सपायर कब
  8379. 5:35:14होना है टोकन रोल्स क्या है उस यूजर के
  8380. 5:35:16यूजर कौन है सारी चीजें जैसा आपने
  8381. 5:35:18प्रोग्राम कर रखा है वो टोकन में ऐड करके
  8382. 5:35:21वो टोकन को इशू कर देगा क्लाइंट एंड पे अब
  8383. 5:35:24क्लाइंट क्या करेगा क्लाइंट मतलब क्लाइंट
  8384. 5:35:25कुछ भी हो सकता है मोबाइल ऐप हो सकता है
  8385. 5:35:27वेब एप्लीकेशन पोस्टमैन हो सकता है
  8386. 5:35:28क्लाइंट उस टोकन को स्टोर्स टोकन। ठीक है?
  8387. 5:35:33क्लाइंट जो है वो उस JW टोकन को स्टोर कर
  8388. 5:35:37देगा अपने एंड पे। ठीक है? JW टोकन को
  8389. 5:35:39उसने स्टोर कर दिया। अब स्टोर कहीं पर भी
  8390. 5:35:41कर कहीं पर भी कर सकता है। जैसे कि मोबाइल
  8391. 5:35:43स्टोरेज अ में कर सकता है। अगर मोबाइल
  8392. 5:35:46एप्लीकेशन है तो या तो अगर ब्राउज़र है तो
  8393. 5:35:48कुकीज़ वगैरह में कर सकता है। ठीक है?
  8394. 5:35:50ब्राउज़र बेस स्टोरेज में। यह हो गई बात।
  8395. 5:35:52अब हर रिक्वेस्ट के साथ उसको टोकन भेजना
  8396. 5:35:55है। ठीक है? तो क्लाइंट
  8397. 5:35:59सेंड्स टोकन विथ एव्री रिक्वेस्ट। ठीक है?
  8398. 5:36:03क्लाइंट को हर रिक्वेस्ट के साथ ये टोकन
  8399. 5:36:05प्रेजेंट करना है। ये एक हिसाब से उसका आई
  8400. 5:36:08कार्ड हो गया। उसकी टिकट बन गई। जितनी भी
  8401. 5:36:10बार वो रिक्वेस्ट भेज रहा है वो टोकन
  8402. 5:36:12भेजेगा उसके साथ। और सर्वर क्या करेगा?
  8403. 5:36:15सर्वर वेरीफाई
  8404. 5:36:17जेड। हर बार जेडब्ल्यूडी को वेरीफाई
  8405. 5:36:20करेगा। ठीक है? और अगर वैलिड है
  8406. 5:36:22जेडब्ल्यूटी सिग्नेचर वैलिड है। सिग्नेचर
  8407. 5:36:24वैलिड है इसका मतलब क्या है? देखिए ये हैश
  8408. 5:36:26होती है। एनकोडेड होती है। तो अगर
  8409. 5:36:28सिग्नेचर वैलिड है तो इसका मतलब
  8410. 5:36:30जेडब्ल्यूटी टैग को टपर नहीं किया गया है।
  8411. 5:36:32अगर टपर किया जाता है तो सिग्नेचर
  8412. 5:36:34वेरिफिकेशन फेल हो जाता है। ठीक है?
  8413. 5:36:36सिग्नेचर वैलिड है, टोकन एक्सपायर है या
  8414. 5:36:40और और रूल्स चेक कर लेता है। ठीक है? तो
  8415. 5:36:42सिग्नेचर टोकन की एक्सपायरी होती है। जैसे
  8416. 5:36:44कि अ 90 मिनट की एक्सपायरी। अब 90 मिनट
  8417. 5:36:47में जितनी भी रिक्वेस्ट आनी है वो आएगी।
  8418. 5:36:4890 मिनट के बाद वह रीऑथेंटिकेशन करेगा।
  8419. 5:36:51ठीक है? तो ऐसे एक्सपायरी होगी तो वह
  8420. 5:36:53क्या-क्या चेक करेगा? सबसे पहले तो टोकन
  8421. 5:36:55वैलिड है या नहीं? टोकन वैलिड है इसका
  8422. 5:36:56मतलब यह टपर हुआ है या नहीं। दूसरी चीज़ ये
  8423. 5:37:00चेक करेगा एक्सपायर्ड हुआ है या नहीं।
  8424. 5:37:02तीसरी चीज़ चेक करेगा रोल्स वैलिड है या
  8425. 5:37:03नहीं। क्योंकि जो भी एंड पॉइंट आप एक्सेस
  8426. 5:37:05करना चाह रहे हो JW टोकन के साथ, तो आपके
  8427. 5:37:08आपको ऑथराइज़ेशन होना चाहिए उस अह उस उस
  8428. 5:37:10एंड पॉइंट को एक्सेस करने का। ठीक है? तो,
  8429. 5:37:13ये बेसिकली वैलिडेट होता है। अब इसमें
  8430. 5:37:16बेनिफिट क्या है? मैं आपको बताता हूं। अगर
  8431. 5:37:18आप कल को माइक्रो सर्विसेस आर्किटेक्चर पे
  8432. 5:37:20स्टोर माइक्रो सर्विज आर्किटेक्चर पे
  8433. 5:37:22माइग्रेट हो रहे हो। ठीक है? तो आपके पास
  8434. 5:37:24मल्टीपल सर्वर्स हो गए। ठीक है? मल्टीपल
  8435. 5:37:27सर्वर्स हो गए। अब यहां पर देखिए सर्वर
  8436. 5:37:29साइड पे कोई सेशन मेंटेन नहीं है। यहां पर
  8437. 5:37:32पिछले एग्जांपल में क्या हो रहा था? सर्वर
  8438. 5:37:35साइड पे सेशन मेंटेन हो रहे थे। दिक्कत यह
  8439. 5:37:37हो रही थी। ठीक है? यहां पर सर्वर साइट पर
  8440. 5:37:40कोई सेशन मेंटेन नहीं है। सर्वर सिर्फ
  8441. 5:37:42जेडब्ल्यू टोकन इशू कर देता है और जब भी
  8442. 5:37:44रिक्वेस्ट आती है वो टोकन यूज़ हो ना हो
  8443. 5:37:47उससे कोई मतलब नहीं है सर्वर को। जब भी
  8444. 5:37:48रिक्वेस्ट आती है तो उसको एक इंडिपेंडेंट
  8445. 5:37:51रिक्वेस्ट की तरफ वेरीफाई करता है। उसमें
  8446. 5:37:53जेडब्ल्यूटी को वैलिडेट करता है और फिर
  8447. 5:37:55चीजों को आगे लेके जाता है। ये हर बार
  8448. 5:37:56होता है प्रोसेस। ठीक है? तो क्योंकि यहां
  8449. 5:38:00पर सेशन मेंटेन नहीं है। कोई भी सेशन
  8450. 5:38:03मेंटेन नहीं है। तो इसीलिए इसे कहा जाता
  8451. 5:38:06है स्टेटलेस।
  8452. 5:38:07स्टेटलेस का मतलब क्या है? यहां पर कोई भी
  8453. 5:38:10सेशन में नहीं है। क्या सर्वर और क्लाइंट
  8454. 5:38:13के बीच में कोई सेशन में है? जी नहीं।
  8455. 5:38:15टोकन इशू कर दिया। ये एक हिसाब से आप ऐसा
  8456. 5:38:17समझ लीजिए सर्वर टिकट का जो बंच है एक
  8457. 5:38:20टिकट का बंडल लेके बैठा हुआ है। जो भी आ
  8458. 5:38:22रहा है उसे वो टिकट इशू करते जा रहा है।
  8459. 5:38:24रोल लिख रहा है उस पर यूजर को किस कौन
  8460. 5:38:27टिकट ले रहा है वो लिख रहा है। और ये
  8461. 5:38:28एक्सपायर कब होना है टिकट? ये लिख के
  8462. 5:38:30मैनुअली पेन से देता जा रहा है। अच्छा
  8463. 5:38:32आपको भी चाहिए टिकट ये देता जा रहा है। ये
  8464. 5:38:34देता जा रहा है। ठीक है? सबको टिकट मिलता
  8465. 5:38:36जा रहा है। अब उसके पास ये ट्रैक नहीं है
  8466. 5:38:38कि मैंने कितनों को क्या टिकट दिया है।
  8467. 5:38:40हेड ट्रैक नहीं है। वो सिर्फ टिकट बांटता
  8468. 5:38:42जा रहा है सबको। ठीक है? ऑथेंटिकेटेड यूजर
  8469. 5:38:45है बांटो टिकट। ऑथेंटिकेटेड यूजर है बांटो
  8470. 5:38:47टिकट। अब जब कोई भी यूजर टिकट लेके आता है
  8471. 5:38:51तो वो चेक करता है। अच्छा आपका टिकट
  8472. 5:38:52दिखाओ। टिकट देखेगा। अच्छा इसका रोल यह
  8473. 5:38:55है। इसका नाम यह है। इसकी एक्सपायरी टोकन
  8474. 5:38:58ये जो टिकट है उसकी टिकट की एक्सपायरी ये
  8475. 5:39:00होनी है। और जो भी सारी इनेशन होगी उसमें
  8476. 5:39:02वो चेक करेगा और फिर आगे जाने देगा। अगर
  8477. 5:39:04इनवैलिड है तो रिजेक्ट कर देगा। बस।
  8478. 5:39:07अब इसकी बेनिफिट क्या है? अगर एक टिकट
  8479. 5:39:10वाला है। एक टिकट वाला मतलब सर्वर। ठीक
  8480. 5:39:12है? एक टिकट वाला है। मैं 10 टिकट वालों
  8481. 5:39:14को बिठा दूं। ठीक है? मुझे सिर्फ यह बोलना
  8482. 5:39:16है उनको कि देखो कोई भी आदमी आए, कोई भी
  8483. 5:39:19इंसान आए, आपको टिकट दिखा। आपको सिर्फ
  8484. 5:39:21टिकट वैलिडेट करना है। देखना है ये ये चीज़
  8485. 5:39:23और आगे जाने देना है। बस। तो इससे क्या
  8486. 5:39:25है? मैं स्केल कर सकता हूं। मैं और टिकट
  8487. 5:39:27चेकर्स को बिठा सकता हूं। ठीक है? क्योंकि
  8488. 5:39:29प्रोसेस कॉम्प्लेक्स नहीं है। मैं कोई
  8489. 5:39:31सेशन मेंटेन नहीं कर रहा हूं। सर्वर उसी
  8490. 5:39:34तो मैंने टिकट वाले का एग्जांपल दिया ताकि
  8491. 5:39:36आपको समझ में आए। लेकिन सर्वर की अगर मैं
  8492. 5:39:38बात करूं सर्वर भी कोई सेशन मेंटेन नहीं
  8493. 5:39:40कर रहा है। करेक्ट? सर्वर सिर्फ इशू किए
  8494. 5:39:42जा रहा है। ठीक है? और क्लाइंट के एंड पे
  8495. 5:39:44जेडब्ल्यूटी स्टर्ड है। अब JW सेंड होगा
  8496. 5:39:47तो वो वेरीफाई करेगा JडW रोल्स देखेगा।
  8497. 5:39:49JडW एक्सपायर है या नहीं ये सारी चीजें
  8498. 5:39:51देखेगा और फिर आगे रिक्वेस्ट को जाने
  8499. 5:39:53देगा। अगर जेडब्ल्यूटी इनवैलिड होता है या
  8500. 5:39:55सिग्नेचर टपरिंग हुई होती हुई होती है।
  8501. 5:39:56इसका मतलब जेडब्ल्यूटी को टपर किया गया है
  8502. 5:39:58और फिर क्लाइंट को बोला जाता है रिक्वेस्ट
  8503. 5:40:00रिजेक्ट की जाती है और फिर क्लाइंट को
  8504. 5:40:02रीऑथेंटिकेट करना होता है। ठीक है? और
  8505. 5:40:05क्योंकि सर्वर सेशंस या सेशन रिलेटेड
  8506. 5:40:08इनेशन सर्वर एंड पे मेंटेन नहीं हो रही
  8507. 5:40:10है। इसीलिए उसे कहा जाता है स्टेटलेस। तो
  8508. 5:40:13जेडब्ल्यूटी का सबसे बड़ा बेनिफिट यह है
  8509. 5:40:15जो मैंने यहां पर लिखा नहीं क्योंकि मैंने
  8510. 5:40:17वो कासेप्ट आपको समझाया नहीं था। स्टेटलेस
  8511. 5:40:19होते हैं। जेडब्ल्यूटी स्टेटलेस ये सबसे
  8512. 5:40:22बड़ा एडवांटेज है और हर डेफिनेशन में आप
  8513. 5:40:25कहीं पर भी डेफिनेशन देख लीजिए
  8514. 5:40:27जेडब्ल्यूडी का स्टेटलेस कहा जाता है।
  8515. 5:40:29इसका मतलब ये है कि सर्वर बेस्ड सेशन नहीं
  8516. 5:40:32क्रिएट होता है उसका। ठीक है? ये थोड़ा
  8517. 5:40:34समझने में अ थोड़ा मैंने लेट बताया
  8518. 5:40:37स्टेटलेस और इसकी वजह है पहले ही स्टेटलेस
  8519. 5:40:39बता देता तो आप आप लोगों को ऐसा होता जो
  8520. 5:40:41बिगिनर्स हैं उनको ऐसा लगता अरे भाई क्या
  8521. 5:40:42बोल रहा है? स्टेटलेस मतलब क्या होता है?
  8522. 5:40:44तो ये सब समझने के बाद आपको ईजीली समझ में
  8523. 5:40:47आता है कि स्टेटलेस होता क्या है। ठीक है?
  8524. 5:40:49अब क्योंकि ये स्टेटलेस है। मैं 10 सर्वर
  8525. 5:40:51लगा सकता हूं। यहां पर 20 सर्वर लगा सकता
  8526. 5:40:52हूं। मैं कैसे भी स्केल कर सकता हूं
  8527. 5:40:54क्योंकि मैं टिकट इशू किए जा रहा हूं। ठीक
  8528. 5:40:56है? अगर ट्रैफिक बढ़ता है, मैंने सर्वसर्स
  8529. 5:40:58बढ़ा दिए और ये परफेक्ट है। ईपीआई,
  8530. 5:41:00माइक्रो सर्विसेस ये सारे जो आर्किटेक्चर
  8531. 5:41:02में आजकल काम होते हैं। उसमें काफी बढ़िया
  8532. 5:41:05है। ठीक है? आप ईजीली अ स्केल कर सकते हो।
  8533. 5:41:09और यहां पे ना ये जेडब्ल्यूडी को वेरीफाई
  8534. 5:41:11करने के लिए देखिए जेडब्ल्यूडी इशू करने
  8535. 5:41:14के लिए आपको वैलिडेट करना रहता है और
  8536. 5:41:16डेटाबेस के लिए एक हिट होती है। तो अगर
  8537. 5:41:18यहां पर डेटाबेस है मेरा ठीक है डीबी ये
  8538. 5:41:21मेरा डीबी है। ठीक है? तो यहां पर जो पहले
  8539. 5:41:24स्टेप है ये जो सेकंड स्टेप है सर्वर
  8540. 5:41:27वेरीफाई द यूजरनेम पासवर्ड। तो यूजरनेम
  8541. 5:41:30पासवर्ड को वैलिडेट करने के लिए एक
  8542. 5:41:31डेटाबेस के लिए हिट होगा। एक हिट होगा
  8543. 5:41:34डेटाबेस के लिए। यानी कि रिक्वेस्ट सर्वर
  8544. 5:41:35से डेटाबेस तक जाएगी। ठीक है? और एक बार
  8545. 5:41:39टोकन इशू हो जाता है। उसके बाद टोकन को
  8546. 5:41:42वैलिडेट करने के लिए डेटाबेस की जरूरत
  8547. 5:41:43नहीं है। आप समझ रहे हो यहां पर? देखिए ये
  8548. 5:41:46बेटर क्यों है? यह समझना जरूरी है।
  8549. 5:41:49यूजरनेम पासवर्ड को वैलिडेट करने के लिए
  8550. 5:41:51ऑफ कोर्स आपको डेटाबेस के पास जाना होगा।
  8551. 5:41:52तो आप डेटाबेस के पास कितनी बार गए? एक
  8552. 5:41:54बार। आपने टोकन इशू कर दिया। ठीक है? मान
  8553. 5:41:58लीजिए आपने 10 टोकन इशू कर दिया। ठीक है?
  8554. 5:42:0010 टोकन इशू कर दिए। तो 10 टोकन इशू करने
  8555. 5:42:04के बाद 10 टोकन इशू करने के लिए आपको 10
  8556. 5:42:06बार डेटाबेस के पास जाना पड़ेगा। ठीक है?
  8557. 5:42:09अब अगर उन 10 टोकन से यानी कि 10 क्लाइंट
  8558. 5:42:12से 20 रिक्वेस्ट आती है तो उन रिक्वेस्ट
  8559. 5:42:14को सर्व करने के लिए आपको डेटाबेस के पास
  8560. 5:42:16जाने की जरूरत नहीं है। क्योंकि उन 20
  8561. 5:42:18रिक्वेस्ट में आपको क्या करना होगा? सिर्फ
  8562. 5:42:20जेडब्ल्यूडी वैलिडेट करना होगा।
  8563. 5:42:21जेडब्ल्यूडी वैलिडेशन के लिए आपको डेटाबेस
  8564. 5:42:24की ओर जाने की जरूरत नहीं है। जेडब्ल्यूडी
  8565. 5:42:26वैलिडेशन यहीं हो जाएगा। कोड में ही हो
  8566. 5:42:29जाता है वो। उस उसके लिए आपको डेबेस हिट
  8567. 5:42:31करने की ज़रूरत नहीं है। तो, यह सर्वर लेवल
  8568. 5:42:33पर ही कोड रन होके वह जेडब्ल्यूडी वैलिडेट
  8569. 5:42:36हो जाता है। एक्सपायरी वैलिडेट हो जाती
  8570. 5:42:37है। रोल्स निकल निकल आते हैं। उसमें से सब
  8571. 5:42:40कुछ हो जाता है। और रोल के बिहाफ पे
  8572. 5:42:42रिक्वेस्ट को आगे जाने दिया जाता है या
  8573. 5:42:44रिजेक्ट कर दिया जाता है जो भी है। ठीक
  8574. 5:42:46है? तो उस हिसाब से देखिए डेटाबेस के जो
  8575. 5:42:49कॉल्स है वो रिड्यूस हो जाते हैं। लेकिन
  8576. 5:42:50यहां पर क्या है? हर सेशन चेक करने के लिए
  8577. 5:42:52पहले तो यूजरनेम पासवर्ड को वेरीफाई करो।
  8578. 5:42:55यूजरनेम पासवर्ड आपने वेरीफाई किया उसके
  8579. 5:42:57लिए एक डेटाबेस में हिट होगा। ठीक है?
  8580. 5:42:58आपने 10 टोकन इशू किए उसके लिए 10 हिट
  8581. 5:43:00होगी। ठीक है? उसके बाद में हर सेशन हर
  8582. 5:43:03बार जब रिक्वेस्ट आएगी मान लीजिए 10 टोकन
  8583. 5:43:05जो आपने इशू किए उससे 20 रिक्वेस्ट आती है
  8584. 5:43:07तो आपको उन 20ों रिक्वेस्ट के लिए सेशन
  8585. 5:43:09आईडी ढूंढना पड़ेगा डेटाबेस में और उसके
  8586. 5:43:12लिए उतनी डेटाबेस हिट्स होगी जो कि सही
  8587. 5:43:15नहीं है। ठीक है? बार-बार आप डेटाबेस को
  8588. 5:43:18हिट कर रहे हो। क्या कर रहे हो? ठीक है?
  8589. 5:43:19ये थोड़ा बेटर हो गया। स्टेटलेस हो गया।
  8590. 5:43:21कोड लेवल पर ही चीजें निपट गई। डेटाबेस
  8591. 5:43:24कॉल्स काफी रिड्यूस हो गए और चीजें आसानी
  8592. 5:43:27से चली। ठीक है? तो ये होता है
  8593. 5:43:29जेडब्ल्यूटी। तो जेडब्ल्यूटी का असल मकसद
  8594. 5:43:32यह है। जेडब्ल्यूटी को इसीलिए इन्वेंट
  8595. 5:43:34किया गया ताकि उसे स्केलिंग के लिए और
  8596. 5:43:38सेशन मैनेजमेंट का जो प्रॉब्लम था,
  8597. 5:43:40स्केलिंग और सेशन मैनेजमेंट का जो
  8598. 5:43:41प्रॉब्लम था यहां पर आप देख सकते हो। ठीक
  8599. 5:43:43है? उसको इंप्रूव करने के लिए जेडब्ल्यूटी
  8600. 5:43:46को लाया गया। और जो ट्रेडिशनल ऑथेंटिकेशन
  8601. 5:43:49मेथड था वो थोड़ा ट्रेडिशनल था। तो एक
  8602. 5:43:52मॉडर्न अप्रोच लाना था। तो इसके लिए
  8603. 5:43:53जेडब्ल्यूटी को इन्वेंट किया गया। जहां पर
  8604. 5:43:54एक टोकन है और टोकन में सारी की सारी
  8605. 5:43:57इनेशन है। ठीक है? टोकन में ही सारी की
  8606. 5:43:59सारी इनेशन है और आपको और कोई
  8607. 5:44:02इंफॉर्मेशनेशन उसके बिय्ड देखनी भी नहीं
  8608. 5:44:03है। ठीक है? अगर आपको Jडw टोकन का एक
  8609. 5:44:05एग्जांपल देखना है। ठीक है? ये प्रोसेस तो
  8610. 5:44:07पूरा समझ में आ गया। करेक्ट? उम्मीद करता
  8611. 5:44:09हूं ये प्रोसेस क्लियर है और कोई इसमें
  8612. 5:44:11दिक्कत नहीं है कि JWT होता क्या है? JWT
  8613. 5:44:14का मतलब यह याद रखिएगा JSON वेब टोकन। ठीक
  8614. 5:44:17है? मैंने ऊपर लिख दिया है और टोकन में आप
  8615. 5:44:20सारी टोकन का बेनिफिट यह है टिकट की तरह
  8616. 5:44:22है उसमें आप सारी इंफॉर्मेशनेशन जो भी
  8617. 5:44:24आपको डालनी है देखिए टोकन कब इशू हुआ
  8618. 5:44:26एक्सपायरी क्या हुई ये तो डालनी ही है
  8619. 5:44:28रोल्स भी डालते हैं जनरली अ जेडब्ल्यूडी
  8620. 5:44:31टोकन इशू करते वक्त और टोकन से आपको पता
  8621. 5:44:34लग जाता है कि यह यूजर कौन है वो यूजर की
  8622. 5:44:36आईडी भी आप एंबेड कर सकते हो यूजर आईडी या
  8623. 5:44:39कुछ और एंबेड आपके एप्लीकेशन स्पेसिफिक
  8624. 5:44:41अगर कोई डेटा है वो आप एंबेड कर सकते हो
  8625. 5:44:43टोकन में सिक्योर होता है ठीक है तो और
  8626. 5:44:46स्टेट लेस है। इतना ध्यान रखिएगा। अब JW
  8627. 5:44:49टोकन दिखता कैसे है वो मैं आपको बताता
  8628. 5:44:50हूं। तो यहां पर आप अगर ब्राउज़र पर आओगे
  8629. 5:44:52तो एक ऑफिशियल वेबसाइट है JWT.O
  8630. 5:44:56क्या है? JWT. इस वेबसाइट पर आ जाइए। आप
  8631. 5:44:58JWT सर्च करोगे तो आपको ये वेबसाइट मिलनी
  8632. 5:45:00ही है। अब यहां पर देखिए JWT डिकोडर करके
  8633. 5:45:03एक टूल है। तो ये डिकोडर टूल क्या करता
  8634. 5:45:06है? आप लेफ्ट साइड पर JWई टोकन डालिए और
  8635. 5:45:10राइट साइड पर उस JW टोकन में क्या-क्या
  8636. 5:45:12इनेशन है? वो आपको दिखा देगा। ठीक है?
  8637. 5:45:15लेफ्ट साइड पर टोकन डालिए। राइट साइड पर
  8638. 5:45:17सारी इनफेशन दिखा देगा। तो देखिए यहां पर
  8639. 5:45:18एक डमी जेडब्ल्यूडी डाली हुई है और यहां
  8640. 5:45:21पर देखिए यह वैलिड JW है और इसका जो
  8641. 5:45:23सिग्नेचर है वो भी वेरीिफाइड है। तो अगर
  8642. 5:45:26मैं ये JW टोकन को मॉडिफाई करने की कोशिश
  8643. 5:45:29करूं या कोई कुछ टाइप कर दूं तो देखिए
  8644. 5:45:31इनवैलिड हो गई सिग्नेचर। ठीक है? तो मैं
  8645. 5:45:33मॉडिफाई नहीं कर सकता इसमें। ये वैलिड JWT
  8646. 5:45:37होना जरूरी है। ठीक है? और देखिए इस तरीके
  8647. 5:45:39से यहां पर ये डिकोडर में इस तरीके से
  8648. 5:45:41दिखता है JW टोकन। इतनी लंबी स्ट्रिंग
  8649. 5:45:43होती है और यहां पर राइट साइड पर आपको
  8650. 5:45:45दिखेगा देखो तो JW टोकन में दो चीज़ होती
  8651. 5:45:48है। एक तो हेडर और दूसरा है पेलोड। ठीक
  8652. 5:45:51है? हेडर में थोड़ी इनफेशन होती है। जैसे
  8653. 5:45:52कि एल्गोरिदम कौन सा है? टाइप क्या है? और
  8654. 5:45:55पेलोड में ये सारी इनेशन डाली गई है इस
  8655. 5:45:57जेडब्ल्यूडी में। जैसे कि अ इसका सब्जेक्ट
  8656. 5:46:00क्या है? देखिए सब्जेक्ट का मतलब हुम द
  8657. 5:46:01टोकन रिफर्स टू। तो ये 1 2 3 4 5 6 7 8 90
  8658. 5:46:040 आप यहां पर यूजर आईडी आपकी एप्लीकेशन
  8659. 5:46:06स्पेसिफिक ऐसा कुछ डाल सकते हो। नाम डाला
  8660. 5:46:09गया है इस टोकन में तो नाम है जॉन डो
  8661. 5:46:11एडमिन है या नहीं ट्रू लिखा गया है और ई
  8662. 5:46:14आई टी ई सॉरी आई एटी नॉट ईआईटी आई एटी
  8663. 5:46:20गलती हो गई आईएटी का मतलब है इशूड एट तो
  8664. 5:46:23ये कब इशू हुआ है इस पर हो करेंगे तो आपको
  8665. 5:46:25डेट भी दिख जाएंगी देखिए जैन 18 2018
  8666. 5:46:28अच्छा काफी पुरानी टोकन है ठीक है तो ये
  8667. 5:46:30इशू कब हुआ है ये इसमें एक्सपायरी भी डाल
  8668. 5:46:32सकते हो काफी सारी चीजें आती है आप डाल
  8669. 5:46:34सकते हो ठीक है और यहां पर जेडब्ल्यूटी का
  8670. 5:46:37सिग्नेचर वेरिफिकेशन सीक्रेट एक सीक्रेट
  8671. 5:46:39के अगेंस्ट ये वेरीफाई होती है जनरली। तो
  8672. 5:46:42ये सीक्रेट है इस JW टोकन का। ठीक है? तो
  8673. 5:46:45इस तरीके से JW टोकन काम करता है और इस
  8674. 5:46:47तरीके से दिखता है JW टोकन और ऐसे इनेशन
  8675. 5:46:50एनकोड होती है JW टोकन में जिसको आप
  8676. 5:46:53डिकोडर की मदद से डिकोड भी कर सकते हो।
  8677. 5:46:55ठीक है? उम्मीद करता हूं ये क्लियर रहा।
  8678. 5:46:58JWT एक इंपॉर्टेंट कॉन्सेप्ट है अगर आप
  8679. 5:47:00बैक एंड डेवलपमेंट करते हो। ये कोई
  8680. 5:47:01स्प्रिंग बूट या जावा रिलेटेड कांसेप्ट
  8681. 5:47:03नहीं है। ये इन जनरल ऑथेंटिकेशन रिलेटेड
  8682. 5:47:06कांसेप्ट है। आप नोट जेएस में काम करो। आप
  8683. 5:47:09कोई भी प्रोग्रामिंग लैंग्वेज कोई भी बैक
  8684. 5:47:11एंड लैंग्वेज में काम करो। कहीं पर भी काम
  8685. 5:47:13करो। GWD टोकन एक यूनिवर्सल कांसेप्ट है।
  8686. 5:47:16ये लैंग्वेज स्पेसिफिक कांसेप्ट नहीं है।
  8687. 5:47:18ऐसा नहीं समझेगा। अच्छा जावा में JWD यूज़
  8688. 5:47:21होता है या Python में यूज़ होता है। ऐसा
  8689. 5:47:22नहीं है। हर जगह JW यूज़ होता है। ये एक इन
  8690. 5:47:25जनरल कांसेप्ट है। ठीक है? उम्मीद करता
  8691. 5:47:28हूं हेल्पफुल और क्लियर रहा।
  8692. 5:47:35तो चलिए दोस्तों एक और कदम आगे बढ़ाएंगे
  8693. 5:47:38और हम क्या करेंगे? हमारा जो जावा
  8694. 5:47:40प्रोजेक्ट है यहां पर मेरे पास ऑलरेडी
  8695. 5:47:41जावा प्रोजेक्ट है। आपके पास कोई भी
  8696. 5:47:43प्रोजेक्ट हो सकता है। जावा प्रोजेक्ट
  8697. 5:47:44मतलब मेरे पास स्प्रिंग बूट प्रोजेक्ट है।
  8698. 5:47:47कोई भी प्रोजेक्ट रख लो और उसमें हम
  8699. 5:47:50कॉन्फ़िगर करेंगे जेडब्ल्यूटी। तो सबसे
  8700. 5:47:51पहले कॉन्फ़िगरेशन में तो बात आती है
  8701. 5:47:53डिपेंडेंसीज की कि हमें क्या-क्या
  8702. 5:47:55डिपेंडेंसीज ऐड करनी है यहां पर। ठीक है?
  8703. 5:47:57तो देखिए डिपेंडेंसीज ऐड करने के लिए मैं
  8704. 5:47:59आऊंगा ब्राउज़र में। अब यहां पर अगर आप
  8705. 5:48:01स्टार्ट डॉट स्प्रिंग अच्छा स्टार्ट डॉट
  8706. 5:48:04स्प्रिंग डॉट आईo पर अगर आओगे तो यहां पर
  8707. 5:48:09आपको जीडब्ल्यूटी रिलेटेड डिपेंडेंसीज़ तो
  8708. 5:48:12मिलेगी नहीं। यहां पर मिलेगी नहीं। ठीक
  8709. 5:48:14है? तो मैं क्या करूंगा? अ इसको हटा
  8710. 5:48:16दूंगा। यहां पर से हम डिपेंडेंसी ऐड नहीं
  8711. 5:48:19करेंगे। हम क्या करेंगे? एक Kh रिपॉज़िटरी
  8712. 5:48:21है। तो Java JWT करके उसको सर्च कीजिए आप।
  8713. 5:48:25ठीक है? अ यही है jवा jw jसin वेब टोकन
  8714. 5:48:30मेवन ठीक है तो ऐसा करके कुछ सर्च कर
  8715. 5:48:33लीजिए और देखिए यहां पर आपको jवा jw
  8716. 5:48:36करके एक रिपॉजिटरी मिलेगी यही है वो
  8717. 5:48:39जेडब्ल्यूटी इस रिपॉजिटरी का नाम है ठीक
  8718. 5:48:41है ये यूजरनेम और इसका रिपॉजिटरी नेम है
  8719. 5:48:44यहां पर आ जाइए ठीक है ये रिपॉजिटरी काफी
  8720. 5:48:47अपडेट होती रहती है देखिए ठीक है और ये
  8721. 5:48:50काफी पॉपुलर भी है तो यहां पर नीचे आइए आप
  8722. 5:48:53ठीक है नीचे आप अगर आओगे तो यहां यहां पर
  8723. 5:48:56कहीं पर आपको जेडी के प्रोजेक्ट्स और मेवन
  8724. 5:48:59देखिए इंस्टॉलेशन इन मेवन और ग्रिडल दोनों
  8725. 5:49:01मिलेगा यहां पर इंडेक्स में टेबल ऑफ
  8726. 5:49:03कंटेंट्स में मैं मेवन को सेलेक्ट कर लेता
  8727. 5:49:05हूं। देखिए यहां पर सारी डिपेंडेंसीज मुझे
  8728. 5:49:06दिख जाएंगी मेवन की। ठीक है? यहां पर नीचे
  8729. 5:49:08स्क्रॉल करोगे आप तो ग्रिडल की
  8730. 5:49:10डिपेंडेंसीज़ मिल जाएगी। आप कोई भी बिल्ड
  8731. 5:49:13टूल यूज़ कर रहे हो। ठीक है? तो मेवन या
  8732. 5:49:16ग्रिडल आप इस्तेमाल कीजिए। Android
  8733. 5:49:17प्रोजेक्ट्स में इस तरीके से ऐड करते हो।
  8734. 5:49:19ये Android में भी यूज़ होता है। प्रोगार्ड
  8735. 5:49:20वगैरह ऐसे यूज़ करते हैं। ठीक है? लेकिन
  8736. 5:49:23ठीक है? यहां पर हम तो स्विंग बोट की बात
  8737. 5:49:25कर रहे हैं तो इसको मैं कॉपी कर लूंगा।
  8738. 5:49:27ठीक है? और यहां पर कुछ कमेंट्स में चीजें
  8739. 5:49:31लिखी हुई है कि अगर आप पुराना वर्जन ऑफ
  8740. 5:49:33जीडी के इस्तेमाल कर रहे हो तो ये ये चीज
  8741. 5:49:36कीजिए। लेकिन हमने तो ये नहीं किया है।
  8742. 5:49:37हमारे लेटेस्ट वर्जनंस हैं। तो मैं यहां
  8743. 5:49:39पर आ जाता हूं। और यहां पर डिपेंडेंसी में
  8744. 5:49:41ये ऐड कर दूंगा मैं। ठीक है? ये मैंने ऐड
  8745. 5:49:44कर दिया है। ठीक है? और फिर यहां पर इसको
  8746. 5:49:47मेवन रीलोड कर दूंगा। तो ये मेवन रीलोड भी
  8747. 5:49:49हो जाएगा। देखिए। तो ये थोड़ा सा टाइम
  8748. 5:49:52लेगा। मेवन रीलोड होने के लिए। लेकिन यह
  8749. 5:49:54जो अह डिपेंडेंसीज़ है, ठीक है? यह जो
  8750. 5:49:57डिपेंडेंसीज़ है, आप देखोगे डिपेंडेंसीज़
  8751. 5:49:59को, तो यह सबसे पहले तो JWT
  8752. 5:50:02एपीआई है। जे JWT एपीआई फिर ये
  8753. 5:50:04जेडब्ल्यूटी इंप्लीमेंटेशन है। और फिर ये
  8754. 5:50:06जैक्सन है। ठीक है? जैक्सन का मतलब है यह
  8755. 5:50:10बेसिकली अ Java क्लासेस टू jसन में
  8756. 5:50:14कन्वर्ज़ और jसन टू जावा क्लासेस में
  8757. 5:50:16कन्वर्ज़ में हेल्प करता है। ठीक है? तो
  8758. 5:50:19इतना आपको ऐड कर देना है। अब आपको क्या
  8759. 5:50:22करना है? आपको अ एक क्लास फाइल बनानी
  8760. 5:50:26होगी। यानी कि क्लास बनानी होगी एक। ठीक
  8761. 5:50:28है? तो मैं यहां पर आ जाता हूं और
  8762. 5:50:29सिक्योरिटी पैकेज में यहां पर मैं एक
  8763. 5:50:32क्लास बनाऊंगा। JWT यूटिल्स। ठीक है? अब
  8764. 5:50:35इस क्लास का यूज़ क्या होगा? देखिए, ये जो
  8765. 5:50:38क्लास है ना, इसमें JW रिलेटेड सारे
  8766. 5:50:40हेल्पर मेथड्स होंगे। हेल्पर मेथड्स का
  8767. 5:50:41मतलब क्या है? जो हमें जेडब्ल्यूटी जो
  8768. 5:50:44फ्रेमवर्क है जेडब्ल्यूटी का जो वे है
  8769. 5:50:47जिसमें हम टोकन को इशू करते हैं टोकन
  8770. 5:50:49वैलिडेट करते हैं टोकन में इंफॉर्मेशनेशन
  8771. 5:50:51लोड करते हैं। ये सारी जो चीजें हैं इसके
  8772. 5:50:54लिए एक हेल्पर क्लास होना जरूरी है जिसमें
  8773. 5:50:56ये सारी चीजें हो रखी है और आप अलग-अलग
  8774. 5:50:58जगह से कोड में उसे सिर्फ कॉल कर रहे हो।
  8775. 5:51:00तो ये जो क्लास है वो यही करेगा। ठीक है?
  8776. 5:51:03तो मैं क्या करूंगा? यहां पर अ इस क्लास
  8777. 5:51:06को अ मार्क करूंगा ऐज़ ए स्प्रिंग मैनेज
  8778. 5:51:09कंपोनेंट। क्योंकि मैं नहीं चाहता मैं इस
  8779. 5:51:10क्लास के इंस्टेंसेस को मैनेज करूं। ठीक
  8780. 5:51:12है? इसको स्प्रिंग ही मैनेज करेगा। और
  8781. 5:51:15मुझे यहां पर दो चीजें चाहिए। जो पहली चीज़
  8782. 5:51:17है प्राइवेट स्ट्रिंग JWT सीक्रेट ऐसे।
  8783. 5:51:21ठीक है? जेडब्ल्यूटी सीक्रेट को हम डिफाइन
  8784. 5:51:23करेंगे यहां पर। सीक्रेट मतलब क्या है? इस
  8785. 5:51:24सीक्रेट के अगेंस्ट आपकी जो की है वो साइन
  8786. 5:51:27होनी है। ठीक है? और वैलिडेशन भी इसके
  8787. 5:51:28अगेंस्ट होना है। तो अगर कोई टपरिंग होती
  8788. 5:51:30है तो हमें पता चल जाएगा। तो ये हो गई
  8789. 5:51:33सीक्रेट। और फिर दूसरी है हमें
  8790. 5:51:35एक्सपायरेशन डिफाइन करनी है इस अह JWई
  8791. 5:51:38टोकन की। एक्सपायरेशन मतलब ये जो JW टोकन
  8792. 5:51:40है वो एक बार इशू होता है तो कितने टाइम
  8793. 5:51:43के लिए ये वैलिड है? तो मैं यहां पर
  8794. 5:51:45लिखूंगा JWT इंट अ सॉरी प्राइवेट इंट JWT
  8795. 5:51:49एक्सपायरेशन
  8796. 5:51:51इन मिलीसेकंड्स। ठीक है? इतना मैंने लिख
  8797. 5:51:53दिया। और यहां पर कुछ वैल्यूज़ मैं ऐड कर
  8798. 5:51:55दूंगा मिली सेकंड्स में। अभी के लिए तो
  8799. 5:51:57ज़ीरो ऐड करता हूं। ठीक है? लेकिन JW
  8800. 5:51:59सीक्रेट क्या होना चाहिए? तो आप यहां पर आ
  8801. 5:52:00जाइए। ठीक है? यहां पर मैं एक बाय डिफ़ॉल्ट
  8802. 5:52:04सीक्रेट है। तो अ स्ट्रिंग एट लीस्ट 256
  8803. 5:52:07बिट लॉन्ग। तो यह मैं ले लेता हूं और यहां
  8804. 5:52:10पर यह सीक्रेट ऐड कर देता हूं सबसे पहले
  8805. 5:52:13और JW एक्सपायरेशन इन मिलीसेकंड्स। तो मैं
  8806. 5:52:16चाहता हूं मेरी जो JW टोकन है वो 48 आवर्स
  8807. 5:52:18के लिए वैलिड हो। तो मैं Google Pay या
  8808. 5:52:20कहीं पर भी आपको ईयर टूल का भी इस्तेमाल
  8809. 5:52:23कर सकते हो। 48 आवर्स इन मिली सेकंड्स।
  8810. 5:52:26क्योंकि आपको जो एक्सपायरेशन टाइम है वो
  8811. 5:52:29आपको मिली सेकंड्स में लिखना है। तो अच्छा
  8812. 5:52:31यह तो कोई डरावना नंबर आ गया भाई। [हंसी]
  8813. 5:52:34ठीक है? तो यहां पर अच्छा
  8814. 5:52:38ठीक है? एक मैंने कन्व्टर इस्तेमाल कर
  8815. 5:52:40लिया है। उप्स सॉरी।
  8816. 5:52:42तो देखिए यहां पर मैंने कन्वर्ट कर लिया
  8817. 5:52:4448 आवर्स को इतने मिलीसे्स में। तो इसको
  8818. 5:52:46क्लोज कर देता हूं। ठीक है? और वो
  8819. 5:52:48मिलीसेकंड्स मैंने कॉपी कर लिए थे और यहां
  8820. 5:52:50पर आके वो मिलीसेकंड्स ऐड कर लेने हैं।
  8821. 5:52:52ठीक है? तो इतना मिलीसे इसका मतलब है 48
  8822. 5:52:56आवर्स में मैं जो टोकन इशू करता हूं इस
  8823. 5:52:58एप्लीकेशन के थ्रू। ठीक है? मेरी बैक एंड
  8824. 5:53:00के थ्रू वो एक्सपायर हो जाएगा। 48 आवर्स
  8825. 5:53:02बहुत लंबा टाइम होता है। जनरली 48 आवर्स
  8826. 5:53:05का नहीं रखते हैं। ठीक है? डिपेंडिंग ऑन द
  8827. 5:53:06एप्लीकेशन इसको शॉर्टर और या थोड़ा थोड़ा
  8828. 5:53:08शॉर्टर ड्यूरेशन का रखा जाता है। लेकिन
  8829. 5:53:11मैं 48 आवर्स रख रहा हूं। काफी लोग 10 दिन
  8830. 5:53:13का भी रखते हैं डेवलपमेंट के टाइम पे ताकि
  8831. 5:53:14बार-बार टोकन इशू करने की दिक्कत ना हो।
  8832. 5:53:17ठीक है? लेकिन डेवलपमेंट में ही लंबा टाइम
  8833. 5:53:18रखिएगा। ठीक है? तो ये मैंने यहां पर
  8834. 5:53:20मेंशन कर दिया है। अब मैं क्या करूंगा?
  8835. 5:53:23देखिए अ एक चीज मैं आपको बताना चाहता हूं।
  8836. 5:53:25अब जब भी टोकन सेंड करते हो। ठीक है? यहां
  8837. 5:53:29पर देखिए ये क्लाइंट सेंड ये तो फोर्थ
  8838. 5:53:32स्टेप है। JडW टोकन तो इशू हो जाता है बैक
  8839. 5:53:34एंड से। लेकिन जब भी क्लाइंट सेंड करता है
  8840. 5:53:37टोकन रिक्वेस्ट टोकन हर रिक्वेस्ट के साथ
  8841. 5:53:40वो एक फॉर्मेट में भेजता है। कौन से
  8842. 5:53:42फॉर्मेट में भेजता है? तो वो भेजता है
  8843. 5:53:44बेरर हेडर में भेजता है बेयर स्पेस और फिर
  8844. 5:53:48यहां पर टोकन लिखता है वो ये फॉर्मेट में
  8845. 5:53:50जाता है और ये जाता है ऑथराइजेशन हेडर
  8846. 5:53:52में। ऑथराइजेशन हेडर। ठीक है? तो
  8847. 5:53:55ऑथराइज़ेशन हेडर में बेरर स्पेस टोकन ये
  8848. 5:54:00फॉर्मेट है। ये इंडस्ट्री स्टैंडर्ड है।
  8849. 5:54:01ठीक है? ये स्टैंडर्ड में इसी स्टैंडर्ड
  8850. 5:54:03में टोकन जो है उसको भेजा जाता है बैक एंड
  8851. 5:54:06पर। ठीक है? तो मैं क्या करूंगा? देखिए ये
  8852. 5:54:10फॉर्मेट बताना जरूरी था क्योंकि हमें यहां
  8853. 5:54:12पर लॉजिक ये भी लिखना पड़ेगा कि आप किस
  8854. 5:54:14तरीके से रिट्रीव कर सकते हो जेW टोकन को
  8855. 5:54:18बैक एंड से सॉरी रिक्वेस्ट से या हेडर से
  8856. 5:54:21रिक्वेस्ट हेडर से। वो कैसे रिट्रीव
  8857. 5:54:23करोगे? आप तभी रिट्रीव कर पाओगे जब आपको
  8858. 5:54:24फॉर्मेट किस फॉर्मेट में आ रहा है वो बैक
  8859. 5:54:26एंड पर ये पता हो। ठीक है? तो मैं क्या
  8860. 5:54:29करूंगा? यहां पर हम कुछ मेथड्स डिफाइन
  8861. 5:54:30करेंगे। तो मैं कहूंगा पब्लिक स्ट्रिंग
  8862. 5:54:33गेट JWT फ्रॉम हेडर। सबसे पहले तो ये वाला
  8863. 5:54:37मेथड डिफाइन करूंगा यहां पर। ठीक है? अ
  8864. 5:54:40यहां पर हम कुछ रिटर्न करेंगे। ठीक है?
  8865. 5:54:42रिटर्न और यहां पर एम्प्टी स्ट्रिंग
  8866. 5:54:45रिटर्न कर देता हूं अभी के लिए। इसको
  8867. 5:54:46डिफाइन करेंगे हम। ठीक है? दूसरा हम मेथड
  8868. 5:54:49जन डिफाइन करेंगे पब्लिक अ स्ट्रिंग
  8869. 5:54:53जनरेट
  8870. 5:54:56टोकन फ्रॉम यूजरनेम। तो जो भी यूजरनेम है
  8871. 5:55:00यूजर का उससे हम टोकन जनरेट करेंगे। ठीक
  8872. 5:55:02है? और यहां पर भी मैं रिटर्न करूंगा
  8873. 5:55:04फिलहाल स्ट्रिंग। इसको इस मेथड को और
  8874. 5:55:06जनरेट करेंगे और डेवलप करेंगे। ठीक है?
  8875. 5:55:09सबसे पहले तो JWT रिट्रीव करने का हमने
  8876. 5:55:11मेथड लिखा है। आप JWT की जो टोकन है
  8877. 5:55:14स्ट्रिंग उसको निकाल कैसे सकते हो हेडर
  8878. 5:55:16से। क्योंकि वैलिडेट और सब काम करने के
  8879. 5:55:18लिए आपको JW टोकन लगेगा। दूसरा हमने मेथड
  8880. 5:55:21डिफाइन किया है कि टोकन जनरेशन का। ठीक
  8881. 5:55:24है? जब भी कोई यूजर ऑथेंटिकेट होता है तो
  8882. 5:55:26टोकन जनरेशन इंपॉर्टेंट है। करेक्ट? टोकन
  8883. 5:55:28जनरेट आप कैसे करोगे? तो वो हमने मेंशन कर
  8884. 5:55:31दिया यहां पर। ठीक है? दूसरा हमें या
  8885. 5:55:34तीसरा मेथड हमें लिखना है अ पब्लिक
  8886. 5:55:38बुलियन और फिर वैलिडेट जेडब्ल्यूटी टोकन।
  8887. 5:55:41एक वैलिडेशन का भी मेथड चाहिए हमें।
  8888. 5:55:43करेक्ट? और यहां पर अभी के लिए मैं रिटर्न
  8889. 5:55:46करूंगा ट्रू। ठीक है? ये सब हार्ड कोडेड
  8890. 5:55:48वैल्यूज़ है। इसको डेवलप करेंगे अब हम। ठीक
  8891. 5:55:50है? तो इतना मैंने मेंशन कर दिया है। इतना
  8892. 5:55:53मेंशन हो चुका है। ये एक एक हिसाब से
  8893. 5:55:55स्ट्रक्चर है आपकी जो फाइल है उसमें।
  8894. 5:55:57देखिए सबसे पहले तो आप यूजरनेम पासवर्ड को
  8895. 5:55:59ऑथेंटिकेट करोगे और टोकन इशू करोगे। ठीक
  8896. 5:56:01है? क्यों इशू करोगे? क्योंकि ये सबसे
  8897. 5:56:03पहला स्टेप है। सर्वर वेरीफाई यूजरनेम
  8898. 5:56:05पासवर्ड और इशूज़ अ टोकन। फिर क्लाइंट
  8899. 5:56:08भेजेगा हर रिक्वेस्ट के साथ टोकन। तो आपको
  8900. 5:56:10वेरीफाई भी करना है JडW। करेक्ट? वो आप
  8901. 5:56:12कैसे करोगे? तो उसके लिए पहले तो हेडर में
  8902. 5:56:14से क्योंकि हेडर में आ रहा है JडW टोकन।
  8903. 5:56:16कैसे पता हेडर में आ रहा है? क्योंकि
  8904. 5:56:18मैंने यहां पर बताया ऑथराइज़ेशन हेडर में
  8905. 5:56:20बेर स्पेस टोकन आएगा। ठीक है? तो उसको
  8906. 5:56:22रिट्रीव करना है और फिर आपको टोकन को जो
  8907. 5:56:26है उसको वैलिडेट करना है इस तरीके से। ठीक
  8908. 5:56:28है? तो ये करना जरूरी है। तो इतना आप कर
  8909. 5:56:31दोगे वैलिडेट करोगे और फिर ट्रू है या
  8910. 5:56:32फॉल्स है। तो पहले रिट्रीव करोगे हेडर से
  8911. 5:56:35और फिर टोकन को वैलिडेट करोगे। ठीक है? तो
  8912. 5:56:38अब एक-एक मेथड को डिफाइन करते हैं यहां
  8913. 5:56:40पर। तो सबसे पहले तो जनरेट टोकन फ्रॉम
  8914. 5:56:43यूजरनेम को यूजरनेम पर काम करेंगे हम। अब
  8915. 5:56:47यहां पर आपको क्या करना है? देखिए यहां पर
  8916. 5:56:48आप टोकन कैसे निकालोगे यूजर टोकन कैसे
  8917. 5:56:52जनरेट करोगे यूजर नेम से? तो हमने जो
  8918. 5:56:53लाइब्रेरी ऐड की है जो ये pmsl में
  8919. 5:56:55डिपेंडेंसीज ऐड कर रखी है उसका हम
  8920. 5:56:57इस्तेमाल करेंगे। तो सबसे पहले तो आपको
  8921. 5:56:59स्प्रिंग सिक्योरिटी का यहां पर यूजर
  8922. 5:57:01डिटेल्स ऑब्जेक्ट चाहिए। ठीक है? यूजर
  8923. 5:57:04डिटेल्स ऑब्जेक्ट। यूजर डिटेल्स ऑब्जेक्ट
  8924. 5:57:06आपको मिल जाएगा अ स्प्रिंग सिक्योरिटी की
  8925. 5:57:09मदद से कि ठीक है? क्योंकि सारी जो इनेशन
  8926. 5:57:12ये यूजर डिटेल्स ऑब्जेक्ट हेल्प करता है
  8927. 5:57:14आपको यूजर इनेशन रिट्रीव करने में। ठीक
  8928. 5:57:17है? तो यूजर डिटेल्स ऑब्जेक्ट आपको मिल
  8929. 5:57:18जाएगा स्प्रिंग सिक्योरिटी से देखिए आप
  8930. 5:57:20ओवर करोगे इस पर तो प्रोवाइड्स कोर यूजर
  8931. 5:57:22इनेशन। ठीक है? अगर कोई यूजर ऑथेंटिकेटेड
  8932. 5:57:25है तो आप यूजर डिटेल्स आपको मिल जाएगा। तो
  8933. 5:57:27मैं डायरेक्टली यूजर डिटेल्स का यहां पर
  8934. 5:57:29इस्तेमाल कर रहा हूं। ठीक है? आगे चलकर हम
  8935. 5:57:31ये भी समझेंगे कि यूजर डिटेल्स कैसे आएंगी
  8936. 5:57:33यहां पर। अगर आपको यूजर डिटेल्स थोड़ा
  8937. 5:57:34कॉम्प्लेक्स लग रहा है तो आप क्या कर सकते
  8938. 5:57:35हो यहां पर? मैं सीधा यूजर नेम ही लिखता
  8939. 5:57:38हूं। यहां पर सीधा यूजरनेम हम पास करेंगे
  8940. 5:57:39अभी के लिए। ठीक है? यूजर डिटेल्स से
  8941. 5:57:41यूजरनेम कैसे निकालनी है? ये हम दूसरी जगह
  8942. 5:57:43पर कोड लिख सकते हैं। ठीक है? तो मान
  8943. 5:57:45लीजिए यहां पर यूजरनेम आ गया हमारे पास।
  8944. 5:57:48ठीक है? अब यूजरनेम आ गया एक बार तो मैं
  8945. 5:57:51क्या करूंगा? यहां पर रिटर्न करूंगा।
  8946. 5:57:52रिटर्न अच्छा सॉरी रिटर्न ऑलरेडी लिखा हुआ
  8947. 5:57:54है मैंने। तो इस रिटर्न स्टेटमेंट को मैं
  8948. 5:57:56मॉडिफाई करूंगा यहां पर। यहां पर इस्तेमाल
  8949. 5:57:58करूंगा JWTS। तो देखिए JWTS की जो अह
  8950. 5:58:02क्लास है ये कहां से मिल रही है? JSN वेब
  8951. 5:58:04टोकन से। और ये डिपेंडेंसी हमने ऐड कर रखी
  8952. 5:58:07है। यहां पे जेWTS में मैं डॉट बिल्डर का
  8953. 5:58:10इस्तेमाल करूंगा। ठीक है? डॉट बिल्डर डॉट
  8954. 5:58:13कॉम्पैक्ट। अब यहां पर ये जो टोकन जनरेट
  8955. 5:58:17होगा यहां पर मुझे कुछ इंफॉर्मेशनेशन ऐड
  8956. 5:58:19करनी है। जैसे कि सबसे पहले तो सब्जेक्ट
  8957. 5:58:21देखिए टोकन में एक सब्जेक्ट होता है। तो
  8958. 5:58:23आप सब्जेक्ट ऐड कर सकते हो। यूजर नेम
  8959. 5:58:25सब्जेक्ट कहां होता है? कहां दिखेगा आपको
  8960. 5:58:26सब्जेक्ट? तो देखिए यहां पर सब्जेक्ट होता
  8961. 5:58:29है। यह सब्जेक्ट आप ऐड कर सकते हो। यह
  8962. 5:58:30सब्जेक्ट। ठीक है? सब्जेक्ट का मतलब है
  8963. 5:58:33हुूम द टोकन रेफर्स टू। तो हमने ऐड कर
  8964. 5:58:35दिया यूजरनेम। उससे समझ जाएगा कि यह टोकन
  8965. 5:58:37किसके लिए जनरेट हुआ था। तो जो भी यूजरनेम
  8966. 5:58:40है ऑथेंटिकेटेड यूजरनेम उसके लिए टोकन
  8967. 5:58:42जनरेट हुआ है। ठीक है? इशूड एट
  8968. 5:58:46देखिए इशूड एट यहां पर मैं लिख दूंगा करंट
  8969. 5:58:50डेट अ सॉरी करंट डेट। ठीक है? ये मैंने
  8970. 5:58:54लिख दिया। अब इसकी एक्सपायरेशन डिफाइन
  8971. 5:58:56करेंगे। एक्सपायरेशन क्या है? तो हमने
  8972. 5:58:58एक्सपायरेशन को ऑलरेडी मेंशन किया हुआ है
  8973. 5:59:01ऊपर मिलीसेकंड्स में। ठीक है? तो मैं क्या
  8974. 5:59:03करूंगा? करंट डेट जो है उसको लूंगा मैं।
  8975. 5:59:06एक्सपायरेशन हमें देखिए 48 आवर्स की
  8976. 5:59:09एक्सपायरेशन होनी चाहिए। यहां पर हमने
  8977. 5:59:11मेंशन किया है इतना। ये 48 आवर्स की
  8978. 5:59:13एक्सपायरेशन है। करेक्ट? तो मैं क्या
  8979. 5:59:15करूंगा? करंट डेट एंड टाइम लूंगा। उसको
  8980. 5:59:17मिलीसेकंड्स में लूंगा और फिर उसमें ये
  8981. 5:59:20वाला एक्सपायरेशन ऐड करूंगा। ठीक है?
  8982. 5:59:23क्योंकि देखिए यह जो एक्सपायरेशन जो है ना
  8983. 5:59:25यहां पर आप आओगे ना यह एक्सपायरेशन इसको
  8984. 5:59:27डाउनलोड करता हूं मैं सोर्सेस को। ठीक है?
  8985. 5:59:30यह एक्सपायरेशन क्या लेता है? यह डेट लेता
  8986. 5:59:32है। क्या लेता है? डेट लेता है। तो आपको
  8987. 5:59:36आप यह नहीं बोल सकते हो कि यह मिली
  8988. 5:59:37सेकंड्स में यह लो मेरा एक्सपायरेशन। ऐसा
  8989. 5:59:39नहीं बोल सकते हो। आपको एक्चुअल डेट देना
  8990. 5:59:40है और टाइम देना है कि कब एक्सपायर होगा।
  8991. 5:59:43तो वो आपको कैलकुलेट करके देना है। आप समझ
  8992. 5:59:45रहे हो मेरी बात? आप यहां पर हमने क्या
  8993. 5:59:47लिखा है? हमने लिखा है 48 आवर्स का मिलीसे
  8994. 5:59:52वर्जन। हमारी जो एक्सपायरेशन टाइम है वह
  8995. 5:59:5648 आवर्स की है। वह हमने लिखा है। लेकिन
  8996. 5:59:58अगर टोकन समझ लीजिए 1 दिसंबर दोपहर को
  8997. 6:00:0212:00 बजे जनरेट होता है या 1 जनवरी दोपहर
  8998. 6:00:05को 12:00 बजे जनरेट होता है। तो ये 48
  8999. 6:00:07आवर्स बाद एक्सपायर होगा। तो 48 आवर्स
  9000. 6:00:09क्या होगा? ठीक है? 3 जनवरी अ लगभग 1159
  9001. 6:00:14को एक्सपायर हो जाना चाहिए। तो आपको 3
  9002. 6:00:16जनवरी 1159 पास करना है। ये मिलीसे वैल्यू
  9003. 6:00:19नहीं। ये मिलीसे वैल्यू कैलकुलेशन में यूज़
  9004. 6:00:21होगा। मैं आपको बताता हूं। तो यहां पर
  9005. 6:00:22देखिए डेट पास करनी है आपको। मैंने आपको
  9006. 6:00:24दिखाया अंदर जाके यहां पर डेट पास करनी है
  9007. 6:00:26आपको। करेक्ट? एक्सपायरेशन डेट एंड टाइम।
  9008. 6:00:29तो यहां पर मैं क्या करूंगा? देखिए यहां
  9009. 6:00:31पर मैं सबसे पहले तो ले लूंगा एक नई डेट।
  9010. 6:00:33क्योंकि आपको डेट में पास करना है ये। ठीक
  9011. 6:00:35है? और फिर यहां पर लिखूंगा न्यू डेट
  9012. 6:00:40डॉट गेट टाइम ऐसे और फिर यहां पर मैं JWT
  9013. 6:00:45एक्सपायरेशन इन मिलीसेकंड्स को ऐड कर
  9014. 6:00:47दूंगा। तो ये क्या करेगा? अच्छा सॉरी सेमी
  9015. 6:00:49कॉललन नहीं ऐड करना। ये क्या करेगा? यह
  9016. 6:00:52पहले तो करंट डेट लेगा। करेक्ट? करंट डेट
  9017. 6:00:57और 1 मिनट। करंट डेट और फिर इसमें टाइम ऐड
  9018. 6:01:03करेगा और फिर अ उसमें JWT एक्सपायरेशन
  9019. 6:01:07मिलीसेकंड्स ऐड करेगा और फिर एक पूरी डीड
  9020. 6:01:09बनाकर यहां पर सेट कर देगा। ठीक है? तो ये
  9021. 6:01:11काम हो गया। अब मैं क्या करूंगा? मुझे ये
  9022. 6:01:14जो JW टोकन है, इसको साइन करने की भी
  9023. 6:01:16जरूरत है। ठीक है? तो डॉट साइन वि इसको
  9024. 6:01:19साइन करने की जरूरत है। साइन कैसे करूंगा
  9025. 6:01:22मैं? साइन करूंगा एक की की मदद से। अब
  9026. 6:01:26यहां पर आप एक मेथड को डिफाइन कर देंगे जो
  9027. 6:01:28कि हमें की रिटर्न करेगी। ठीक है? तो मैं
  9028. 6:01:31यहां पर लिखता हूं की और इस तरीके से एक
  9029. 6:01:34मेथड बना देता हूं। ठीक है? अब की करके एक
  9030. 6:01:36मेथड हमें बनानी होगी। तो मैं क्या
  9031. 6:01:38करूंगा? अच्छा यहां पर नहीं वैलिडेट टोकन
  9032. 6:01:40के बाद में मैं लिखूंगा अ प्राइवेट
  9033. 6:01:44अ की। और यह की रिटर्न हो रहा है। देखिए
  9034. 6:01:47जेडब्ल्यूटी टोकन की जो की है वो रिटर्न
  9035. 6:01:49होगी। ठीक है? तो इस पर अगर आप होवर करते
  9036. 6:01:50हो ठीक है? 1 मिनट इस पर अगर आप होवर करते
  9037. 6:01:54हो तो ये देखिए अच्छा जावा सिक्योरिटी की
  9038. 6:01:58की है ये। ठीक है? एक हिसाब से आपको JSON
  9039. 6:02:03की की लेनी चाहिए। या जावा की JSON की ही
  9040. 6:02:06रखते हैं। एक मिनट। सिक्योरिटी की पैकेज
  9041. 6:02:08की ही की लेना। ठीक है? फिलहाल देखते हैं
  9042. 6:02:10इसको। और फिर यहां पर की लिखना है और फिर
  9043. 6:02:14यहां पर लिखना है रिटर्न कीज़ यह कीज़ आपको
  9044. 6:02:19jसन वेब टोकंस डॉट सिक्योरिटी की एक क्लास
  9045. 6:02:21है डॉट और यहां पर एच एम एसी शा की फॉर और
  9046. 6:02:28फिर यहां पर लिखना है डिकोडर्स डॉट पेज 64
  9047. 6:02:32डॉट डिकोड और फिर आप यहां पर JWD सीक्रेट
  9048. 6:02:36को डिकोड कर रहे हो। ठीक है? इतना आपको
  9049. 6:02:37लिख देना है और फिर यहां पर एक की आ जाएगी
  9050. 6:02:40और इससे ये जो JW टोकन है ये साइन हो
  9051. 6:02:42जाएगा। ठीक है? तो इतना करने के बाद आपका
  9052. 6:02:45काम हो चुका है। ठीक है? वैलिडेट का जो
  9053. 6:02:47लॉजिक है उसे हम थोड़े टाइम में हम डिफाइन
  9054. 6:02:50करेंगे। ठीक है? इतना हो चुका है। और
  9055. 6:02:52देखिए जनरेट हो रहा है टोकन यूजरनेम से और
  9056. 6:02:55और यहां पर अ जनरेट हो के टोकन इशू हो
  9057. 6:02:58जाएगा। इतना हो जाएगा अभी फिलहाल। ठीक है?
  9058. 6:03:01उम्मीद करता हूं इतना क्लियर है अब तक।
  9059. 6:03:03ठीक है? यहां पर हमने सिर्फ टोकन जनरेशन
  9060. 6:03:06का लॉजिक अब तक लिखा हुआ है। पहले हम टोकन
  9061. 6:03:08को जनरेट करेंगे। देखेंगे टोकन किस तरीके
  9062. 6:03:10से जनरेट होता है। फिर जो नेक्स्ट स्टेप
  9063. 6:03:12है उस पर जाएंगे जहां पर हम टोकन को
  9064. 6:03:14रिट्रीव करके उसको वैलिडेट भी कर पाएं।
  9065. 6:03:22अब इतना होने के बाद मैं क्या करना
  9066. 6:03:24चाहूंगा? मैं यहां पर आऊंगा कंट्रोलर में
  9067. 6:03:27और मैं एक एंड पॉइंट डिफाइन कर दूंगा।
  9068. 6:03:29जिसके जरिए हम टोकन को जनरेट कर सकते हैं।
  9069. 6:03:33ठीक है? एक ऐसी एंड पॉइंट डिफाइन कर
  9070. 6:03:35दूंगा। तो मैं यहां पर आ जाता हूं सबसे
  9071. 6:03:37पहले तो और यहां पर मैं लिख देता हूं एक
  9072. 6:03:41पोस्ट मैपिंग हो गई है। ठीक है? और यहां
  9073. 6:03:45पर मैं लिख देता हूं पब्लिक स्ट्रिंग लॉग
  9074. 6:03:49इन। ठीक है? इस मेथड का नाम लॉग इन होगा।
  9075. 6:03:52और यहां पर हम लिख सकते हैं रिक्वेस्ट
  9076. 6:03:57बॉडी।
  9077. 6:03:58ठीक है? जो भी डाटा है वह रिक्वेस्ट बॉडी
  9078. 6:04:00में आएगा और फिर यहां पर लॉग इन
  9079. 6:04:02रिक्वेस्ट। देखिए लॉग इन रिक्वेस्ट अभी
  9080. 6:04:04हमने बनाई नहीं है लेकिन इसको बनाना
  9081. 6:04:06पड़ेगा। ठीक है? तो ये हम बनाएंगे और ये
  9082. 6:04:10इतना हो गया है हमारे पास। और अब यहां पर
  9083. 6:04:14मैं लिखूंगा अ ऑथेंटिकेशन
  9084. 6:04:19का ऑब्जेक्ट बना लूंगा मैं। ठीक है? तो
  9085. 6:04:21ऑथेंटिकेशन का जो ऑब्जेक्ट है वो हम
  9086. 6:04:24बनाएंगे इस इंटरफ़ेस की मदद से। अ ये
  9087. 6:04:27सिक्योरिटी का एक इंटरफेस है। ठीक है?
  9088. 6:04:29स्प्रिंग सिक्योरिटी का। तो इसको मैं
  9089. 6:04:31लूंगा। ठीक है? और इसका ऑब्जेक्ट हम क्यों
  9090. 6:04:34बना रहे हैं? ठीक है? क्योंकि ये जो
  9091. 6:04:35ऑथेंटिकेशन का इंटरफ़ेस है, ये रिप्रेजेंट
  9092. 6:04:37करता है एक ऑथेंटिकेटेड
  9093. 6:04:40रिक्वेस्ट को। देखिए, इस इस पर अगर हो
  9094. 6:04:43करेंगे, तो इसका डॉक्यूमेंटेशन भी आ रहा
  9095. 6:04:44है। रिप्रेजेंट्स दी टोकन फॉर ऑथेंटिकेशन
  9096. 6:04:47रिक्वेस्ट। ठीक है? तो एक बार जो यूजर
  9097. 6:04:49ऑथेंटिकेट हो जाता है तो उसको अगर
  9098. 6:04:52रिप्रेजेंट करना है आपको। देखिए वंस द
  9099. 6:04:54रिक्वेस्ट हैज़ बीन ऑथेंटिकेटेड दी
  9100. 6:04:57ऑथेंटिकेशन इंटरफेस विल बी यू विल बी
  9101. 6:05:00स्टर्ड इन ए थ्रेड लोकल सिक्योरिटी
  9102. 6:05:02कॉन्टेक्स्ट। तो देखिए आप अगर स्प्रिंग
  9103. 6:05:05सिक्योरिटी का आर्किटेक्चर देखते हो तो
  9104. 6:05:07वहां पर स्प्रिंग सिक्योरिटी आर्किटेक्चर
  9105. 6:05:09में आपको सिक्योरिटी कंटेक्स्ट के बारे
  9106. 6:05:11में पता होगा। ठीक है? ये सिक्योरिटी
  9107. 6:05:12कंटक्स्ट एक ऐसी जगह है जहां पर एक
  9108. 6:05:14ऑथेंटिकेटेड यूजर एक बार ऑथेंटिकेट हो
  9109. 6:05:17जाता है तो उसकी इनेशन वहां पर स्टोर कर
  9110. 6:05:18दी जाती है ताकि अभी आगे की जो रिक्वेस्ट
  9111. 6:05:21है अगर ऑथेंटिकेशन इनेशन किसी को चाहिए तो
  9112. 6:05:24वो सिक्योरिटी कंटक्स्ट से मिल जाती है।
  9113. 6:05:26ठीक है? तो सिक्योरिटी कंटक्स्ट उसलिए यूज़
  9114. 6:05:28होता है। तो वहां पर ऑथेंटिकेशन ऑब्जेक्ट
  9115. 6:05:30के रूप में उस ऑथेंटिकेशन इनेशन को स्टोर
  9116. 6:05:33किया जाता है। ये ऑथेंटिकेशन इंटरफ़ेस के
  9117. 6:05:35रूप में। तो मैं इसके ऑब्जेक्ट पहले बना
  9118. 6:05:37लेता हूं। ठीक है? फिर यहां पर मैं क्या
  9119. 6:05:39करूंगा? एक ट्राई कैच ब्लॉक लिखना सही
  9120. 6:05:43रहेगा कि अगर कुछ एक्सेप्शन आए तो हम उसे
  9121. 6:05:45मैनेज भी कर पाएं। ठीक है? और यहां पर हम
  9122. 6:05:48लिखेंगे ऑथेंटिकेशन
  9123. 6:05:52एक्सेप्शन। ठीक है? इस तरीके से अ और ई
  9124. 6:05:56लिखेंगे
  9125. 6:05:58और फिर ई डॉट प्रिंट स्ट्रक्ट्रेस। और फिर
  9126. 6:06:01यहां पर मैं लिखूंगा ऑथेंटिकेशन इज़ इक्वल
  9127. 6:06:03टू ऑथेंटिकेशन अह ऑथेंटिकेशन
  9128. 6:06:09मैनेजर। ठीक है? तो ये ऑथेंटिकेशन मैनेजर
  9129. 6:06:11का ऑब्जेक्ट हमें लगेगा। अब ऑथेंटिकेशन
  9130. 6:06:13मैनेजर का भी ऑब्जेक्ट हमने क्रिएट नहीं
  9131. 6:06:14किया है। तो मैं क्या करता हूं? यहां पर
  9132. 6:06:16फटाक से ऊपर जल्दी-जल्दी आ जाता हूं और
  9133. 6:06:19यहां पर ऑटो वायर करता हूं और ऑथेंटिकेशन
  9134. 6:06:21मैनेजर
  9135. 6:06:24को इन चेक कर देता हूं। ठीक है?
  9136. 6:06:26ऑथेंटिकेशन मैनेजर। ठीक है? तो ये
  9137. 6:06:28ऑथेंटिकेशन मैनेजर क्या है ये ऑथेंटिकेशन
  9138. 6:06:30को मैनेज करेगा। देखिए इस पर हो करेंगे आप
  9139. 6:06:31प्रोसेससेस एंड ऑथेंटिकेशन रिक्वेस्ट। ठीक
  9140. 6:06:34है? इसको हमने क्रिएट नहीं किया है। ये
  9141. 6:06:36स्प्रिंग सिक्योरिटी दे रहा है। देखिए हम
  9142. 6:06:37कुछ क्लासेस इंटरफ़सेस ऐसे ही इस्तेमाल
  9143. 6:06:39करेंगे जो इनबिल्ट है। ठीक है? जो इनबिल्ट
  9144. 6:06:42है ये हम कर रहे हैं क्योंकि रिक्वेस्ट को
  9145. 6:06:44हम ऑथेंटिकेट कर पाए हमारे एंड पे और JWT
  9146. 6:06:47का जो टोकन है उसे इशू कर पाए। बस इशूइंग
  9147. 6:06:49तक ही हम करने वाले हैं। ठीक है? तो देखिए
  9148. 6:06:51ये इनबिल्ट क्लास है। अब सॉरी इंटरफ़ेस है।
  9149. 6:06:53आप देख पा रहे हो। ये इसका काम ये है कि
  9150. 6:06:55जो ऑथेंटिकेशन रिक्वेस्ट है उसको प्रोसेस
  9151. 6:06:57करेगा। ठीक है? तो मैं ऑथेंटिकेशन अ
  9152. 6:07:00मैनेजर को यहां पर ले रहा हूं। ठीक है? और
  9153. 6:07:02फिर यहां पर एक ऑथेंटिकेट करके मेथड दिया
  9154. 6:07:05जाता है। ठीक है? तो स्प्रिंग सिक्योरिटी
  9155. 6:07:06हमें मदद करेगा इस यूजरनेम पासवर्ड को
  9156. 6:07:10ऑथेंटिकेट करने में। ठीक है? तो ये मैंने
  9157. 6:07:12लिख दिया यहां पर और फिर यहां पर कहूंगा
  9158. 6:07:14न्यू यूजरनेम पासवर्ड ऑथेंटिकेशन
  9159. 6:07:18टोकन। ठीक है? एक टोकन बनाएंगे हम। और फिर
  9160. 6:07:21यहां पर लॉग इन रिक्वेस्ट
  9161. 6:07:23डॉट गेट यूजरनेम। ठीक है? लॉग इन
  9162. 6:07:26रिक्वेस्ट में यूजरनेम होगा।
  9163. 6:07:28और फिर लॉग इन रिक्वेस्ट में पासवर्ड भी
  9164. 6:07:32होगा। ठीक है? तो यूजरनेम पासवर्ड हमें
  9165. 6:07:34लॉग इन रिक्वेस्ट में आएंगे। अभी मैंने
  9166. 6:07:36यूजरनेम ये गेट लॉग इन रिक्वेस्ट अभी तक
  9167. 6:07:38बनाई नहीं है। तो हमें वो बना लेना चाहिए।
  9168. 6:07:40तो मैं क्या करूंगा? यहां पर अच्छा क्रिएट
  9169. 6:07:42अ पैरामीटर टाइप नहीं यहां पर आऊंगा और
  9170. 6:07:44उसकी क्लास ही बना दूंगा। तो इस पर हो
  9171. 6:07:45करेंगे हम मोर एकशंस क्रिएट अ क्लास और यह
  9172. 6:07:48क्लास बन जाएगी यहां पर। ठीक है? और फिर
  9173. 6:07:51यहां पर मैं लिखूंगा स्ट्रिंग यूजरनेम और
  9174. 6:07:55यहां पर लिखूंगा स्ट्रिंग पासवर्ड। ठीक
  9175. 6:07:59है? ये दोनों चीजें ही आएगी यहां पर और
  9176. 6:08:02यहां पर मैं लिख दूंगा डेटा
  9177. 6:08:04डेटा अच्छा मैंने लॉब ऐड नहीं कर रखा है
  9178. 6:08:08यहां पर। तो चलिए लॉबक के बिना ही काम
  9179. 6:08:10करते हैं। तो फिलहाल के लिए अभी तो यहां
  9180. 6:08:12पर गेटर सेटर्स लगेंगे हमें। ठीक है? तो
  9181. 6:08:15गेटर एंड सेटर को ऐड कर दिया। आप चाहो तो
  9182. 6:08:17लॉबक लॉबक का इस्तेमाल कर सकते हो यहां पर
  9183. 6:08:19और मैं जनरेट करूंगा कंस्ट्रक्टर ठीक है
  9184. 6:08:22दोनों के लिए कंस्ट्रक्टर और एक नो आस्क्
  9185. 6:08:25कंस्ट्रक्टर भी जनरेट कर दूंगा ठीक है
  9186. 6:08:27लॉबक का इस्तेमाल भी कर सकते हैं लेकिन
  9187. 6:08:29मैंने वो डिपेंडेंसी ऐड नहीं की है तो मैं
  9188. 6:08:30बोदर नहीं कर रहा वो करने के लिए ठीक है
  9189. 6:08:32बट ये देखिए लॉग इन रिक्वेस्ट यहां पर आ
  9190. 6:08:34गई लॉग इन रिक्वेस्ट का काम क्या है लॉग
  9191. 6:08:35इन रिक्वेस्ट सिर्फ ये डिक्टेट करेगा कि
  9192. 6:08:37किस तरीके से लॉग इन का जो रिक्वेस्ट
  9193. 6:08:39स्ट्रक्चर है वो होना चाहिए ठीक है और
  9194. 6:08:42ऑथेंटिकेशन मैनेजर की मदद से हम ऑथेंटिकेट
  9195. 6:08:44करेंगे यहां पर देखिए ऑथेंटिकेट क्या
  9196. 6:08:46ऑथेंटिकेट एक ऐसा मेथड है जो अटेम्प्ट
  9197. 6:08:48करता है ऑथेंटिकेट करने के लिए। ठीक है?
  9198. 6:08:51यूजरनेम पासवर्ड की मदद से और एक
  9199. 6:08:54ऑथेंटिकेशन ऑब्जेक्ट अ है उसको उसको देखिए
  9200. 6:08:59यहां पर ऑथेंटिकेशन ऑब्जेक्ट बन रहा है।
  9201. 6:09:01ठीक है? तो ये यूजरनेम पासवर्ड ऑथेंटिकेशन
  9202. 6:09:03का जो ये है इसका हम ऑब्जेक्ट बना के
  9203. 6:09:05इसमें पास कर रहे हैं। ठीक है? और यहां पर
  9204. 6:09:08अगर आप चाहते हो यहां पर ठीक है? तो ये एक
  9205. 6:09:11हिसाब से ऑथेंटिकेशन का ही ऑब्जेक्ट है।
  9206. 6:09:14यूजरनेम पासवर्ड ऑथेंटिकेशन टोकन जो है ये
  9207. 6:09:16ऑथेंटिकेशन की ही सब क्लास है। तो ये
  9208. 6:09:18ऑथेंटिकेशन का ही टाइप है। ठीक है? तो
  9209. 6:09:21यहां पर ये पास हो रहा है। और ये पास होने
  9210. 6:09:23के बाद आपको ऑथेंटिकेशन का एक ऑथेंटिकेटेड
  9211. 6:09:26ऑब्जेक्ट मिल जाएगा। ठीक है? तो स्प्रिंग
  9212. 6:09:27सिक्योरिटी की मदद से हम लोग ऑथेंटिकेट कर
  9213. 6:09:30रहे हैं। और इतना होने के बाद हमारे पास अ
  9214. 6:09:33सिक्योरिटी कॉन्टेक्स्ट में ऑथेंटिकेशन की
  9215. 6:09:35इनेशन आ जाएगी। अगर ऑथेंटिकेशन सक्सेसफुल
  9216. 6:09:38रहा है तो। ठीक है? अब अगर हमारे पास
  9217. 6:09:42सिक्योरिटी कॉन्टेक्स्ट में इंफॉर्मेशन है
  9218. 6:09:45तो हम क्या करेंगे? सिक्योरिटी
  9219. 6:09:46कॉन्टेक्स्ट। ठीक है? अ सिक्योरिटी
  9220. 6:09:50कंटेक्स्ट होल्डर को ले लेते हैं। ठीक?
  9221. 6:09:51सिक्योरिटी कंटक्स्ट होल्डर डॉट गेट
  9222. 6:09:54कंटेक्स्ट उसकी मदद से कंटक्स्ट ले लेंगे
  9223. 6:09:56और फिर सेट ऑथेंटिकेशन करेंगे और जो
  9224. 6:09:58ऑथेंटिकेशन का ऑथेंटिकेटेड ऑब्जेक्ट है
  9225. 6:10:00हमारे पास उसको सेट कर देंगे यहां पर।
  9226. 6:10:02अच्छा ये एरर क्यों दे रहा है यहां पर?
  9227. 6:10:04वेरिएबल ऑथेंटिकेशन माइट नॉट हैव बीन
  9228. 6:10:08इनिशियलाइज़्ड। अच्छा ऐसा है। इनिशियलाइज़
  9229. 6:10:10तो हो रखा है। लेकिन चलिए इसको इनिशियलाइज़
  9230. 6:10:13भी कर लेते हैं। तो मैं एक चीज़ बताता हूं
  9231. 6:10:15यहां पर। देखिए अगर यहां तक हमारा सोर्स
  9232. 6:10:17कोड आ रहा है इसका मतलब क्या है? कि ये जो
  9233. 6:10:20ऑथेंटिकेशन है वो सक्सेसफुल रहा है। इसका
  9234. 6:10:22इनिशियलाइज़ेशन सक्सेसफुल रहा है यहां पर।
  9235. 6:10:24ठीक है? ये इसका मतलब हो जाता है। और जैसे
  9236. 6:10:27ही अ ऑथेंटिकेशन सक्सेसफुल हो जाता है।
  9237. 6:10:29बिना ट्राई बिना कैच ब्लॉक में आए तो हम
  9238. 6:10:32उसको सेट कर देते हैं यहां पर। ठीक है?
  9239. 6:10:34नहीं तो आप यहां पर एरर भी थ्रो कर सकते
  9240. 6:10:36हो। जैसे कि आप यहां से अ रिटर्न कर सकते
  9241. 6:10:39हो। यहां पर मैं रिटर्न कर देता हूं। ठीक
  9242. 6:10:41है? ई डॉट प्रिंट स्ट्रेस और फिर रिटर्न
  9243. 6:10:43कर देता हूं। अ
  9244. 6:10:45रिटर्न करना है हमें एक एंप्टी स्ट्रिंग।
  9245. 6:10:48ठीक है? एम्प्टी स्ट्रिंग रिटर्न कर देते
  9246. 6:10:50हैं फिलहाल। ठीक है? कोड नॉट ऑथेंटिकेट।
  9247. 6:10:57तो यहीं से रिटर्न हो जाएगा वो मेथड। यहां
  9248. 6:10:59पर कोड आएगा ही नहीं। ठीक है? तो इतना हो
  9249. 6:11:01गया। अब इसको नल इनिशियलाइज़ करने की जरूरत
  9250. 6:11:03नहीं है। ठीक है? वो हमने रिटर्न
  9251. 6:11:04स्टेटमेंट नहीं लिखा था। इसके लिए
  9252. 6:11:05इंटेलिजेंट बोल रहा था इनिशियलाइज़ कर लो।
  9253. 6:11:07लेकिन अब इनिशलाइज़ करने की जरूरत नहीं है
  9254. 6:11:09क्योंकि यहां से ही रिक्वेस्ट रिटर्न हो
  9255. 6:11:11जाएगी। ठीक है? यहां पर कोड आएगा ही नहीं।
  9256. 6:11:13इतना हो गया। हमने ऑथेंटिकेटेड यूजर को
  9257. 6:11:16सिक्योरिटी कॉन्टेक्स्ट में स्टोर भी कर
  9258. 6:11:18दिया है। मैनुअली स्टोर किया है हमने। अब
  9259. 6:11:20मैं क्या करूंगा? मैं ऑथेंटिकेशन ऑब्जेक्ट
  9260. 6:11:23की मदद से यूजर की डिटेल्स लूंगा। क्या
  9261. 6:11:26लूंगा? ऑथेंटिकेटेड ऑब्जेक्ट की मदद से
  9262. 6:11:29यूजर की डिटेल्स को लूंगा। सिक्योरिटी
  9263. 6:11:30कॉन्टेक्स्ट से। यह पॉसिबल है। यहां
  9264. 6:11:32पॉसिबल है। काफी सारी नई चीजें देखने मिल
  9265. 6:11:34रही हैं। तो देखिए ऑथेंटिकेशन ऑब्जेक्ट है
  9266. 6:11:36मेरे पास। मैं कहूंगा गेट प्रिंसिपल यहां
  9267. 6:11:39पर और फिर यहां पर आ जाऊंगा। फिर यहां पर
  9268. 6:11:42कहूंगा यूजर डिटेल्स और फिर यहां पर यूजर
  9269. 6:11:45डिटेल्स इज़ इक्वल टू गेट प्रिंसिपल। और
  9270. 6:11:48यहां पर इसको कास्ट भी कर देते हैं। ठीक
  9271. 6:11:49है? अब यूजर डिटेल्स क्या है? इसको ओवर
  9272. 6:11:51करेंगे आप। तो देखिए प्रोवाइड्स दी कोर
  9273. 6:11:53यूजर इनेशन। तो जो कोर यूजर की इनेशन है
  9274. 6:11:55उसको यूजर डिटेल्स की मदद से आप रिट्रीव
  9275. 6:11:58कर सकते हो। ठीक है? यूजर डिटेल्स की मदद
  9276. 6:12:00से स्ट्रिंग सिक्योरिटी में रिट्रीव कर
  9277. 6:12:02सकते हो। अब मुझे यह ऑथेंटिकेटेड यूजर है।
  9278. 6:12:04हमारे पास यूजर की डिटेल्स भी है। तो अब
  9279. 6:12:07मुझे क्या करना है? JW टोकन को इशू करना
  9280. 6:12:10है। तो मैं क्या करूंगा? यहां पर अ मैं
  9281. 6:12:13बना लूंगा ऑटो वायर करके ऑटो वायर्ड और
  9282. 6:12:17JWT यूटिल्स का जो ऑब्जेक्ट है उसको मैं
  9283. 6:12:20इंजेक्ट कर दूंगा यहां पर। JWT यूutils का
  9284. 6:12:23ऑब्जेक्ट को इंजेक्ट क्यों कर रहा हूं
  9285. 6:12:24यहां पर? क्योंकि मुझे JWT यूटिल्स की मदद
  9286. 6:12:26से
  9287. 6:12:28टोकन मिलेगा यूजरनेम से। करेक्ट? तो JWT
  9288. 6:12:31यूutils में एक मेथड है जनरेट टोकन फ्रॉम
  9289. 6:12:33यूजरनेम जो हमने ही लिखा है जो यूजरनेम
  9290. 6:12:35एक्सेप्ट करता है। अब यूजरनेम इसको कहां
  9291. 6:12:37से देंगे? तो यूजर डिटेल्स में से देंगे।
  9292. 6:12:39यूजर डिटेल्स डॉट गेट यूजरनेम हमें
  9293. 6:12:41यूजरनेम दे देगा। और फिर ये मेथड हमें
  9294. 6:12:44क्या देगा? ये मेथड हमें देगा JWT की
  9295. 6:12:47टोकन। स्ट्रिंग GWT टोकन। आप ऐसे लिख सकते
  9296. 6:12:50हो ऐसे। ठीक है? ये हो गया हमारे पास GW
  9297. 6:12:53टोकन। अब मैं क्या करूंगा? यहां पर इसको
  9298. 6:12:55रिटर्न भी कर सकता हूं। यहां पर आ जाऊंगा
  9299. 6:12:57और यहां पर कर दूंगा रिटर्न और यहां पर
  9300. 6:13:00इसको जेडब्ल्यूडी टोकन के तौर पे ऐसे
  9301. 6:13:02रिटर्न कर दूंगा। ठीक है? ये हो गया हमारा
  9302. 6:13:05ऑथेंटिकेशन का लॉजिक। ठीक है? और इसको मैं
  9303. 6:13:08कॉल कर सकता हूं। अ इसको कहां पर कॉल करना
  9304. 6:13:11चाहिए? स्लैश। अच्छा
  9305. 6:13:15स्लैश साइन इन पॉइंट बना लेनी चाहिए हमें।
  9306. 6:13:17ठीक है? स्लैश साइन इन। ठीक है? अब मैं
  9307. 6:13:20इसको रन करता हूं।
  9308. 6:13:22अब अगर मैं रन करता हूं तो
  9309. 6:13:26देखते हैं क्या होता है। ठीक है। रन तो हो
  9310. 6:13:28रहा है। अच्छा यहां पर कुछ इशू आ गया।
  9311. 6:13:31क्या इशू आ गया है यहां पर? यहां पर कुछ
  9312. 6:13:33इशू आ गया है। एक मिनट देख लेते हैं। ठीक
  9313. 6:13:37है। देखिए ये एरर अगर आपको ऐसे आती है तो
  9314. 6:13:40देख के डर नहीं जाना है। ठीक है? एरर तो
  9315. 6:13:42आना ही है। अब यहां पर मैं भी मैंने भी
  9316. 6:13:44कुछ मिस्टेक कर दी है। ठीक है? मुझे
  9317. 6:13:45मिस्टेक भी समझ गई। देखिए एरर मैसेज अगर
  9318. 6:13:47आप ऊपर स्क्रॉल करते हो अनसटिस्फाइड
  9319. 6:13:49डिपेंडेंसी एक्सप्रेस थ्रू फील्ड
  9320. 6:13:51ऑथेंटिकेशन मैनेजर तो इसको ऑथेंटिकेशन
  9321. 6:13:53मैनेजर का बीन नहीं मिला है। देखिए ये
  9322. 6:13:55क्लियरली बोल रहा है नो क्वालिफाइड बीन
  9323. 6:13:57फॉर टाइप ऑथेंटिकेशन मैनेजर अवेलेबल। तो
  9324. 6:14:00इसका मतलब आपको बीन बनाना है ऑथेंटिकेशन
  9325. 6:14:02मैनेजर का। अब ये कहां पर बनाओगे आप? मैं
  9326. 6:14:04बनाऊंगा सिक्योरिटी कॉन्फ़िगरेशन में। ठीक
  9327. 6:14:06है? वहां यहीं पर बनाना प्रेफर करूंगा
  9328. 6:14:08मैं। और इसका रीज़न है क्योंकि सारी जो
  9329. 6:14:10सिक्योरिटी रिलेटेड कॉन्फ़िगरेशन है वो मैं
  9330. 6:14:12यहीं पर लिख रहा हूं। ठीक है? तो यहां पर
  9331. 6:14:14आ जाऊंगा और यहां पर मैं लिखूंगा एक बीन
  9332. 6:14:17ठीक है और मैं कहूंगा पब्लिक ऑथेंटिकेशन
  9333. 6:14:20मैनेजर इसे एक्सपोज कर दूंगा इसे
  9334. 6:14:23ऑथेंटिकेशन मैनेजर और यहां पर ऑथेंटिकेशन
  9335. 6:14:27अ कॉन्फ़िगरेशन करके होगा ऑथेंटिकेशन
  9336. 6:14:30कॉन्फ़िगरेशन और यहां पर बिल्डर और फिर
  9337. 6:14:34यहां पर रिटर्न
  9338. 6:14:36गेट अच्छा बिल्डर डॉट गेट ऑथेंटिकेशन
  9339. 6:14:40मैनेजर को रिटर्न कर दूंगा मैं इस तरीके
  9340. 6:14:43से ठीक है। इतना हो चुका है। ठीक है। कोई
  9341. 6:14:46दिक्कत तो आई नहीं। अब इसको रन करते हैं।
  9342. 6:14:48शायद एक और एरर है। ठीक है? मुझे पता है
  9343. 6:14:50वो एरर क्या होगी? डेटाबेस रिलेटेड होगी।
  9344. 6:14:54देखिए एरर आ गई। ये पता था मुझे एरर आएगी।
  9345. 6:14:56ठीक है? ये क्या बोल रहा है कि यूजर वन
  9346. 6:14:58ऑलरेडी क्रिएटेड है। तो देखिए मैं एक
  9347. 6:15:00दिक्कत बता देता हूं अभी आपको कोड में और
  9348. 6:15:01उसको सॉल्व कैसे करना है वो भी बता देता
  9349. 6:15:03हूं। ठीक है? यहां पर सिक्योरिटी
  9350. 6:15:05कॉन्फ़िगरेशन में हम क्या कर रहे हैं? ये
  9351. 6:15:06तीनों यूज़र्स क्रिएट कर रहे हैं इन मेमोरी
  9352. 6:15:08यूजर डिटेल्स मैनेजर की मदद से। ठीक है?
  9353. 6:15:11यहां पर ये तीन तीनों यूजर को क्रिएट किया
  9354. 6:15:12हमने ऑब्जेक्ट और ये तीनों यूजर को
  9355. 6:15:14डेटाबेस में क्रिएट भी कर रहे हैं हम। हो
  9356. 6:15:16क्या रखा है? अभी आप डेटाबेस में अगर आप
  9357. 6:15:18आओगे तो ये जो यूज़र्स हैं ये ऑलरेडी
  9358. 6:15:20क्रिएटेड है। यहां पर आप देखोगे तो देखिए
  9359. 6:15:23इसको रिफ्रेश करता हूं। तो यूज़र्स ऑलरेडी
  9360. 6:15:25क्रिएटेड है। अब बार-बार ये यूजर को
  9361. 6:15:27क्रिएट करके कुछ पॉइंट है नहीं। करेक्ट?
  9362. 6:15:29तो इसीलिए मुझे एरर आ रही है कि ये यूजर
  9363. 6:15:31ऑलरेडी एकज़िस्टिंग है। तो अब बार-बार
  9364. 6:15:34क्रिएट क्यों कर रहे हो? ठीक है? तो मुझे
  9365. 6:15:36क्या करना चाहिए? एक हिसाब से यहां पर एक
  9366. 6:15:39चेक लगा लेना चाहिए कि वो यूजर एग्ज़िस्ट
  9367. 6:15:41करता है कि नहीं। तो मैं यहां पर लिख
  9368. 6:15:42दूंगा इफ़ नॉट इक्वल टू यूजर डिटेल्स
  9369. 6:15:45मैनेजर डॉट यूजर एकज़िस्ट और देखिए यहां पर
  9370. 6:15:48यूजरनेम आप पास कर सकते हो। ठीक है? तो
  9371. 6:15:50मैं क्या करूंगा? यहां पर यूजर वन
  9372. 6:15:54डॉट और यहां पर गेट यूजरनेम पास कर दूंगा।
  9373. 6:15:56ठीक है? तो इससे आपको पता चल जाएगा कि
  9374. 6:15:58यूजर एकज़िस्टिंग है या नहीं। अगर यूजर
  9375. 6:16:00एकज़िस्टिंग है तो ही क्रिएट करो इस यूजर
  9376. 6:16:02को। आप समझ रहे हो? अगर यूजर एकिस्टिंग है
  9377. 6:16:05तो ही क्रिएट करो इस यूजर को। इस तरीके से
  9378. 6:16:08मैं इस चेक को तीन बार रिपीट कर दूंगा। एक
  9379. 6:16:10बार यूजर वन के लिए, दूसरी बार यूजर टू के
  9380. 6:16:12लिए और तीसरी बार एडमिन के लिए। ठीक है?
  9381. 6:16:16और ये जो क्रिएट यूजर यूजर टू है, यहां पर
  9382. 6:16:19यूजर टू क्रिएट हो जाएगा। अगर यूजर टू
  9383. 6:16:20एक्सिस्ट नहीं करता है तो। और यहां पर
  9384. 6:16:21एडमिन क्रिएट हो जाएगा। अगर एडमिन
  9385. 6:16:23एग्ज़िस्ट नहीं करता है, तो। अब इन दोनों
  9386. 6:16:25को मैं हटा दूंगा। ठीक है? समझ में आ गया
  9387. 6:16:27बात? मैं क्यों कर रहा हूं? मैं चेक कर
  9388. 6:16:29रहा हूं कि क्या यह यूजर एग्ज़िस्ट करता है
  9389. 6:16:31इस यूजरनेम के साथ? अगर एग्ज़िस्ट नहीं
  9390. 6:16:33करता है, तो ही क्रिएट किया जाए नहीं तो
  9391. 6:16:35स्किप कर दीजिए। ठीक है? अब कोई दिक्कत
  9392. 6:16:37नहीं आएगी जितना मुझे लगता है। रन करके
  9393. 6:16:40देख लेते हैं फिर भी। ठीक है? नहीं आई
  9394. 6:16:43दिक्कत। देखिए कोई दिक्कत नहीं है।
  9395. 6:16:44एप्लीकेशन स्टार्ट हो गई। ठीक है? अब यहां
  9396. 6:16:46पर आप आ जाते हो। यहां पर आने के बाद मैं
  9397. 6:16:49क्या करूंगा? यहां पर एक नई रिक्वेस्ट बना
  9398. 6:16:51लूंगा। ठीक है? और यहां पर एक पोस्ट
  9399. 6:16:53रिक्वेस्ट होगी ये और ये होगी एक साइन इन
  9400. 6:16:56रिक्वेस्ट।
  9401. 6:16:58एस आई जी एन साइन इन। और यहां पर बॉडी में
  9402. 6:17:02मैं पास कर दूंगा। ठीक है? मैं पास कर
  9403. 6:17:05दूंगा लॉग इन रिक्वेस्ट। सो सबसे पहले तो
  9404. 6:17:07यूजरनेम इस तरीके से। ठीक है? यूजरनेम जो
  9405. 6:17:10भी है वो पास करना है हमें। और फिर मैं
  9406. 6:17:12पास करूंगा पासवर्ड इस तरीके से। ठीक है?
  9407. 6:17:15और पासवर्ड जो भी है। तो मैं पास कर रहा
  9408. 6:17:17हूं यूजर वन। ठीक है? और फिर यहां पर पास
  9409. 6:17:20टाइप कर रहा हूं पासवर्ड वन। ठीक है? इसको
  9410. 6:17:23सेंड करके देखते हैं क्या होता है। अच्छा
  9411. 6:17:25ये गेट रिक्वेस्ट है। सॉरी। तो इसको
  9412. 6:17:27भेजेंगे एज़ अ पोस्ट रिक्वेस्ट। अच्छा पहले
  9413. 6:17:29ही अनऑथराइज़्ड आ गई। पोस्ट रिक्वेस्ट की
  9414. 6:17:32तरह इसको भेज रहे हैं। देखते हैं क्या
  9415. 6:17:33होता है। अच्छा अन ऑथराइज़्ड आ रहा है। तो
  9416. 6:17:35यह रिक्वेस्ट हिट तो हुई है क्या? 1 मिनट
  9417. 6:17:37जरा देख लेते हैं हुआ क्या है। ठीक है?
  9418. 6:17:41यहां पर आ जाते हैं हेलो कंट्रोलर में
  9419. 6:17:43स्लैश साइन इन। ठीक है? साइन इन और यहां
  9420. 6:17:47पर अच्छा तो मुझे प्रॉब्लम समझ में आ गई।
  9421. 6:17:51क्या प्रॉब्लम है? ठीक है? प्रॉब्लम यह है
  9422. 6:17:53कि साइन इन जो रिक्वेस्ट है वहां पर भी
  9423. 6:17:56ऑथेंटिकेशन एक्सपेक्ट करता है। देखिए आपके
  9424. 6:17:58पास एक एप्लीकेशन है और लॉग इन पेज है। तो
  9425. 6:18:02लॉग इन पेज को आपको साइन इन यानी लॉग इन
  9426. 6:18:05पेज को आपको ऑथेंटिकेटेड नहीं रखना है।
  9427. 6:18:07करेक्ट? लॉग इन पेज तो पब्लिक पेज होना
  9428. 6:18:09चाहिए ताकि कोई भी आके लॉग इन कर पाए उस
  9429. 6:18:11पे और खुद को ऑथेंटिकेट कर पाए। अगर लॉगिन
  9430. 6:18:14की जो एपीआई है, लॉग इन का जो पेज है उसी
  9431. 6:18:16पर अगर आप ऑथेंटिकेशन एक्सपेक्ट करोगे तो
  9432. 6:18:18देखिए ऑथेंटिकेट करने के लिए लॉग इन पेज
  9433. 6:18:20का एक्सेस जरूरी है और लॉग इन पेज को
  9434. 6:18:22एक्सेस करने के लिए ऑथेंटिकेशन जरूरी है।
  9435. 6:18:24तो ये साइकिल हो जाता है और वो कभी एक्सेस
  9436. 6:18:25नहीं कर पाएगा। तो लॉग इन पेज हमेशा
  9437. 6:18:27पब्लिक होना चाहिए। ठीक है? तो यहां पर
  9438. 6:18:29हमें पब्लिक करना होगा। हमने पब्लिक नहीं
  9439. 6:18:31किया है उसे। तो यहां पर आ जाऊंगा मैं और
  9440. 6:18:33यहां पर इसको डुप्लीकेट कर दूंगा ये लाइन
  9441. 6:18:35को। रिक्वेस्ट मैचेस डॉट पैटर्न साइन इन।
  9442. 6:18:39तो यह साइन इन नाम की जो एंड पॉइंट है वह
  9443. 6:18:41पब्लिक रहेगी और यहां पर हैज़ रोल नहीं
  9444. 6:18:44यहां पर मैं लिख दूंगा इसको हटा देता हूं
  9445. 6:18:46पूरा यहां पर डॉट परमिट ऑल देखिए परमिट ऑल
  9446. 6:18:50लिख दूंगा मतलब साइन इन पे जो भी
  9447. 6:18:51रिक्वेस्ट आ रही है उसको परमिट किया जाएगा
  9448. 6:18:53तो मैं रन कर देता हूं इसे ऐसा करके
  9449. 6:18:55[हंसी]
  9450. 6:18:55ठीक है साइन इन पे जो भी रिक्वेस्ट आएगी
  9451. 6:18:57उसे परमिट किया जाएगा। तो ये मेरी
  9452. 6:18:59एप्लीकेशन चल गई। अब साइन इन एंड पॉइंट पे
  9453. 6:19:02कोई ऑथेंटिकेशन नीडेड नहीं है। साइन इन का
  9454. 6:19:04यह मकसद है कि वो यूजर को खुद को
  9455. 6:19:06ऑथेंटिकेट करने का मौका देता है। ठीक है?
  9456. 6:19:08ठीक है? तो ये पब्लिक एंड पॉइंट है। तो
  9457. 6:19:09इसको मैं रन करूंगा और अच्छा अभी भी मुझे
  9458. 6:19:12ऑथेंटिकेशन ही मांग रहा है। ऑथेंटिकेशन
  9459. 6:19:14क्यों मांग रहा है? ये तो आइडली मांगना
  9460. 6:19:16नहीं चाहिए। रिक्वेस्ट मैचेस डॉट परमिट ऑल
  9461. 6:19:20तो मैंने लिखा है प्रॉपर्ली। अच्छा तो
  9462. 6:19:23यहां पर दिक्कत ये हो रही है। हमने बेसिक
  9463. 6:19:25ऑथेंटिकेशन को इनेबल कर रखा है। तो इसको
  9464. 6:19:27भी डिसेबल करना होगा। ठीक है? क्योंकि
  9465. 6:19:29बेसिक ऑथेंटिकेशन इनेबल कर रखा है। तो वो
  9466. 6:19:31यूजरनेम पासवर्ड, क्रेडेंशियल्स हर
  9467. 6:19:33रिक्वेस्ट के साथ मांग जा रहा है। ठीक है?
  9468. 6:19:34तो इसको भी डिसेबल करेंगे। ये एक-एक करके
  9469. 6:19:36एक-एक चीजों को हम डिसेबल कर रहे हैं और
  9470. 6:19:39अब लगभग चल जाना चाहिए ये। ठीक है? तो ये
  9471. 6:19:42चल गया। यहां पर आ जाते हैं। अच्छा 403
  9472. 6:19:45फॉर बिडन। अब ये कुछ रोल रिलेटेड इशू है।
  9473. 6:19:47ठीक है? देखिए मैं ये जो इशूज़ वाली जो
  9474. 6:19:49पार्ट है ना इसको मैं ये नहीं करूंगा। कट
  9475. 6:19:52नहीं कर रहा हूं क्योंकि यहां से आपको ये
  9476. 6:19:55भी समझ में आएगा कि यहां से आपको ये भी
  9477. 6:19:57समझ में आएगा कि कौन सी अ कौन सी इशू के
  9478. 6:20:02लिए आपको क्या सॉल्यूशन देना है। ठीक है?
  9479. 6:20:04वो काफी जरूरी है। देखिए इसको कट कर सकता
  9480. 6:20:06हूं मैं। ठीक है? और आपको एक स्मूथ क्लीन
  9481. 6:20:10वीडियो मिल जाएगी। ठीक है? बिना किसी एरर
  9482. 6:20:12की। लेकिन मेरे हिसाब से जो एरर्स आते हैं
  9483. 6:20:14ना वो काफी कुछ सिखा जाते हैं हमें। ठीक
  9484. 6:20:17है? अब ये जो एरर आ रहा है मुझे ये एरर
  9485. 6:20:19मुझे ये बोल रहा है कि 403 फॉरबिडन मतलब
  9486. 6:20:21यहां पर कुछ एक्सेस रिलेटेड इशू हो गया
  9487. 6:20:23है। ठीक है? एक्सेस रिलेटेड इशू हो रहा
  9488. 6:20:25है। इसका मतलब अ यह साइन इन एंड पॉइंट है।
  9489. 6:20:28इस पे कुछ एक एक तरह का ऑथराइजेशन यह मांग
  9490. 6:20:30रहा है। तो यह जो इशू आ रही है वो इशू
  9491. 6:20:34इसीलिए आ रही है क्योंकि हमने हम पोस्ट
  9492. 6:20:36रिक्वेस्ट सेंड कर रहे हैं। ठीक है? और
  9493. 6:20:38जेडब्ल्यूडी बेस्ड ऑथेंटिकेशन करने की
  9494. 6:20:40कोशिश कर रहे हैं। लेकिन हमने सीएसआरएफ को
  9495. 6:20:42डिसेबल नहीं किया हुआ है। सीएसआरएफ एक
  9496. 6:20:44टाइप का अटैक है जो जिसके अगेंस्ट बाय
  9497. 6:20:47डिफ़ॉल्ट प्रोटेक्शन मिलती है स्प्रिंग
  9498. 6:20:49सिक्योरिटी की मदद से। और अगर हम सीएसआरएफ
  9499. 6:20:52अटैक्स को हैंडल करना चाहते हैं तो हमें
  9500. 6:20:54सीएसआरएफ टोकन रिक्वेस्ट में भेजना होगा
  9501. 6:20:56जो कि हम अभी नहीं भेज रहे। तो फिलहाल के
  9502. 6:20:58लिए मैं क्या करूंगा यहां पर
  9503. 6:21:00इसको एंटर करूंगा और डॉट सीएसआरf ऐसे लिख
  9504. 6:21:04दूंगा और फिर यहां पर सीएस आरf और फिर ऐसे
  9505. 6:21:09यहां पर सीएसआरf डॉट डिसेबल ऐसे लिख
  9506. 6:21:12दूंगा। ठीक है? अब ये मुझे सजेस्ट करेगा
  9507. 6:21:14कि मेथड रेफरेंस का इस्तेमाल कीजिए तो मैं
  9508. 6:21:16वह सजेशन एक्सेप्ट भी कर लूंगा। ठीक है?
  9509. 6:21:18तो एक हिसाब से मैं सीएसआरf टोकन को या
  9510. 6:21:20सीएसआरf प्रोटेक्शन को डिसेबल कर रहा हूं।
  9511. 6:21:22ठीक है? अब इस रन इस एप्लीकेशन को रन करने
  9512. 6:21:24से पहले मैं एक और चीज़ मुझे बता दूं। मुझे
  9513. 6:21:26ध्यान में आई कि ये जो JW सीक्रेट है ये
  9514. 6:21:29एक्चुअली बेस 64 नहीं है। तो अगर मैं रन
  9515. 6:21:32करूं तो ये फिर से मुझे एरर आएगी कि बेस
  9516. 6:21:3464 JW सीक्रेट नहीं है। मैं आपको रन करके
  9517. 6:21:37दिखा देता हूं। ठीक है? नहीं तो आपको
  9518. 6:21:39लगेगा कि ये बार-बार एरर आ रही है। ये
  9519. 6:21:41क्या हो रहा है। ठीक है? तो एरर आएगी
  9520. 6:21:43क्योंकि बेस 64 JW सीक्रेट नहीं है और
  9521. 6:21:46जानबूझ के वहां पर मैंने बेस 64 वैल्यू
  9522. 6:21:48नहीं डाली है। ठीक है? तो देखिए अगर मैं
  9523. 6:21:50रन करता हूं इशू आएगी और यहां पर अगर मैं
  9524. 6:21:53स्क्रॉल अप करता हूं यहां पर आप देखिएगा
  9525. 6:21:56तो यहां पर आपको अच्छा काफी ऊपर है एरर।
  9526. 6:21:59तो यहां पर देखिए अच्छा ये बोल रहा है
  9527. 6:22:02इललीगल बेस 64 कैरेक्टर जो कि है हफेन। तो
  9528. 6:22:05सबसे पहले तो हफन एक बेस 64 वैल्यू नहीं
  9529. 6:22:07है। तो इसको हटा के अगर हम किसी दूसरे
  9530. 6:22:09कैरेक्टर से भी रिप्लेस कर देते हैं तो
  9531. 6:22:11बाद में वो इशू आएगी कि बेस 64 वैल्यू ये
  9532. 6:22:13नहीं है। तो हमें बेस 64 वैल्यू डालनी
  9533. 6:22:15चाहिए यहां पर। तो मैं क्या करूंगा? यहां
  9534. 6:22:17पर आ जाता हूं ब्राउज़र में और यहां पर
  9535. 6:22:20लिखता हूं गेटिंग बेस 64 वैल्यू। ठीक है?
  9536. 6:22:25बेस 64 स्ट्रिंग। तो यहां पर कोई भी काफी
  9537. 6:22:27सारे एनकोडर्स होते हैं बेस 64 के। ठीक
  9538. 6:22:30है? आप यहां पर कोई भी स्ट्रिंग ऐड कर
  9539. 6:22:31दीजिए। ठीक है? जैसे कि मैं ये वाली जो
  9540. 6:22:34स्ट्रिंग है
  9541. 6:22:36इसी को मैं पेस्ट कर देता हूं यहां पर।
  9542. 6:22:39ठीक है? और ये हमें अ जो बेस 64 की जो
  9543. 6:22:42वैल्यू है वो उसे अ डिकोड करके दे देगा।
  9544. 6:22:45ठीक है? एनकोड करके देगा। सॉरी। तो ये तो
  9545. 6:22:48एनकोडर है। अच्छा ये डिकोडर है। एक हिसाब
  9546. 6:22:51से मुझे एनकोडर चाहिए। तो मैंने एनकोड पे
  9547. 6:22:53क्लिक किया। ठीक है? और यहां पर इसको करके
  9548. 6:22:57एनकोड कर दूंगा। तो देखिए ये जो है ये बेस
  9549. 6:22:5964 वैल्यू मिल गई है मुझे। इसको ले लूंगा।
  9550. 6:23:01इसको क्लोज कर देता हूं और यहां पर आकर
  9551. 6:23:04इसको पेस्ट कर दूंगा इस तरीके से। ठीक है?
  9552. 6:23:08अब एप्लीकेशन चल जानी चाहिए। ठीक है? कुछ
  9553. 6:23:10चेंजेस किए हमने। सीएसआरएफ डिसेबल किया।
  9554. 6:23:12साइन इन एंड पॉइंट को पब्लिक किया और जो
  9555. 6:23:15JW सीक्रेट है उसको प्रॉपर बेस 64 वैल्यूज़
  9556. 6:23:18से रिप्लेस किया। अब यहां पर आएंगे हम। तो
  9557. 6:23:21यहां पर हम रन करेंगे और देखिए हमें टोकन
  9558. 6:23:24इशू हो रहा है यहां पर। ठीक है? अब आप
  9559. 6:23:26पूछेंगे बेस 64 वैल्यू है क्या? होती क्या
  9560. 6:23:28है बेस 64 वैल्यू? तो देखिए बेस 64 वैल्यू
  9561. 6:23:31एक हिसाब से रिप्रेजेंटेशन है। ठीक है? एक
  9562. 6:23:34रिप्रेजेंटेशन है बाइनरी डेटा का और उसको
  9563. 6:23:37एस्की करैक्टर्स में ट्रांसलेट किया जाता
  9564. 6:23:38है। जैसे कि आप स्ट्रिंग देख रहे हो ये
  9565. 6:23:40रीडेबल नहीं है। ठीक है? क्योंकि इनकोडेड
  9566. 6:23:42है बेस 64 में। तो हमारी जो सीक्रेट होती
  9567. 6:23:44है वो इसी तरह से होती है। एप्लीकेशन में
  9568. 6:23:46होनी चाहिए एक्सपायरेशन सेकंड्स। और इस
  9569. 6:23:48सीक्रेट के अगेंस्ट जो हमारी JW टोकन है
  9570. 6:23:50वह इशू हो रही है। तो देखिए यह JडW टोकन
  9571. 6:23:53है। अब इसे हम कॉपी कर सकते हैं। यहां पर
  9572. 6:23:55आ सकते हैं जो हमारा ब्राउज़र है। और यहां
  9573. 6:23:57पर देखिए JW डिकोडर है JडW आईo में। ठीक
  9574. 6:24:00है? यहां पर आ जाइए JडW डिकोडर में और
  9575. 6:24:02यहां पर पेस्ट कर दीजिए। तो आपको इस इस
  9576. 6:24:07क्या बोलते हैं? इस टोकन में क्या-क्या
  9577. 6:24:09वैल्यूज़ है वो दिखाई देंगी। यहां पर ये
  9578. 6:24:11इसको डिकोड कर देगा। तो देखिए ये
  9579. 6:24:12एल्गोरिदम यहां पर बता रहा है इंक्रिप्शन
  9580. 6:24:14एल्गोरिदम जो कि है एच एस 256 और यहां पर
  9581. 6:24:18पेलोड में आपको दिखाई देगा यूजर वन के
  9582. 6:24:20अगेंस्ट ये JWE टोकन इशू हुई है और यह
  9583. 6:24:23सब्जेक्ट में सब्जेक्ट में कैसे आ गया ये
  9584. 6:24:26तो देखिए यूजरनेम यूजर वन है और यहां पर
  9585. 6:24:29जब जनरेट कर रहे हो आप सब्जेक्ट में खुद
  9586. 6:24:31ही सेट कर रहे हो यूजर नेम तो यहां पर आप
  9587. 6:24:33जो भी सेट कर रहे हो वो दिखाई देगा आपको
  9588. 6:24:35ठीक है और चीज़ आपको यहां पर दिखाई देगी
  9589. 6:24:37इशूड एट ये इशूड एट कब है देखिए आज की डेट
  9590. 6:24:40एक्सपायरेशन टाइम भी आपको दिखाई देगा यहां
  9591. 6:24:42पर। ठीक है? ये सब िक्स का सेकंड्स अप्रोच
  9592. 6:24:46है। देखिए सेकंड्स में दिखाई दे रहा है
  9593. 6:24:47आपको। लेकिन यह टाइम स्टैंप है। ठीक है?
  9594. 6:24:49इसी तरीके से होता है। और ये सीक्रेट है
  9595. 6:24:51यहां पर। ठीक है? तो इस तरीके से जो है
  9596. 6:24:56आपकी JW टोकन तो इशू हो रही है। ठीक है?
  9597. 6:24:58तो कांग्रेचुलेशंस। अब हम यहां तक पहुंच
  9598. 6:25:00गए। ठीक है? थोड़ी दिक्कत आई बीच में।
  9599. 6:25:02थोड़ी एरर्स है जिसको मैंने क्लीन और
  9600. 6:25:04ट्रांसपेरेंट रखा है। ठीक है? आपके एंड पर
  9601. 6:25:06भी अगर ये एरर्स आते हैं तो आपको अब पता
  9602. 6:25:08होगा कि ये एरर्स क्यों आ रहे हैं और आप
  9603. 6:25:10उनको आसानी से सॉल्व कर पाओगे। ठीक है? तो
  9604. 6:25:15ठीक है? उम्मीद करता हूं यह हेल्पफुल रहा।
  9605. 6:25:22तो देखिए दोस्तों, JWD टोकन तो हम इशू कर
  9606. 6:25:25पा रहे हैं। ठीक है? अ जो क्लाइंट है जहां
  9607. 6:25:27से भी रिक्वेस्ट आ रही है यानी कि वेब
  9608. 6:25:29एप्लीकेशन से आ रही है, मोबाइल एप्लीकेशन
  9609. 6:25:31से आ रही है या हो सकता है आप पोस्टमैन से
  9610. 6:25:34ऐसे भेज रहे हो रिक्वेस्ट JW टोकन इशू
  9611. 6:25:37करने की एबिलिटी आ चुकी है और यूजर को JW
  9612. 6:25:39टोकन यूजर या क्लाइंट उसको JW टोकन मिल जा
  9613. 6:25:42रही है लेकिन अब JW टोकन इशू हो चुका है
  9614. 6:25:44तो वो सब्सीक्वेंट रिक्वेस्ट में टोकन तो
  9615. 6:25:47भेजेगा कैसे भेजेगा टोकन ऐसे कॉपी कर लेगा
  9616. 6:25:50उसको ठीक है और कोई भी रिक्वेस्ट है यानी
  9617. 6:25:52कि यह रिक्वेस्ट अगर मैं करना चाह रहा हूं
  9618. 6:25:54यहां पर ऑथराइजेशन में आएगा ठीक है?
  9619. 6:25:56ऑथराइज़ेशन में नहीं सॉरी हेडर में आएगा।
  9620. 6:25:59हेडर में एक ऑथराइज़ेशन हेडर नाम का एक
  9621. 6:26:02हेडर होता है। ऑथराइज़ेशन सेलेक्ट करूंगा
  9622. 6:26:04और फिर यहां पर बेर और फिर टोकन को पेस्ट
  9623. 6:26:07कर दूंगा। इस तरीके से टोकन में भेजूंगा
  9624. 6:26:10मैं अ बैक एंड को। ठीक है? अब दिक्कत ये
  9625. 6:26:14है इसको वैलिडेट कैसे करें? ठीक है? तो
  9626. 6:26:16किसी भी रिक्वेस्ट के साथ हर रिक्वेस्ट के
  9627. 6:26:18साथ यह टोकन आ सकता है। तो आपको ऐसा कुछ
  9628. 6:26:21सोर्स कोड लिखना होगा जो हर रिक्वेस्ट को
  9629. 6:26:24इंटरसेप्ट करे। हर रिक्वेस्ट को रोके और
  9630. 6:26:27उसमें यह टोकन है या नहीं उसको देखें।
  9631. 6:26:29टोकन अगर प्रेजेंट है तो टोकन को रिट्रीव
  9632. 6:26:31करें और फिर उसको वैलिडेट करके रिक्वेस्ट
  9633. 6:26:33को आगे जाने दें। ठीक है? रिक्वेस्ट को
  9634. 6:26:36वैलिडेट करें। इसका मतलब इसमें टोकन वैलिड
  9635. 6:26:38है क्या? पहले यह देखिए। टोकन एक्सपायर हो
  9636. 6:26:40चुका है क्या? यह भी देखना पड़ेगा। और फिर
  9637. 6:26:42जो रिक्वेस्ट आई है वो जो एंड पॉइंट पे जा
  9638. 6:26:45रही है उसको एक्सेस करने की परमिशन है
  9639. 6:26:47क्या उसे? तो ये रूल्स से पता चल जाएगा।
  9640. 6:26:50ठीक है? तो यहां पर आपको क्या करना है?
  9641. 6:26:53यहां पर हम इस डायग्राम पर आ जाएंगे। ठीक
  9642. 6:26:56है? तो ये है स्प्रिंग सिक्योरिटी का
  9643. 6:26:58डायग्राम। ठीक है? और यहां पर एक फ़्टर चेन
  9644. 6:27:01नाम की एक चीज है। ठीक है? तो ये फ़्टर चेन
  9645. 6:27:04का काम क्या होता है? इसमें फ़्टर्स होते
  9646. 6:27:05हैं। करेक्ट? ये फ़्टर चेन है। इसमें
  9647. 6:27:08फ़्टर्स होते हैं तरह-तरह के जिसका काम है
  9648. 6:27:10रिक्वेस्ट को इंटरसेप्ट करना, रिक्वेस्ट
  9649. 6:27:11को रोकना और हर रिक्वेस्ट पर कुछ
  9650. 6:27:13प्रोसेसिंग करना, कुछ वैलिडेट करना, कुछ
  9651. 6:27:15चेक करना। ठीक है? और ये एक चेन की तरह
  9652. 6:27:18होती है। यानी कि एक के बाद दूसरा
  9653. 6:27:19एग्जीक्यूट होता है, दूसरे के बाद तीसरा।
  9654. 6:27:21एक लाइन में सारी चीजें एग्जीक्यूट होती
  9655. 6:27:22है। तो, इसीलिए इसे चेन कहा जाता है। और
  9656. 6:27:25यह फ़िल्टर की चेन है। इसीलिए इसे फ़्टर चेन
  9657. 6:27:27कहा जाता है। ठीक है? तो, सबसे बढ़िया
  9658. 6:27:31तरीका JWT टोकन को वेरीफाई करने का है यह
  9659. 6:27:35फ़्टर चेन। तो, यहां पे हम क्या करेंगे?
  9660. 6:27:38यहां पर ही हम अपना एक कस्टम फ़िल्टर
  9661. 6:27:40बनाएंगे। ठीक है? यह हमारा फ़्टर होगा। ठीक
  9662. 6:27:44है? हमारा फ़्टर होगा। यह हम बनाएंगे और इस
  9663. 6:27:47फ़िल्टर का कोड भी हम लिखेंगे। तो यहां पर
  9664. 6:27:49इस वीडियो से देखिए आपको क्या-क्या समझ
  9665. 6:27:50में आएगा। आपको समझ में आएगा सबसे पहले तो
  9666. 6:27:53कि JडW टोकन को वैलिडेट कैसे करना है।
  9667. 6:27:56दूसरी चीज आपको यह समझ में आएगी कि अपना
  9668. 6:27:59खुद का फ़्टर किस तरीके से लिखना है और
  9669. 6:28:01उसको फ़्टर चेन में कैसे ऐड करना है। यह
  9670. 6:28:04काफी जरूरी है क्योंकि फ़िल्टर चेन का
  9671. 6:28:06इस्तेमाल आप सिर्फ टोकन वैलिडेशन के लिए
  9672. 6:28:08नहीं आप नए फ़िल्टर्स किसी और चीज़ के लिए
  9673. 6:28:10भी कर सकते हो। लॉगिन के लिए एक नया फ़्टर
  9674. 6:28:11बना सकते हो। यानी कि अगर आपको कोई इशू आ
  9675. 6:28:14रही है और आपको समझ में नहीं आ रहा वो इशू
  9676. 6:28:16क्यों आ रही है तो आप देखना चाहते हो कि
  9677. 6:28:18हर रिक्वेस्ट में क्या डेटा आ रहा है क्या
  9678. 6:28:20पैरामीटर आ रहा है सर्वर पे क्या हिट हो
  9679. 6:28:22रहा है तो आप एक फ़िल्टर बना सकते हो जिसका
  9680. 6:28:24काम है सिर्फ लॉक करना ठीक है वो सारी
  9681. 6:28:26रिक्वेस्ट को इंटरसेप्ट करेगा और लॉक
  9682. 6:28:28करेगा आप उसको फ़िल्टर चेन में कहीं पर भी
  9683. 6:28:29प्लेस भी कर सकते हो कहां पर प्लेस करना
  9684. 6:28:31है फिल्टर चेन में या सबसे पहले
  9685. 6:28:33एग्जीक्यूट होनी है सबसे एंड में या कहीं
  9686. 6:28:34बीच में एग्जीक्यूट होनी है ये पूरा
  9687. 6:28:35कंट्रोल हमारे हाथ में है। ठीक है? मैं
  9688. 6:28:38आपको ये स्टेप बाय स्टेप गाइड दूंगा। तो
  9689. 6:28:39ठीक है? आपको कांसेप्ट तो समझ गए ना।
  9690. 6:28:41देखिए कांसेप्ट समझना जरूरी है। हम फिल्टर
  9691. 6:28:42क्यों बना रहे हैं? लोग क्या है अक्सर कोड
  9692. 6:28:44देख लेते हैं और फिर डायरेक्ट इंप्लीमेंट
  9693. 6:28:46करने लग जाते हैं। फिल्टर क्यों बना रहे
  9694. 6:28:47हैं? वो समझ में आना चाहिए। फ़्टर बनाने से
  9695. 6:28:50पहले आपको ये समझ में आना चाहिए कि
  9696. 6:28:51फ़िल्टर्स का मतलब क्या होता है? फ़्टर चेन
  9697. 6:28:53क्या होती है? और ये पार्ट यहां पर फ़्टर
  9698. 6:28:57ऐड करने के लिए हमने क्यों चुना? हम कहीं
  9699. 6:28:59और कोड क्यों नहीं लिख सकते? फिल्टर इसलिए
  9700. 6:29:01बना रहे हैं क्योंकि फिल्टर्स एग्जीक्यूट
  9701. 6:29:03होते हैं हर रिक्वेस्ट के आने पर और हर
  9702. 6:29:05रिक्वेस्ट को इंटरसेप्ट करते हैं। ये
  9703. 6:29:07फिल्टर चेन का पार्ट होता है। ठीक है? तो
  9704. 6:29:10यहां पर मैं क्या करूंगा? यहां पर आ
  9705. 6:29:11जाऊंगा। ठीक है? हमारे कोड में और मैं
  9706. 6:29:13यहां पर एक फ़्टर बना दूंगा। ठीक है? और
  9707. 6:29:16यहां पर इस फ़िल्टर का नाम मैं दूंगा ऑथ
  9708. 6:29:18ऑथेंटिकेशन टोकन फ़िल्टर। यह हमारा एक
  9709. 6:29:22कस्टम फ़िल्टर होगा। ठीक है? देखिए आप कभी
  9710. 6:29:25भी फिल्टर बनाते हो ना तो उसको एक चीज से
  9711. 6:29:28एक्सटेंड करना है जो कि है वंस पर
  9712. 6:29:31रिक्वेस्ट फिल्टर। ये एक क्लास है। देखिए
  9713. 6:29:33ये एक क्लास है और इस पर अगर आप ओवर
  9714. 6:29:36करेंगे तो ये एक हिसाब से एक एब्स्ट्रैक्ट
  9715. 6:29:39क्लास है। ठीक है? और यह देखिए इसका मतलब
  9716. 6:29:41क्या है? फ़िल्टर बेस क्लास दैट एम्स टू
  9717. 6:29:43गारंटी सिंगल एग्जीक्यूशन पर रिक्वेस्ट
  9718. 6:29:47डिस्पैच। ठीक है? तो अगर आप इस
  9719. 6:29:49एब्स्ट्रैक्ट क्लास का इस्तेमाल करते हो,
  9720. 6:29:51इसका मतलब क्या है? कि यह गारंटी देगा कि
  9721. 6:29:54ये जो फिल्टर आप बना रहे हो वो एक बार एक
  9722. 6:29:56रिक्वेस्ट के लिए एग्जीक्यूट होगा। सिर्फ
  9723. 6:29:57एक बार। ठीक है? मल्टीपल टाइम्स
  9724. 6:29:59एग्जीक्यूट नहीं होगा। सिर्फ एक बार एक
  9725. 6:30:00रिक्वेस्ट के लिए एग्जीक्यूट होगा। ठीक
  9726. 6:30:02है? और उसमें ये मेथड प्रोवाइड किया जाता
  9727. 6:30:04है ड फ़ फ़िल्टर इंटरनल मेथड जिसमें ये
  9728. 6:30:06एचटीटीp सर्लेट रिक्वेस्ट और रिस्पांस
  9729. 6:30:08आर्गुमेंट्स दिए जाते हैं। तो आपको उसका
  9730. 6:30:10इस्तेमाल करके काम करना है। http सर्लेट
  9731. 6:30:13रिक्वेस्ट में आपको रिक्वेस्ट की ऑब्जेक्ट
  9732. 6:30:15मिल जाएगी और रिस्पांस में आपको रिस्पांस
  9733. 6:30:17मिल जाएगा। ठीक है? तो यहां पर आप आइए। अब
  9734. 6:30:20जैसे कि मैंने कहा यह एक एब्स्ट्रैक्ट
  9735. 6:30:22क्लास है तो यहां पर इंप्लीमेंट मेथड्स पर
  9736. 6:30:23क्लिक करेंगे और यह देखिए इसको इंप्लीमेंट
  9737. 6:30:25कर लिया और इसको मैं एज ए स्प्रिंग मैनेज
  9738. 6:30:28कंपोनेंट भी डिफाइन कर दूंगा। स्प्रिंग
  9739. 6:30:30मैनेज कंपोनेंट है ये। ठीक है? अब यहां पर
  9740. 6:30:32आ जाते हैं। अब देखिए हमारे पास एक फ़िल्टर
  9741. 6:30:35बनाना है हमें। तो मैं क्या करूंगा? देखिए
  9742. 6:30:37सबसे पहले तो लॉगर ऐड कर दूंगा। यहां पर
  9743. 6:30:39लॉगर। ठीक है? लॉगर। अच्छा लॉगर ऐसे नहीं
  9744. 6:30:43करता हूं मैं। अह इसको यहां पर सिस्टम डॉट
  9745. 6:30:45डॉट डॉट प्रिंटिन करता हूं। ठीक है? लॉगिन
  9746. 6:30:47के लिए मुझे लॉगर का ऑब्जेक्ट लेना
  9747. 6:30:48पड़ेगा। लेकिन यहां पर लिख देता हूं ऑथ
  9748. 6:30:50टोकन फ़्टर कॉल्ड ऐसे। ठीक है? तो, यह
  9749. 6:30:55मैंने यहां पर ऐसे ही लिख दिया है। ऐसे ही
  9750. 6:30:57टाइप कर दिया है। और हम क्या करेंगे? इसको
  9751. 6:30:59पहले तो टेस्ट करेंगे कि ये फ़्टर हर
  9752. 6:31:01रिक्वेस्ट पर कॉल हो रहा है या नहीं। ठीक
  9753. 6:31:03है? तो, मैं क्या करूंगा? मैं अह आ जाता
  9754. 6:31:07हूं अ मुझे आना होगा
  9755. 6:31:11सिक्योरिटी कॉन्फ़िगरेशन में। और मैं यहां
  9756. 6:31:14पर सिक्योरिटी कॉन्फ़िगरेशन में मुझे ऐड
  9757. 6:31:16करना होगा ऑथ टोकन फिल्टर। तो मैं क्या
  9758. 6:31:19करूंगा? यहां पर आ जाऊंगा। ठीक है? और
  9759. 6:31:22यहां पर क्योंकि स्प्रिंग मैनेज कंपोनेंट
  9760. 6:31:23है तो यहां पर लिख दूंगा ऑथ टोकन फ़्टर। और
  9761. 6:31:26ऑथ टोकन फ़िल्टर का एक ऑब्जेक्ट बना लूंगा।
  9762. 6:31:28और यहां पर ठीक है? यहां पर मैं इसे
  9763. 6:31:31फ़िल्टर में ऐड कर दूंगा। तो मैं यहां पर
  9764. 6:31:33कहूंगा HTTP डॉट ऐड फ़िल्टर बिफोर। देखिए
  9765. 6:31:37http डॉट ऐड फ़िल्टर बिफोर। तो आपके पास
  9766. 6:31:40अलग-अलग तरह के मेथड है कि आप ऐड फिल्टर
  9767. 6:31:42बिफोर मतलब आपको एक फिल्टर का नाम देना है
  9768. 6:31:45और उसके आगे आप जो भी फिल्टर लगा रहे हो
  9769. 6:31:46आप लगा सकते हो। ऐड फ़िल्टर आफ्टर आप किसी
  9770. 6:31:49एक पर्टिकुलर फ़िल्टर के बाद में भी फ़्टर
  9771. 6:31:52को ऐड कर सकते हो और ऐड फ़िल्टर ऐड आप एक
  9772. 6:31:54पर्टिकुलर लोकेशन पर भी फ़्टर चेन में फ़्टर
  9773. 6:31:57को ऐड कर सकते हो। तो अलग-अलग तरह से आप
  9774. 6:31:59कर सकते हो। मैं ऐड फ़िल्टर बिफोर का
  9775. 6:32:00इस्तेमाल करूंगा। और मैं यहां पर ऐड ऑथ
  9776. 6:32:03टोकन फ़िल्टर को ऐड कर दूंगा। और कौन से
  9777. 6:32:05फ़्टर के आगे मुझे ऐड करना है? तो देखिए
  9778. 6:32:06पहले तो फिल्टर लिखना है आपको और फिर कौन
  9779. 6:32:08से फिल्टर के आगे लिख लगा रहे हो वो लिखना
  9780. 6:32:11है। तो मैं ऐड करना चाहता हूं इसे यूजरनेम
  9781. 6:32:13पासवर्ड ऑथेंटिकेशन टोकन फ़्टर के आगे। ठीक
  9782. 6:32:18है? तो ये वो फिल्टर है जो यूजरनेम और
  9783. 6:32:19पासवर्ड को वैलिडेट करता है। मैं उसके आगे
  9784. 6:32:22ऐड करना चाहता हूं जेडब्ल्यूटी का फ़्टर।
  9785. 6:32:24ठीक है? क्योंकि यूजरनेम पासवर्ड वैलिडेट
  9786. 6:32:26होने से पहले मुझे टोकन वैलिडेट करना है
  9787. 6:32:27और यूजर को ऑथेंटिकेट कर लेना है। ठीक है?
  9788. 6:32:30इस फ़िल्टर पर हो करके आप पढ़ भी सकते हो इस
  9789. 6:32:32फ़िल्टर के बारे में। लेकिन ये मुझे करना
  9790. 6:32:33है और इसको एक बार रन कर लेते हैं। रन
  9791. 6:32:36करके देखते हैं कि कोई भी रिक्वेस्ट के
  9792. 6:32:37लिए ये ऑड टोकन फिल्टर में हमने जो लॉगिन
  9793. 6:32:40लगाई हुई है वो प्रिंट हो रही है या नहीं।
  9794. 6:32:42ठीक है? तो मैं क्या करूंगा? यहां पर आ
  9795. 6:32:44जाता हूं। देखिए ये मैंने प्रिंट एलन लगा
  9796. 6:32:47रखा है। इसको क्लियर कर देता हूं। अब कोई
  9797. 6:32:50भी रिक्वेस्ट भेजेंगे हम। ये रिक्वेस्ट
  9798. 6:32:51भेज देते हैं। ठीक है? तो यहां पर देखिए
  9799. 6:32:54ऑथ टोकन फ़िल्टर कॉल्ड। ठीक है? फ़िल्टर तो
  9800. 6:32:57कॉल हो रहा है। देखिए हर रिक्वेस्ट के लिए
  9801. 6:32:58अगर मैं 10 बार कॉल करूं किसको? चार बार
  9802. 6:33:00तो मैं कर चुका हूं कॉल। तो देखिए चार बार
  9803. 6:33:02आ चुकी है। ठीक है? तो यह फ़िल्टर वर्क कर
  9804. 6:33:05रहा है हर रिक्वेस्ट के लिए। आप कोई भी
  9805. 6:33:06रिक्वेस्ट भेजो। ठीक है? यहां से कोई भी
  9806. 6:33:08रिक्वेस्ट भेजो। दूसरी रिक्वेस्ट भेजोगे
  9807. 6:33:10तो उसके लिए भी फ़िल्टर कॉल होगा।
  9808. 6:33:12रिक्वेस्ट सक्सेसफुल हो या ना हो
  9809. 6:33:14रिक्वेस्ट सर्वर पर हिट हो रही है तो वो अ
  9810. 6:33:17कॉल होगा ही। ठीक है? इतना काम हमने कर
  9811. 6:33:20लिया है। अब हमें क्या करना है? अब हमें
  9812. 6:33:22इसको आगे डिफाइन करना है। ठीक है? इसको
  9813. 6:33:24आगे डिफाइन करने के लिए हम क्या करेंगे?
  9814. 6:33:26हम इसमें से जो डी हेडर है उसको
  9815. 6:33:29एक्सट्रैक्ट करेंगे। देखिए JW टोकन को
  9816. 6:33:32वैलिडेट करने के लिए ये फिल्टर बनाया गया
  9817. 6:33:33है। ठीक है? सीधी सी बात। अब यहां पर JW
  9818. 6:33:36टोकन किस फिल्टर किस फॉर्म में आएगा? किस
  9819. 6:33:38फिल्टर में किस फॉर्म में आएगा? ऑथराइजेशन
  9820. 6:33:40हेडर में बेर स्पेस JW टोकन ऐसे आएगा। तो
  9821. 6:33:43सबसे पहले तो ऑथराइज़ेशन हेडर को हमें
  9822. 6:33:45रिट्रीव करना है। उसके बाद में इसको
  9823. 6:33:47रिट्रीव करके इसमें से ये टोकन निकाल के
  9824. 6:33:50इसे वैलिडेट करना है। और अगर वैलिड है तो
  9825. 6:33:52आगे जाने देना है। वैलिड नहीं है तो एरर
  9826. 6:33:54थ्रो कर देना है सीधे-सीधे। ठीक है? सिंपल
  9827. 6:33:56है। तो यहां पर हम लिखेंगे अ मैं सबसे
  9828. 6:34:00पहले तो लिखूंगा अ ट्राई ब्लॉक। ठीक है?
  9829. 6:34:02ट्राई कैच ब्लॉक लगा लेते हैं यहां पर।
  9830. 6:34:05ठीक है? कैच और फिर यहां पर एक्सेप्शन।
  9831. 6:34:08ठीक है? एक्सेप्शन ई और फिर यहां पर ई डॉट
  9832. 6:34:10प्रिंट स्ट्रक्ट इस तरीके से। ठीक है?
  9833. 6:34:13यहां पर आ जाते हैं। अब यहां पर मैं क्या
  9834. 6:34:15करूंगा? अह यहां पर अह मुझे अह लिखना है।
  9835. 6:34:20मैं एक मेथड बना लेता हूं। ठीक है? तो एक
  9836. 6:34:22मेथड के जरिए मैं पास करूंगा JWE टोकन को।
  9837. 6:34:24तो मैं करूंगा प्राइवेट स्ट्रिंग पार्स gw
  9838. 6:34:28टी इस तरीके से अच्छा और यहां पर लिख
  9839. 6:34:32दूंगा ये ठीक है तो ये मेथड बना रहा हूं
  9840. 6:34:34मैं और ये मेथड का जो इनपुट रहेगा वो
  9841. 6:34:37रहेगा http सर्लेट रिक्वेस्ट
  9842. 6:34:41और फिर रिक्वेस्ट होगा यहां पर और फिर मैं
  9843. 6:34:44कहूंगा यहां पर स्ट्रिंग ऊप्स स्ट्रिंग
  9844. 6:34:47जेड इज़ इक्वल टू jw यूटिल्स
  9845. 6:34:53अच्छा JWT यूटर्स का हमें ऑब्जेक्ट बनाना
  9846. 6:34:57होगा यहां पर। ठीक है? तो मैं क्या करता
  9847. 6:34:58हूं? यहां पर आ जाता हूं और यहां पर ऑटो
  9848. 6:35:00वायर करूंगा और फिर JWT यूटर्स। ठीक है?
  9849. 6:35:04इस तरीके से और यहां पर आ जाते हैं JWT
  9850. 6:35:07यूटर्स डॉट गेट JWT फ्रॉम हेडर। ठीक है?
  9851. 6:35:10और गेट JWT फ्रॉम हेडर में हम रिक्वेस्ट
  9852. 6:35:12के ऑब्जेक्ट भी दे देंगे यहां पर। ठीक है?
  9853. 6:35:15और फिर मुझे यहां पर रिटर्न JWT। ठीक है?
  9854. 6:35:18तो मुझे यहां पर अ जो हेडर है हेडर में से
  9855. 6:35:21जेडब्ल्यूटी एक्सट्रैक्ट करके मैं उसे
  9856. 6:35:23रिटर्न कर रहा हूं यहां पर। ठीक है? अब ये
  9857. 6:35:25मेथड क्या है? तो अगर ये अ मिनट ये जो
  9858. 6:35:29मेथड है इसको आप देखोगे गेट जेडब्ल्यूटी
  9859. 6:35:31फ्रॉम हेडर इसमें अभी हमने डिफाइन नहीं कर
  9860. 6:35:33रखा है। ठीक है? यहां पर एक एम्प्टी
  9861. 6:35:34स्ट्रिंग रिटर्न हो रही है। तो मैं क्या
  9862. 6:35:36करूंगा? यहां पर http सर्लेट रिक्वेस्ट का
  9863. 6:35:38ऑब्जेक्ट ले लूंगा रिक्वेस्ट और फिर यहां
  9864. 6:35:41पर सबसे पहले तो मैं लूंगा बेरर
  9865. 6:35:46टोकन
  9866. 6:35:47और फिर इज़ इक्वल टू रिक्वेस्ट डॉट गेट
  9867. 6:35:50हेडर। ठीक है? तो रिक्वेस्ट डॉट गेट हेडर
  9868. 6:35:52में से मैं ऑथोराइजेशन
  9869. 6:35:54हेडर को एक्सट्रैक्ट करूंगा ऐसे। तो मैं
  9870. 6:35:57कह रहा हूं रिक्वेस्ट में से ये हेडर मुझे
  9871. 6:35:59दे दीजिए। तो मुझे यहां पर बेर स्पेस टोकन
  9872. 6:36:02आ जाएगी। ठीक है? बेर स्पेस टोकन। और फिर
  9873. 6:36:05मैं यहां पर कहूंगा इफ बेरर टोकन इज नॉट
  9874. 6:36:08इक्वल टू नल तो अगर यह टोकन नल नहीं है।
  9875. 6:36:11ठीक है? यह टोकन नल नहीं होनी चाहिए। ठीक
  9876. 6:36:13है? नल हो रही है तो प्रॉब्लम है। दिक्कत
  9877. 6:36:15है यहां पर। अगर ये टोकन नल नहीं है और ये
  9878. 6:36:19बेरर टोकन अगर स्टार्ट हो रही है बेर
  9879. 6:36:23प्रीफिक्स से। ठीक है? बेर प्रफिक्स बेर
  9880. 6:36:26और स्पेस अगर उससे स्टार्ट हो रही है तो
  9881. 6:36:29आपको क्या करना है? रिटर्न करना है। और
  9882. 6:36:31मैं यहां पर स्ट्रिंग का इस्तेमाल करूंगा।
  9883. 6:36:34ठीक है? तो मैं स्ट्रिंग फंक्शनंस का
  9884. 6:36:36इस्तेमाल करूंगा। बेरर टोकन डॉट
  9885. 6:36:37सबस्ट्रिंग और यहां पर सेवन लिख दूंगा।
  9886. 6:36:39इसका मतलब क्या है पता है? पहले के सात
  9887. 6:36:42कैरेक्टर्स छोड़ के जो बाकी की स्ट्रिंग
  9888. 6:36:44है उसको ये रिटर्न कर देगा। पहले के सात
  9889. 6:36:46कररेक्टर्स क्यों? क्योंकि पहले के सात
  9890. 6:36:48कररेक्टर्स में ये आ जाता है। देखिए बेरर
  9891. 6:36:50छह कैरेक्टर्स हैं और स्पेस सातवां
  9892. 6:36:52कररेक्टर्स है। तो मुझे ये नहीं चाहिए।
  9893. 6:36:53मुझे ये निकालना है। इसको निकाल के जो
  9894. 6:36:55बाकी की स्ट्रिंग है उसको मैं रिटर्न कर
  9895. 6:36:57दूंगा। तो मुझे इस लाइन से मिल जाएंगी
  9896. 6:37:00जेडब्ल्यूडी टोकन एक्सट्रैक्टेड। और फिर
  9897. 6:37:02अगर यह नहीं होता है, इफ़ इफ़ कंडीशन में
  9898. 6:37:04मैच नहीं करता है, तो मैं यहां से रिटर्न
  9899. 6:37:06करूंगा नल वैल्यू। ठीक है? इतना काम हो
  9900. 6:37:09गया हमारा। इस मेथड के जरिए हमने
  9901. 6:37:11एक्सट्रैक्ट कर लिया JW टोकन। करेक्ट? JW
  9902. 6:37:15टोकन हमें मिल गया यहां। और यहां से मैंने
  9903. 6:37:17रिटर्न करके ले लिया यहां। तो मैं यहां पर
  9904. 6:37:19क्या करूंगा? स्ट्रिंग JWT और यहां पर लिख
  9905. 6:37:22दूंगा और पास JWT और यहां पर रिक्वेस्ट
  9906. 6:37:25ऑब्जेक्ट को पास कर दूंगा। इतना काम हो
  9907. 6:37:28गया। अब मेरे पास क्या आ गया? मेरे पास आ
  9908. 6:37:30चुका है जीWT का टोकन। अब JWT टोकन को आगे
  9909. 6:37:33ले जाना है मुझे। ठीक है? तो मैं क्या
  9910. 6:37:35करूंगा? यहां पर मैं लिखूंगा इफ JWT नॉट
  9911. 6:37:40इक्वल टू नल। ठीक है? JWT नल नहीं होना
  9912. 6:37:42चाहिए। ठीक है? और JWT यूटिल्स को वैलिडेट
  9913. 6:37:48ये JWT टोकन है। उसको वैलिडेट करना है
  9914. 6:37:50हमें। ठीक है? तो टोकन को वैलिडेट करेंगे
  9915. 6:37:52हम। तो ये वैलिडेशन का लॉजिक तो हमने अब
  9916. 6:37:54लिखा हुआ नहीं है। लिखा हुआ है हमने
  9917. 6:37:56वैलिडेशन का लॉजिक? जी नहीं। तो हमें ये
  9918. 6:37:59जो वैलिडेशन का लॉजिक है इसको कंप्लीट
  9919. 6:38:02करने की जरूरत है। तो मैं क्या करूंगा?
  9920. 6:38:03देखिए हमारे पास टोकन एज अ पैरामीटर आएगा।
  9921. 6:38:06ठीक है? और फिर उसको लेके हम वैलिडेट
  9922. 6:38:08करेंगे। तो यहां पर मैं लिखूंगा स्ट्रिंग
  9923. 6:38:10अ JWT टोकन।
  9924. 6:38:13अब JW टोकन को लेकर हम वैलिडेट करेंगे। तो
  9925. 6:38:16मैं क्या करूंगा? यहां पर अ मैं लिखूंगा
  9926. 6:38:19ट्रैक ब्लॉक को लिख लेंगे। ठीक है? इस
  9927. 6:38:21तरीके से और यहां पर लिखूंगा JWTS
  9928. 6:38:24ये एक इनबिल्ट क्लास है। आप देख सकते हो।
  9929. 6:38:26ठीक है? है JWTS और ये JSN वेब टोकन से आ
  9930. 6:38:28रही है क्लास जो लाइब्रेरी है JSN वेब
  9931. 6:38:30टोकन की उससे और मैं यहां पर पार्सर का
  9932. 6:38:32इस्तेमाल करूंगा पार्स करूंगा इसे और फिर
  9933. 6:38:34वेरीफाई विथ और यहां पर अ मैं लिख दूंगा अ
  9934. 6:38:39की की ले लूंगा यहां पर ठीक है और फिर
  9935. 6:38:43यहां पर ये पूरा का पूरा जो सिंटेक्स है
  9936. 6:38:44वो आपको लिखना है बिल्ड करूंगा ठीक है
  9937. 6:38:46बिल्ड डॉट बार्स साइन क्लेम्स और फिर यहां
  9938. 6:38:50पर ऑथ टोकन सॉरी जेड टोकन इस तरीके से ठीक
  9939. 6:38:55ठीक है? और यहां पर मुझे एरर आ रही है तो
  9940. 6:38:57मुझे शायद इसको कास्ट करना पड़े। तो अच्छा
  9941. 6:39:00यहां पर सीक्रेट की
  9942. 6:39:03यहां पर इसको अ कास्ट कर देंगे। ठीक है?
  9943. 6:39:06कास्ट। ठीक है? तो इतना चल गया ये।
  9944. 6:39:11और यहां पर कैच ब्लॉक ऐड करने की जरूरत
  9945. 6:39:13है। तो यहां पर मैं लिख दूंगा कैच
  9946. 6:39:15एक्सेप्शन ई और यहां पर हम प्रिंट कर
  9947. 6:39:18देंगे ई डॉट प्रिंटst। ठीक है? इतना हो
  9948. 6:39:21गया। वैलिडेशन का भी लॉजिक हमने लिख लिया
  9949. 6:39:23है। सिंपल सा लॉजिक है। ठीक है? इतना कुछ
  9950. 6:39:25डिफिकल्ट है नहीं। अच्छा यहां पर एरर
  9951. 6:39:27क्यों आ रही है अब? अच्छा यहां पर ये हाफ
  9952. 6:39:29हाफ पिकक्ड है। ठीक है? हमने ये जो मेथड
  9953. 6:39:32है इसे कंप्लीट नहीं किया है। तो यहां पर
  9954. 6:39:34ये कंप्लीट करने की जरूरत है। तो यहां पर
  9955. 6:39:37सबसे पहले तो हमने देखिए पहले चेक कर लिया
  9956. 6:39:39कि वैलिड है या नहीं टोकन। ठीक है? वैलिड
  9957. 6:39:41होने के बाद हमें क्या करना है? हम यहां
  9958. 6:39:43पर आएंगे और फिर यहां पर हम यूजरनेम
  9959. 6:39:46लेंगे। ठीक है? यूजरनेम तो मैं यहां पर
  9960. 6:39:48इस्तेमाल करूंगा JWT यूutls डॉट गेट।
  9961. 6:39:52अच्छा गेट यूजरनेम फ्रॉम टोकन चाहिए हमें
  9962. 6:39:57तो गेट यूजरनेम
  9963. 6:40:00फ्रॉम टोकन करके एक मेथड हमें बनाना होगा।
  9964. 6:40:03ठीक है? तो ये मेथड बनेगा और इसमें हम पास
  9965. 6:40:06करेंगे JW। तो देखिए हमने Jडw टोकन इशू
  9966. 6:40:09करते वक्त उसमें यूजरनेम को एनकोड किया था
  9967. 6:40:11एज अ सब्जेक्ट। तो उसको रिट्रीव करना है
  9968. 6:40:13हमें। क्योंकि ये जो टोकन आई है अब
  9969. 6:40:15रिक्वेस्ट में ये कौन से यूजर ने भेजे?
  9970. 6:40:17देखिए यू टोकन तो वैलिड है। हमने वैलिड
  9971. 6:40:19वैलिडेट कर लिया। ठीक है? इसमें से अब
  9972. 6:40:22यूजरनेम को रिट्रीव करना है। यूजरनेम को
  9973. 6:40:24रिट्रीव इसलिए करना है ताकि हम उस यूजर की
  9974. 6:40:26जो डिटेल्स है उसको लोड कर पाएं। ठीक है?
  9975. 6:40:29तो यहां पर यूजरनेम एक बार मुझे आ जाती है
  9976. 6:40:30तो मैं क्या करूंगा? यूजर डिटेल्स सर्विस
  9977. 6:40:33को ले लूंगा। ठीक है? यूजर डिटेल्स सर्विस
  9978. 6:40:35की मुझे एक ऑब्जेक्ट बनानी पड़ेगी। तो
  9979. 6:40:38यहां पर आ जाता हूं और यहां पर ऑटो वाय।
  9980. 6:40:41ठीक है? यूजर डिटेल सर्विस
  9981. 6:40:44है। ये सबको प्राइवेट मार्क कर देता हूं।
  9982. 6:40:46एक्चुअली बेटर रहेगा।
  9983. 6:40:50प्राइवेट
  9984. 6:40:53फिर यूजर डिटेल्स सर्विस ठीक है इस तरीके
  9985. 6:40:56से मैंने लिख दिया है और यहां पर आ जाता
  9986. 6:40:59हूं
  9987. 6:41:00यूजर डिटेल्स सर्विस डॉट लोड यूजर बाय
  9988. 6:41:05यूजरनेम ठीक है तो हमें अब यूजरनेम से
  9989. 6:41:07यूजर को लोड करना है तो स्प्रिंग
  9990. 6:41:08सिक्योरिटी की मदद से यूजर लोड हो जाएगा
  9991. 6:41:11और हमें यूजर किस फॉर्म में मिलेगा यहां
  9992. 6:41:13पर यूजर हमें मिलेगा यूजर डिटेल्स के
  9993. 6:41:16फॉर्म में यूजर डिटेल्स भी इनबिल्ट क्लास
  9994. 6:41:18है ठीक है ऐसे यूजर डिटेल्स
  9995. 6:41:21और यहां पर यूजर डिटेल्स लिखना है इज़
  9996. 6:41:24इक्वल टू। ठीक है? इतना हो गया। अब यहां
  9997. 6:41:26पर आ जाते हैं। अब यूजर डिटेल्स हमें
  9998. 6:41:28ऑब्जेक्ट मिल चुका है। अब मैं क्या
  9999. 6:41:30करूंगा? यूजरनेम पासवर्ड ऑथेंटिकेशन का
  10000. 6:41:32ऑब्जेक्ट बनाऊंगा जो कि एक ऑथेंटिकेशन का
  10001. 6:41:34ऑब्जेक्ट है। ठीक है? और इसको सिक्योरिटी
  10002. 6:41:37कंटक्स्ट में हमें स्टोर करना है। देखिए
  10003. 6:41:39फ़िल्टर हमें फ़िल्टर हमने क्यों लिखा है?
  10004. 6:41:41यूज़ टोकन को वैलिडेट करने के लिए। टोकन
  10005. 6:41:44वैलिडेट हो चुका है। अब हमें ऑथेंटिकेशन
  10006. 6:41:46सेट करना है। ऑथेंटिकेशन कहां सेट होगा?
  10007. 6:41:48कहां सेट होगा? ऑथेंटिकेशन सिक्योरिटी
  10008. 6:41:50कंटेक्स्ट में। तो यहां पर हम हमने जो
  10009. 6:41:52कस्टम फिल्टर लिखा है उसके जरिए हम
  10010. 6:41:55ऑथेंटिकेट कर रहे हैं यूजर को और फिर उसकी
  10011. 6:41:58जो ऑथेंटिकेशन इनफेशन है उसको सिक्योरिटी
  10012. 6:42:00कॉन्टेक्स्ट में स्टोर करना है।
  10013. 6:42:01सिक्योरिटी कंटक्स्ट में स्टोर करने के
  10014. 6:42:03लिए हमें ऑथेंटिकेशन की एक ऑब्जेक्ट बनानी
  10015. 6:42:05पड़ेगी और ऑथेंटिकेशन का एक सब क्लास है
  10016. 6:42:09वो है यूजरनेम पासवर्ड ऑथेंटिकेशन टोकन और
  10017. 6:42:14यह है ऑथेंटिकेशन
  10018. 6:42:17की ऑब्जेक्ट ऑथेंटिकेशन ऐसे मैं बना लूंगा
  10019. 6:42:19इसको। ठीक है? इज़ इक्वल टू न्यू यूजरनेम
  10020. 6:42:22पासवर्ड ऑथेंटिकेशन टोकन ऐसे और फिर यहां
  10021. 6:42:26पर मैं लिख दूंगा यूजर डिटेल्स ठीक है
  10022. 6:42:30यूजर डिटेल्स कॉमा और फिर यहां पर नल ये
  10023. 6:42:34जो दूसरा चीज़ है दूसरा पैरामीटर
  10024. 6:42:36क्रेडेंशियल्स को मैं नल लिख दूंगा और फिर
  10025. 6:42:38अ यूजर डिटेल्स डॉट गेट अथॉरिटीज़ ऐसे मैं
  10026. 6:42:42लिख दूंगा। ठीक है? इसमें अभी कुछ रूल्स
  10027. 6:42:44तो ऐडेड नहीं है लेकिन मैं अथॉरिटीज़ को भी
  10028. 6:42:45पास कर रहा हूं यहां पर। इतना हो चुका है
  10029. 6:42:48और फिर मैं कहूंगा ऑथेंटिकेशन
  10030. 6:42:50डॉट सेट डिटेल्स और यहां पर जो ऑब्जेक्ट
  10031. 6:42:53ऑब्जेक्ट है उसको तो यहां पर ये सिंटेक्स
  10032. 6:42:55लिखना पड़ेगा डॉट वेब ऑथेंटिकेशन डिटेल्स
  10033. 6:42:58सोर्स
  10034. 6:43:01ठीक है और यहां पर अ ये आ जाएगा डॉट बिल्ड
  10035. 6:43:07डिटेल्स और फिर यहां पर रिक्वेस्ट ऐड करना
  10036. 6:43:09है। ठीक है? तो ये सारी डिटेल्स मैंने
  10037. 6:43:11ऑथेंटिकेशन ऑब्जेक्ट में स्टोर कर दी और
  10038. 6:43:12फिर मुझे सिक्योरिटी कंटेनक्स्ट होल्डर को
  10039. 6:43:14लेना है इस तरीके से। सिक्योरिटी कंटक्स्ट
  10040. 6:43:17होल्डर
  10041. 6:43:19डॉट गेट कॉन्टेक्स्ट और फिर डॉट सेट
  10042. 6:43:22ऑथेंटिकेशन और फिर ऑथेंटिकेशन के ऑब्जेक्ट
  10043. 6:43:24को पास कर देना है। बस इतना हो गया तो ये
  10044. 6:43:26ऑथेंटिकेट हो जाएगी रिक्वेस्ट। ठीक है? तो
  10045. 6:43:29देखिए एक बार और एक्सप्लेन कर देता हूं।
  10046. 6:43:31ये हुआ क्या है इस फाइल में। ठीक है? सबसे
  10047. 6:43:33पहले तो हमने डिसाइड किया हमें ऑथेंटिकेशन
  10048. 6:43:37फ़िल्टर बनाना है। ठीक है? या तो फिर मैं
  10049. 6:43:39एक काम करता हूं। मैं इसको रन करके
  10050. 6:43:40वैलिडेट करके फिर इसके बारे में फिर से
  10051. 6:43:42डिस्कस करते हैं। लेकिन मैं दो लाइन आपको
  10052. 6:43:44एक एक्सप्लेन करना चाहूंगा बढ़िया तरीके
  10053. 6:43:45से। देखिए ये सबसे पहले तो ये लाइन तो
  10054. 6:43:48देखिए हमने इतना क्यों किया है? ये हमने
  10055. 6:43:50इसके लिए किया है यहां पर। तो चलो हम यूजर
  10056. 6:43:52की डिटेल्स लोड कर रहे हैं। और फिर यहां
  10057. 6:43:54पर ऑथेंटिकेशन का एक ऑब्जेक्ट बना रहे
  10058. 6:43:56हैं। ये ऑथेंटिकेशन की सब क्लास है। ठीक
  10059. 6:43:59है? ऑथेंटिकेशन का ऑब्जेक्ट बन रहा है एक
  10060. 6:44:00हिसाब से यहां पर। ठीक है? और देखिए इसको
  10061. 6:44:03ओवर करेंगे ना आप तो यहां पर देखेंगे। द
  10062. 6:44:05प्रिंसिपल एंड कडेंशियल शुड बी सेट। ये
  10063. 6:44:07सारी डिटेल्स आपको मिल जाएगी। इज़ अ
  10064. 6:44:09इंप्लीमेंटेशन दैट इज़ डिज़ फॉर सिंपल
  10065. 6:44:12प्रेजेंटेशन ऑफ यूजरनेम पासवर्ड। ठीक है?
  10066. 6:44:14तो ये ऑथेंटिकेशन का ऑब्जेक्ट है। और फिर
  10067. 6:44:16इसमें हमने डिटेल सेट कर दी। डिटेल्स क्या
  10068. 6:44:18सेट की? तो हमने ये रिक्वेस्ट से जो भी
  10069. 6:44:20डिटेल्स आ रही है देखिए रिक्वेस्ट से जो
  10070. 6:44:22भी डिटेल्स आ रही है यानी कि रिक्वेस्ट की
  10071. 6:44:24डिटेल्स आईपी वगैरह सेशन आईडी वो सारी
  10072. 6:44:26डिटेल्स जो भी हमें आ रही है रिक्वेस्ट
  10073. 6:44:27में वो हमने ऑथेंटिकेशन ऑब्जेक्ट में सेट
  10074. 6:44:29करके उसे सिक्योरिटी कॉन्टेक्स्ट में
  10075. 6:44:32स्टोर कर दी। ठीक है? बस इतना ही किया है
  10076. 6:44:34डीडब्ल्यूटी वैलिडेट करने के बाद। और अब
  10077. 6:44:36यहां पर ये जो मेथड है इसको हमें क्रिएट
  10078. 6:44:38करना होगा। गेट यूजरनेम अ और पासवर्ड
  10079. 6:44:42फ्रॉम दी टोकन। तो इस मेथड में हम क्या
  10080. 6:44:46करने वाले हैं? हम लिखेंगे रिटर्न और jws
  10081. 6:44:50पार्सर। अच्छा सॉरी jws डॉट पार्सर डॉट अ
  10082. 6:44:55वेरीफाई वि
  10083. 6:44:571 मिनट गेट यूजरनेम फ्रॉम jw टोकन वेरीफाई
  10084. 6:45:01वि और यहां पर की को कॉल कर दूंगा मैं और
  10085. 6:45:03फिर यहां पर डॉट बिल्ड डॉट पार्स साइंड
  10086. 6:45:08बुक्स पार्स साइन क्लेम्स और फिर यहां पर
  10087. 6:45:11एक हिसाब से जो टोकन है उसको हम पास
  10088. 6:45:14करेंगे। ठीक है? और फिर यहां पर गेट पे
  10089. 6:45:17लोड और फिर गेट सब्जेक्ट हु्स गेट
  10090. 6:45:21सब्जेक्ट। ठीक है? तो देखिए मैं यहां पर
  10091. 6:45:24आपको बता देता हूं हुआ क्या है। कास्ट
  10092. 6:45:26आर्गुमेंट टू सीक्रेट की। देखिए हमने यहां
  10093. 6:45:28पर पहले JWT को पास किया है। हम हमें क्या
  10094. 6:45:31करना है? यूजरनेम निकालना है JW टोकन से।
  10095. 6:45:33तो पहले तो इसको पास किया है की से
  10096. 6:45:35वेरीफ़ाई किया है की से। फिर उसको यह यह जो
  10097. 6:45:38सिंटेक्स है वेरफ़िकेशन का यह पूरा हमने
  10098. 6:45:40किया है। ठीक है? फिर इसमें से पेलोड को
  10099. 6:45:42रिट्रीव किया और सब्जेक्ट को रिट्रीव किया
  10100. 6:45:44है। ठीक है? पेलोड में सब्जेक्ट ऐडेड है।
  10101. 6:45:47तो यहां पर अगर आप देखते हो की क्रिएट
  10102. 6:45:49करते वक्त हमने पेलोड में सब्जेक्ट ऐड
  10103. 6:45:51किया है। देखिए आप डिकोड भी करोगे इसे तो
  10104. 6:45:54यह पेलोड है और उसमें सब्जेक्ट है और
  10105. 6:45:56उसमें यूजरनेम है। तो हमें यूजरनेम चाहिए।
  10106. 6:45:59करेक्ट? तो यहां पर देखिए सब्जेक्ट में
  10107. 6:46:02आपने यूजरनेम डाला हुआ है। ठीक है? तो
  10108. 6:46:04पेलोड में सब्जेक्ट में स्टोर है। तो हमने
  10109. 6:46:06पेलोड को गेट किया और फिर सब्जेक्ट को गेट
  10110. 6:46:08किया। और ये इतना जो सिंटेक्स है ना ये
  10111. 6:46:10वाला जो हमने लिखा है ना ये वेरिफिकेशन के
  10112. 6:46:12लिए। तो देखिए वो यहां पर भी लिखा हुआ है
  10113. 6:46:14वैलिडेट करने के लिए। तो वैलिडेट करके ही
  10114. 6:46:16आप पेलोड और सब्जेक्ट रिट्रीव कर सकते हो।
  10115. 6:46:17तो इतना हमने किया है। अब सारे एरर्स जा
  10116. 6:46:19चुके हैं। अब एक बार क्या करते हैं? इसको
  10117. 6:46:21रन कर लेते हैं और देखते हैं कैसे रन होता
  10118. 6:46:23है ये। ठीक है? तो देखिए जेडब्ल्यूटी
  10119. 6:46:25ऑथेंटिकेशन अब चलना तो चाहिए। अच्छा यहां
  10120. 6:46:27पर कुछ दिक्कत हो गई है। डिपेंडेंसीज ऑफ
  10121. 6:46:30सम बीन इन दी अच्छा सर्कुलर डिपेंडेंसी
  10122. 6:46:32कुछ हो चुकी है यहां पर ऐसा बोल रहा है यह
  10123. 6:46:35तो ऑर्थ टोकन फिल्टर में यूजर डिटेल
  10124. 6:46:38सर्विस यूज़ हो रही है और फिर यहां पर ठीक
  10125. 6:46:40है तो ये बोल रहा है यहां पर यूजर डिटेल
  10126. 6:46:42सर्विस का इस्तेमाल कर रहे हो तो सर्कुलर
  10127. 6:46:43डिपेंडेंसी थोड़ी सी हो चुकी है तो यहां
  10128. 6:46:46पर आ जाता है टोकन फ़िल्टर में और यहां पर
  10129. 6:46:50अगर आप देखोगे
  10130. 6:46:52एक हिसाब से अच्छा ये यूजर डिटेल्स यहां
  10131. 6:46:55पर आपने यूज़ कर रखा है। ठीक है? तो यहां
  10132. 6:46:58पर मैं क्या करता हूं? इसको मैं लिस्ट ऑफ
  10133. 6:47:00करके एम्प्टी रखता हूं। ठीक है? और यूजर
  10134. 6:47:03डिटेल्स को यहां से हटा देते हैं कुछ समय
  10135. 6:47:05के लिए। ठीक है? यूजर डिटेल्स को हटा देते
  10136. 6:47:07हैं यहां से भी। और यहां से भी ये यूजर
  10137. 6:47:10डिटेल्स सर्विस भी हट सकती है। ठीक है? अब
  10138. 6:47:12रन करके देखते हैं। अच्छा यूजर डिटेल्स
  10139. 6:47:14सर्विस को हटाया हमने। तो यहां पर एरर आ
  10140. 6:47:18रही है। तो इसके बजाय हम यूजरनेम भी पास
  10141. 6:47:20कर सकते हैं। ऐसे। ठीक है? तो इतना चेंज
  10142. 6:47:23मैंने कर दिया। देखिए मैंने क्या किया?
  10143. 6:47:25यहां पर सर्कुलर डिपेंडेंसी आई हुई थी।
  10144. 6:47:27सर्कुलर डिपेंडेंसी बोल रही है कि यूजर
  10145. 6:47:29डिटेल सर्विस
  10146. 6:47:31यहां पर भी है और यह सर्कुलर डिपेंडेंसी
  10147. 6:47:32है। सिक्योरिटी कॉन्फ़िग में भी आप ऑट टोकन
  10148. 6:47:35फ़िल्टर में तो ये सर्कुलर डिपेंडेंसी हो
  10149. 6:47:37गई है। ठीक है? तो एक हिसाब से ये
  10150. 6:47:39डायग्राम की मदद से क्या बताना चाह रहा
  10151. 6:47:41है? ऑड टोकन फ़्टर में आप यूजर डिटेल
  10152. 6:47:43सर्विस यूज़ कर रहे हो। और फिर यूजर डिटेल
  10153. 6:47:46सर्विस यूज़ हो रही है सिक्योरिटी कॉन्फ़िग
  10154. 6:47:49में। करेक्ट? और फिर सिक्योरिटी कॉन्फिग
  10155. 6:47:54में भी आप इंजेक्ट कर रहे हो ऑथ टोकन
  10156. 6:47:56फिल्टर तो यह एक सबसे सर्कुलर बन चुका है
  10157. 6:47:59इसके लिए ये अलाउड नहीं है लेटेस्ट वर्जन
  10158. 6:48:01ऑफ स्प्रिंग बूट में ठीक है तो ये मैंने
  10159. 6:48:03हटा दिया यूजर डिटेल सर्विस ही यहां से
  10160. 6:48:04हटा दिया ऑथ टोकन फ़िल्टर से ठीक है ये हटा
  10161. 6:48:07दिया और यहां पर यूजरनेम पास कर दिया बस
  10162. 6:48:09इतना चेंज किया और यहां से इंजेक्शन भी
  10163. 6:48:11उसका हटा दिया और ये अनयूज्ड डिपेंडेंसी
  10164. 6:48:13को यहां से निकालेंगे नहीं चलो वो तो चल
  10165. 6:48:15जाएगा अनयूज़ इंपोर्ट स्टेटमेंट्स इसको रन
  10166. 6:48:17करके देखते हैं क्या होता है ठीक है रन तो
  10167. 6:48:20हो जाएगा ये अब आई थिंक या रन हो गया।
  10168. 6:48:23यहां पर आ जाते हैं। अब यहां पर यह टोकन
  10169. 6:48:26पास करके देखते हैं। देखिए यहां पर
  10170. 6:48:28ऑथराइजेशन में मैं बेसिक ऑथ को इनेबल कर
  10171. 6:48:30देता हूं। सॉरी डिसेबल कर देता हूं। नो
  10172. 6:48:31ऑथ। ठीक है? और सबसे पहले तो मैं इस टोकन
  10173. 6:48:35को पास नहीं करता। इसको अनचेक कर दिया
  10174. 6:48:37मैंने। ठीक है? तो बिना टोकन के रिक्वेस्ट
  10175. 6:48:38भेजते हैं। अच्छा ये चल तो रही है। तो
  10176. 6:48:41कैसे चल रही है? यहां पर ऑलरेडी सेशन सेट
  10177. 6:48:42है। देखिए जे सेशन आईडी ऑलरेडी सेट है। तो
  10178. 6:48:45इसको मैं क्लियर कर देता हूं यहां से। ठीक
  10179. 6:48:47है? ऐसे सेंड करता हूं। अच्छा फिर भी चल
  10180. 6:48:50रही है। यह क्या दिक्कत हो रही है?
  10181. 6:48:54ठीक है। यहां पर एक प्रॉब्लम हो रही है।
  10182. 6:48:57ठीक है। तो मैं आपको बता देता हूं
  10183. 6:48:59प्रॉब्लम क्या है। यहां पर अगर आप इसको रन
  10184. 6:49:00करते हो तो 200 ओके आ रहा है। और यहां पर
  10185. 6:49:03टोकन ऑथेंटिकेशन टोकन का फ़्टर जो है वो तो
  10186. 6:49:05कॉल हो रहा है। ठीक है? लेकिन यहां पर
  10187. 6:49:07प्रॉब्लम यह है। देखिए यहां पर हमने ऑथ
  10188. 6:49:11टोकन फ़्टर को फ़्टर चेन में ऐड किया। कैसे
  10189. 6:49:14ऐड किया? देखिए इशू समझना जरूरी है। देखिए
  10190. 6:49:17मैं चाहूं तो यहां पर देखिए फिल्टर कॉल हो
  10191. 6:49:20रहा है। यहां से आप भेज रहे हो बिना
  10192. 6:49:22ऑथराइजेशन हेडर के। ठीक है? फिल्टर कॉल हो
  10193. 6:49:25रहा है। लेकिन फिर भी 200 ओके आ रहा है।
  10194. 6:49:27इसका एक रीज़न है क्योंकि फ़िल्टर चेन ब्रेक
  10195. 6:49:29हो रहा है। देखिए मैंने आपको यहां पर कहा
  10196. 6:49:31था ये फ़्टर चेन में हम हमारा कस्टम फ़िल्टर
  10197. 6:49:34जो है ये वाला जो कस्टम फ़िल्टर ये हमारा
  10198. 6:49:36फ़िल्टर है। ये हमने ऐड किया हुआ है फ़िल्टर
  10199. 6:49:38चेन में। इसका काम ये है JW टोकन को
  10200. 6:49:41वैलिडेट करना। ठीक है? अब हो क्या रहा है?
  10201. 6:49:43फ़िल्टर चेन में हमने इसको ऐड किया है। बीच
  10202. 6:49:46में कहीं यूजरनेम, पासवर्ड ऑथेंटिकेशन
  10203. 6:49:49टोकन फ़िल्टर के आगे ऐड किया है। अगर आपको
  10204. 6:49:51याद हो तो मैं आपको कोड भी दिखा देता हूं
  10205. 6:49:53कि कौन सा कोड हमने लिखा था। आपको थोड़ी
  10206. 6:49:55मेमोरी में आ जाएगा वो। देखिए सिक्योरिटी
  10207. 6:49:58फ़्टर में हमने यहां पर ऐड किया हुआ है।
  10208. 6:50:01यूजरनेम, पासवर्ड, ऑथेंटिकेशन फ़िल्टर इसके
  10209. 6:50:03आगे ऐड किया हुआ है। ठीक है? ये वाला
  10210. 6:50:05फ़िल्टर था। मैंने शायद फ़िल्टर का नाम गलत
  10211. 6:50:06बोल दिया, लेकिन यूजरनेम, पासवर्ड,
  10212. 6:50:08ऑथेंटिकेशन फ़िल्टर के आगे ऐड किया है
  10213. 6:50:09इसको। अब हुआ क्या है? यहां तक फिल्टर
  10214. 6:50:12एग्जीक्यूट हो रहा है। ये वाला भी
  10215. 6:50:14एग्जीक्यूट हो रहा है जो हमने किया है।
  10216. 6:50:15लेकिन इसके आगे की जो फिल्टर चेन है वो
  10217. 6:50:17ब्रेक हो चुकी है। ठीक है? वो ब्रेक हो
  10218. 6:50:19चुकी है। क्यों ब्रेक हो चुकी है? क्योंकि
  10219. 6:50:22हमने एक लाइन ऐड नहीं की है। ये मेरे से
  10220. 6:50:24मिस हो गया है। ठीक है? तो यहां पर अगर आप
  10221. 6:50:26आते हो तो यहां पर अ यहां पर नहीं हमें ऐड
  10222. 6:50:31करना है ऑथ टोकन फिल्टर में। तो यहां पर
  10223. 6:50:33फ़्टर हमने बनाया लेकिन एंड में यह डल्टर
  10224. 6:50:36इंटरनल के एंड में हमें एक लाइन ऐड करनी
  10225. 6:50:38है। और हमें कहना है फिल्टर चेन। फिल्टर
  10226. 6:50:41चेन डॉट डू फिल्टर और फिर रिक्वेस्ट और
  10227. 6:50:44रिस्पांस को पास कर देना है।
  10228. 6:50:48ठीक है? तो देखिए मैं क्या चाहता हूं इस
  10229. 6:50:52फ़्टर के बाद ये फ़्टर जो हमने कस्टम फ़िल्टर
  10230. 6:50:54बीच में ऐड किया था। इस फ़िल्टर के बाद
  10231. 6:50:56जैसी चेन बनी हुई थी फ़्टर्स की वो
  10232. 6:50:58कंटिन्यू रहे। ठीक है? वो मैंने वो ये
  10233. 6:51:01लाइन से मैं बोल रहा हूं। ठीक है? अगर यह
  10234. 6:51:04लाइन मैं मिस कर देता हूं, तो इसका मतलब
  10235. 6:51:05वो फ़्टर चेन कंटिन्यू नहीं रहती और फ़िल्टर
  10236. 6:51:07चेन ब्रेक हो जाती है। तो, यह लाइन से हम
  10237. 6:51:08क्या कह रहे हैं? फ़िल्टर चेन में फ़िल्टर
  10238. 6:51:10को कंटिन्यू रखिए और रिक्वेस्ट और
  10239. 6:51:12रिस्पांस की जो ऑब्जेक्ट थी उसको मैंने
  10240. 6:51:14आगे पास कर दिया। तो, आगे के फ़्टर्स में
  10241. 6:51:15भी यह मिलता जाएगा। लेकिन, क्योंकि मैंने
  10242. 6:51:17ये लाइन मिस कर दी थी, तो वो फ़िल्टर चेन
  10243. 6:51:19वहीं पर ब्रेक हो रहा था। हमारी फ़िल्टर तो
  10244. 6:51:22एग्जीक्यूट हो रही थी, तो हमें लग रहा था
  10245. 6:51:23अच्छा चल रहा है। लेकिन, बाद में की जो
  10246. 6:51:25फ़िल्टर्स है, वो ब्रेक हो रही थी और वो
  10247. 6:51:26एग्जीक्यूट नहीं हो रही थी। तो, यह दिक्कत
  10248. 6:51:28हो रही थी। तो, मैंने यह ऐड कर दिया है।
  10249. 6:51:30अब इसको रन करते हैं। ठीक है? शायद एक दो
  10250. 6:51:32एरर और आए जो कि मुझे लगता है मैंने मिस
  10251. 6:51:34किए हैं। लेकिन, देखते हैं एक-एक करके
  10252. 6:51:37डिबग करेंगे। ठीक है? देखोगिंग में मजा
  10253. 6:51:40आएगा। तो देखिए, फिर से मैं इसको रन करता
  10254. 6:51:41हूं। और अब आ रही है 403 फॉरबिडन। 403
  10255. 6:51:45फॉरबिडन आ रही है। ठीक है? यहां पर लेकिन
  10256. 6:51:48अभी फिलहाल कुछ लॉग्स तो नहीं दिख रहे
  10257. 6:51:50हैं। कुछ लॉ्स नहीं दिख रहे हैं। ठीक है?
  10258. 6:51:52और 403 फॉरबिडन इसीलिए आ रही है क्योंकि
  10259. 6:51:55हमने यहां पर ये टोकन को पास नहीं किया
  10260. 6:51:59है। ठीक है? तो मैं क्या करूंगा? टोकन को
  10261. 6:52:00पास कर देता हूं। ठीक है? अब टोकन को पास
  10262. 6:52:03करने के बाद भी मुझे 403 फॉरबिडन आएगी।
  10263. 6:52:05उसके मैं रीज़न आपको बता देता हूं पहले ही।
  10264. 6:52:07ठीक है? ठीक है? नहीं तो आपको लगेगा मैं
  10265. 6:52:08प्रिपयर्ड नहीं हूं। ठीक है? एरर आएगी।
  10266. 6:52:10एरर ये आएगी कि ये जो एंड पॉइंट है इसको
  10267. 6:52:13एक्सेस करने के लिए आप ऑथराइज़्ड नहीं हो।
  10268. 6:52:15ये क्यों आएगी? क्योंकि देखिए यहां पर
  10269. 6:52:17टोकन में हमने क्या किया है? याद रखिए आप
  10270. 6:52:19सर्कुलर डिपेंडेंसी का एरर आ रहा था यहां
  10271. 6:52:21पर। ठीक है? तो हमने देखिए यहां पर
  10272. 6:52:23अथॉरिटीज़ पास कर रखी थी हमने। ये देखिए
  10273. 6:52:25इसको होवर करेंगे। तो यहां पर लास्ट जो है
  10274. 6:52:27अथॉरिटी है। करेक्ट? अथॉरिटी का मतलब
  10275. 6:52:29रोल्स। तो ये हमने एम्प्टी रोल्स दे रखे
  10276. 6:52:31हैं और यूजर डिटेल्स की जो कोड है जहां से
  10277. 6:52:33हम यूजर डिटेल्स को लोड कर रहे थे उसको
  10278. 6:52:35हमने डिसेबल कर रखा है। ठीक है? ये क्यों
  10279. 6:52:38कर रखा है? क्योंकि हमें वो सर्कुलर
  10280. 6:52:39डिपेंडेंसी की जो इशू आ रही थी इसके लिए।
  10281. 6:52:42ठीक है? तो इसका सशन भी होगा। इसका सशन ये
  10282. 6:52:44है कि हम Jड डब्ल्यूटी में ही JडW टोकन
  10283. 6:52:46है। क्योंकि यहां पर सर्कुलर डिपेंडेंसी
  10284. 6:52:48की इशू आ रही है। तो JडW टोकन में ही हम
  10285. 6:52:50रोल्स को एंबेड कर देंगे। ठीक है? तो मैं
  10286. 6:52:52क्या करता हूं? यहां पर आ जाता हूं। और
  10287. 6:52:55यहां पर अब इसको तो मैंने कर दिया है।
  10288. 6:52:58इसको फिक्स कर दिया है। ठीक है? टोकन को
  10289. 6:53:01पास कर दिया है मैंने। और इसको एक बार और
  10290. 6:53:03रन कर देता हूं। मुझे याद नहीं है मैंने
  10291. 6:53:04इसको रन किया कि नहीं। तो इसको एक और बार
  10292. 6:53:06रन कर देता हूं। और टोकन को अब पास करके
  10293. 6:53:08मैं इसको
  10294. 6:53:10इसका आउटपुट देंगे। टोकन को पास किया है।
  10295. 6:53:12इसको रन कर दिया। तो देखिए फिर से 403
  10296. 6:53:14आएगा। अब इस बार 403 इसीलिए आ रहा है।
  10297. 6:53:16देखिए टोकन तो आ गया है। मैंने ना एक और
  10298. 6:53:18वीडियो को पॉज करके ना एक लॉग लगाई थी कि
  10299. 6:53:20यहां पर टोकन आ रहा है कि नहीं इसके अंदर।
  10300. 6:53:23यह जो इफ स्टेटमेंट है इसके अंदर टोकन आ
  10301. 6:53:25रहा है कि नहीं तो टोकन आ रहा है यहां पर
  10302. 6:53:27देखिए टोकन ऐडेड और यहां पर भी एक सिस्टम
  10303. 6:53:30डॉट डॉट प्रिंट एलन है तो पहले तो टोकन ही
  10304. 6:53:32नहीं भेज रहे थे तो उसके अंदर जा ही नहीं
  10305. 6:53:34रहा था इस स्टेटमेंट के अंदर करेक्ट अब
  10306. 6:53:36टोकन आ रहा है लेकिन ये फेल हो गया ये फेल
  10307. 6:53:39क्यों हो रहा है क्योंकि इसको ऑथराइजेशन
  10308. 6:53:41नहीं है यहां पर एक्सेस करने का ठीक है
  10309. 6:53:44ऑथराइजेशन नहीं है तो हम क्या करेंगे हम अ
  10310. 6:53:47जो हमारी जनरेट टोकन की जो कोड है उसमें
  10311. 6:53:50हम रोल्स को भी ऐड कर देंगे ठीक है? या तो
  10312. 6:53:53फिर आप ऐसी कोई एंड पॉइंट को एक्सेस कीजिए
  10313. 6:53:55जहां जो रोल इंडिपेंडेंट है। तो देखिए, यह
  10314. 6:53:57वाली जो एंड पॉइंट है हेलो वाली, यहां पर
  10315. 6:53:59कोई रोल की ज़रूरत है क्या? हेलो कंट्रोलर
  10316. 6:54:02हेलो कंट्रोलर। अच्छा, यहां पर रोल की
  10317. 6:54:04जरूरत है। तो, इसको मैं टेंपरेरीली डिसेबल
  10318. 6:54:06कर देता हूं। और इसको थोड़ा रन करते हैं
  10319. 6:54:09हम। ठीक है? तो, यह ऑथेंटिकेटेड है,
  10320. 6:54:11लेकिन, इसको एक्सेस करने के लिए कोई रोल
  10321. 6:54:13की ज़रूरत नहीं है। तो, इसको मैंने ऐसे कर
  10322. 6:54:14दिया है। ठीक है? और यहां पर अगर मैं इसको
  10323. 6:54:17एक्सेस करता हूं। अच्छा, सॉरी। तो ये
  10324. 6:54:20बेसिक टोकन को मैं नो ऑथ मार्क करूंगा और
  10325. 6:54:22यहां पर हेडर्स में हम ऑथराइजेशन
  10326. 6:54:25ऐड करेंगे। ओके सॉरी ऑथराइजेशन यहां पर
  10327. 6:54:28ऑथराइजेशन हेडर और यहां पर ये बेरर टोकन
  10328. 6:54:30को पास कर देंगे इस रिक्वेस्ट में। ठीक
  10329. 6:54:32है? ऐसे तो ऐसे रन करेंगे तो देखिए ये ये
  10330. 6:54:35चल गई।
  10331. 6:54:37लेकिन जो रोल वाली है वो नहीं चल रही है।
  10332. 6:54:39ठीक है?
  10333. 6:54:44तो JW टोकन तो चल रहा है हमारे एंड पे।
  10334. 6:54:46ठीक है? JW टोकन अगर आप पास करते हो तो ये
  10335. 6:54:48चल रहा है। अगर इसको डिसेबल कर दूंगा और
  10336. 6:54:49सेंड करूंगा तो 403 आ जाएगा। ठीक है? और
  10337. 6:54:52अगर इसको इनेबल करूंगा तो ये तो टोकन
  10338. 6:54:54बेस्ड ऑथेंटिकेशन चल रहा है। लेकिन रोल
  10339. 6:54:56बेस्ड एक्सेस कंट्रोल जो है वो नहीं चल
  10340. 6:54:59रहा है। वो क्यों नहीं चल रहा है? क्योंकि
  10341. 6:55:01टोकन में रोल्स प्रेजेंट नहीं है। तो
  10342. 6:55:03देखिए ये टोकन को अगर मैं यहां पर अ पेस्ट
  10343. 6:55:06करता हूं यहां पर। तो इसमें रोल्स है नहीं
  10344. 6:55:08है। इसमें यूजर है लेकिन रोल नहीं है। तो
  10345. 6:55:10हमें क्या करना है? देखिए अगर एक तरीका है
  10346. 6:55:12आपके पास यूजर है। ठीक है? यूजर है, टोकन
  10347. 6:55:15है, सब कुछ आ जाता है। और जो फ़्टर आपने
  10348. 6:55:17लिखी थी उसमें यूजर डिटेल्स को लोड कीजिए
  10349. 6:55:19और वहां से रोल एक्सट्रैक्ट कीजिए। लेकिन
  10350. 6:55:21वो कर रहे हैं तो हमें सर्कुलर डिपेंडेंसी
  10351. 6:55:23का इशू आ रहा है। तो वो मैं नहीं कर रहा
  10352. 6:55:24हूं। जनरली वैसा करते हैं तो कोड चल जाता
  10353. 6:55:26है। लेकिन अभी ये लेटेस्ट वर्जन ऑफ़
  10354. 6:55:27स्प्रिंग बूट में इन्होंने सर्कुलर
  10355. 6:55:29डिपेंडेंसी को अलाउ नहीं किया है। तो इसका
  10356. 6:55:31एक वर्क अराउंड ये होगा कि ये जो हमारी
  10357. 6:55:34टोकन है, इसी में हम ऐड करेंगे रोल्स को।
  10358. 6:55:37और फिर जब हम यूजरनेम एक्सट्रैक्ट कर रहे
  10359. 6:55:39हैं तो उसी के साथ हम रोल्स को भी
  10360. 6:55:41एक्सट्रैक्ट कर लेंगे टोकन में से ही और
  10361. 6:55:43फिर उसको पास कर देंगे। ठीक है? तो ये एक
  10362. 6:55:45वर्क अराउंड हमने फिगर आउट कर लिया बिकॉज़
  10363. 6:55:47स्प्रिंग बूट हमको वो वाला मेथड अलाउ नहीं
  10364. 6:55:48कर रहा है। ठीक है? ऐसे वर्क अराउंड्स
  10365. 6:55:50निकालने पड़ेंगे आपको दोस्तों। तो यहां पर
  10366. 6:55:52JW यूuts में आना है। हमने जनरेट टोकन
  10367. 6:55:54फ्रॉम यूजरनेम किया हुआ था यहां पे। ठीक
  10368. 6:55:56है? तो मैं क्या करूंगा? सब्जेक्ट के बाद
  10369. 6:55:58यहां पर क्लेम्स ऐड कर दूंगा। ठीक है?
  10370. 6:56:00क्लेम और यहां पर लिख दूंगा। अच्छा सॉरी
  10371. 6:56:04रोल्स ऐसे और यहां पर मैं लिख दूंगा यहां
  10372. 6:56:07पर मेरे पास यूजर नेम है। अच्छा देखिए
  10373. 6:56:10यहां पर मैं ना यूजर नेम ले रहा हूं। यूजर
  10374. 6:56:12डिटेल्स नहीं ले रहा हूं। करेक्ट तो यहां
  10375. 6:56:14पर यूजर डिटेल्स ले सकता हूं मैं। यूजर
  10376. 6:56:16डिटेल्स ऐसे और यूजर डिटेल्स और फिर यहां
  10377. 6:56:20पर यूजरनेम एक्सट्रैक्ट कर सकता हूं। तो
  10378. 6:56:22मैं यहां पर कहूंगा स्ट्रिंग यूजर नेम
  10379. 6:56:25ऐसे और फिर यूजर यूजर डिटेल्स डॉट गेट
  10380. 6:56:29यूजरनेम। ठीक है? और फिर यहां पर मैं ले
  10381. 6:56:32सकता हूं यूजर डिटेल्स डॉट गेट अथॉरिटीज़।
  10382. 6:56:37ठीक है? गेट अथॉरिटीज़। और फिर देखिए ये जो
  10383. 6:56:40है ना इसको आपको लिस्ट में कन्वर्ट करना
  10384. 6:56:42होगा। तो इसको स्ट्रीम में कन्वर्ट करूंगा
  10385. 6:56:43मैं पहले तो डॉट स्ट्रीम डॉट मैप। ठीक है?
  10386. 6:56:48और फिर ए अ और फिर ऐसे करके हर इसको
  10387. 6:56:53रिट्रीव करना है। डॉट गेट अथॉरिटी अथॉरिटी
  10388. 6:56:55को रिट्रीव करना है और फिर इसको डॉट टू
  10389. 6:56:57लिस्ट करके रिटर्न कर देना है। ठीक है? तो
  10390. 6:57:00इसको मैंने एक हिसाब से लिस्ट में कन्वर्ट
  10391. 6:57:01कर दिया। ठीक है? इसको लैम्ब्डा में
  10392. 6:57:03कन्वर्ट कर देना है। इस तरीके से ये सजेशन
  10393. 6:57:05था। ठीक है? तो ये स्ट्रीम्स का कांसेप्ट
  10394. 6:57:07का इस्तेमाल करके हर अथॉरिटीज़ को मैंने
  10395. 6:57:11कन्वर्ट कर लिया एक लिस्ट में। क्योंकि
  10396. 6:57:13यहां पर मैं लिस्ट के फॉर्म में इसको अ
  10397. 6:57:15एंबेड करना चाहता हूं। ठीक है? इतना मैंने
  10398. 6:57:17कर दिया। अब देखिए यहां पर है ना मैंने
  10399. 6:57:18पैरामीटर का टाइप चेंज किया। सीधा-सीधा
  10400. 6:57:20यूजर डिटेल्स अंदर ले लिया है मैंने। तो
  10401. 6:57:22यहां पर चले जाएंगे हम। यह गेट टोकन फ्रॉम
  10402. 6:57:24यूजरनेम हम कहां पे कॉल कर रहे हैं? गेट
  10403. 6:57:26टोकन फ्रॉम यूजरनेम मैं कॉल कर रहा हूं
  10404. 6:57:29यहां पर। ठीक है? तो यहां पर यूजर डिटेल्स
  10405. 6:57:32डॉट गेट यूजरनेम कर रहे थे हम। तो यहां से
  10406. 6:57:34गेट यूजरनेम को हटा देंगे। सीधा यूजर
  10407. 6:57:36डिटेल्स को ही पास कर देंगे। ठीक है? तो
  10408. 6:57:38इतना चल जाना चाहिए और हम नया टोकन को इशू
  10409. 6:57:40करेंगे अब। ठीक है? इतना चलने के बाद
  10410. 6:57:42देखते हैं होता क्या है। तो नए टोकन में
  10411. 6:57:44अब रोल्स की इनेशन होनी चाहिए। तो देखिए
  10412. 6:57:47यहां पर आ जाइए और यहां पर हम आएंगे साइन
  10413. 6:57:50इन पर। सेंड कीजिए। नया टोकन जनरेट हो
  10414. 6:57:53गया। इसको कॉपी कीजिए। यहां पर आ जाइए और
  10415. 6:57:56इसको डिकोड करके देखिए। तो देखिए अब यहां
  10416. 6:57:58पर रोल भी है। देख पा रहे हैं आप मैजिक
  10417. 6:58:01रोल भी है। आप इसमें और काफी सारी चीजें
  10418. 6:58:04ऐड कर सकते हो। देखिए आपका अगर कुछ अ
  10419. 6:58:07डोमेन स्पेसिफिक इनेशन है तो वो आप टोकन
  10420. 6:58:10में ऐड कर सकते हो। तो कस्टम चीजें कैसे
  10421. 6:58:12ऐड करनी है टोकन में? ये भी मैं बता रहा
  10422. 6:58:14हूं। यहां पर रोल ऐड कर दिया हमने।
  10423. 6:58:15करेक्ट? रोल। अब इसके पास क्या है? देखिए
  10424. 6:58:18क्लियरली दिख रहा है। इसके पास रोल है रोल
  10425. 6:58:19अंडरस्कोर यूजर। ठीक है? तो मैं यहां पर आ
  10426. 6:58:22जाऊंगा। टोकन में अब हमारे पास रोल है।
  10427. 6:58:25करेक्ट? तो यहां पर आ जाएंगे। अब
  10428. 6:58:27ऑथेंटिकेशन ऑर्थ टोकन फिल्टर। यहां से हम
  10429. 6:58:29फिल्टर को एक्सट्रैक्ट कर रहे हैं फिल्टर
  10430. 6:58:31में से। ठीक है? और यहां पे अब मैं क्या
  10431. 6:58:35करूंगा? अ
  10432. 6:58:37यहां पे मैं आ जाऊंगा। और ये यहां पर
  10433. 6:58:40लिस्ट ऑफ देखिए एम्प्टी अथॉरिटीज़ दे रहे
  10434. 6:58:43हैं हम। करेक्ट। तो यहां पर ऊपर जस्ट ऊपर
  10435. 6:58:45उसके मैं लिखूंगा क्लेम्स। ठीक है?
  10436. 6:58:48क्लेम्स क्लेम्स इक्वल टू jw यूटिल्स डॉट
  10437. 6:58:52गेट ऑल क्लेम्स ऐसे ठीक है ये मेथड अभी
  10438. 6:58:56बना नहीं है लेकिन इसको बना देंगे हम ठीक
  10439. 6:58:59है तो गेट ऑल क्लेम्स करके एक मेथड बना
  10440. 6:59:01देंगे ये एक हेल्पर मेथड है या अगर आपको
  10441. 6:59:04चाहिए तो आप यहां पर पार्सलर भी कर सकते
  10442. 6:59:06हो लेकिन मैं सेपरेटली इसको रखना चाहता
  10443. 6:59:08हूं क्योंकि जीW यूटर्स में सारे मेथड्स
  10444. 6:59:10रखना चाहता हूं हेल्पर मेथड्स तो ये क्लीन
  10445. 6:59:13कोड की एक प्रैक्टिस है तो मेरे पास सारे
  10446. 6:59:15क्लेम्स आ गए ठीक है क्लेम्स अब क्लेम्स
  10447. 6:59:17में एक क्लेम है रोल। ठीक है? क्लेम्स में
  10448. 6:59:20एक क्लेम है रोल। देखिए दोस्तों रोल है एक
  10449. 6:59:24क्लेम रोल्स में सॉरी क्लेम्स में एक
  10450. 6:59:27क्लेम है रोल। तो काफी सारे लोग को ये
  10451. 6:59:30डाउट होगा कि क्लेम्स का मतलब क्या है? ये
  10452. 6:59:32क्लेम्स में ऐड क्यों कर रहे हैं? देखिए
  10453. 6:59:34क्लेम्स का मतलब सिंपली यह है कि यह एक
  10454. 6:59:36हिसाब से नेम वैल्यू पेयर है। की वैल्यू
  10455. 6:59:39पेयर होती है ना नेम वैल्यू पेयर। आप आपको
  10456. 6:59:41अगर जे डब्ल्यूडी में एक्स्ट्रा
  10457. 6:59:42इनफार्मेशन पास करनी है जैसे कि रोल्स पास
  10458. 6:59:44कर रहे हो। तो आप की वैल्यू पेयर में ऐसे
  10459. 6:59:46डाल सकते हो। जैसे कि हमने पास किया है तो
  10460. 6:59:48रोल्स की जगह पर रोल्स और फिर मैंने एक
  10461. 6:59:50लिस्ट ऐड कर दी है जो कि रोल्स की लिस्ट
  10462. 6:59:52है। आपको और कुछ कस्टम डेटा ऐड करना है तो
  10463. 6:59:53आप वहां पर कर सकते हो। तो मैंने सारे
  10464. 6:59:55क्लेम्स को रिट्रीव किया है। अब इसमें से
  10465. 6:59:57एक क्लेम एक एक क्लेम है रोल सॉरी थोड़ा
  10466. 7:00:02गड़बड़ हो रही है। लेकिन यहां पर मैं
  10467. 7:00:04कहूंगा लिस्ट और फिर यहां पर मैं कहूंगा
  10468. 7:00:06स्ट्रिंग की लिस्ट और फिर यहां पर कहूंगा
  10469. 7:00:08रोल्स और इज़ इक्वल टू क्लेम्स डॉट गेट। और
  10470. 7:00:12देखिए यहां पर नाम देना है मुझे रोल्स। और
  10471. 7:00:15इसका टाइप क्या रहने वाला है वो लिखना है
  10472. 7:00:16मुझे। तो लिस्ट डॉट क्लास। ठीक है? रोल्स
  10473. 7:00:20को हम एक्सट्रैक्ट कर रहे हैं क्लेम्स में
  10474. 7:00:22से। और इसका टाइप क्या रहने वाला है? तो
  10475. 7:00:24मुझे लिस्ट में एक्सट्रैक्टेड चाहिए ये वो
  10476. 7:00:26मैं कर रहा हूं। ठीक है? ये हो गया। और
  10477. 7:00:28फिर अ इतना होने के बाद मैं यहां पर आ
  10478. 7:00:32जाऊंगा। और ये तो मैंने यहां पर लिस्ट ऑफ
  10479. 7:00:35लिखी हुई है। तो लिस्ट ऑफ के बजाय अ मुझे
  10480. 7:00:38यहां पर अथॉरिटीज़ पास करनी है। तो मैं
  10481. 7:00:40क्या करूंगा? एक लिस्ट बना दूंगा ऑफ
  10482. 7:00:41ग्रांटेड अथॉरिटीज़। ठीक है? तो देखिए
  10483. 7:00:44ग्रांटेड अथॉरिटी यह ग्रांटेड अथॉरिटी की
  10484. 7:00:45क्यों लिख रहे हैं? क्योंकि इंटरनली
  10485. 7:00:48स्प्रिंग सिक्योरिटी रोल्स जो है यानी कि
  10486. 7:00:50अथॉरिटीज जो है उसको एज ए टाइप ऑफ
  10487. 7:00:53ग्रांटेड अथॉरिटी ट्रीट करता है। ठीक है?
  10488. 7:00:56देखिए आप लिस्ट ऑफ स्ट्रिंग अगर यहां पर
  10489. 7:00:58पास कर दोगे तो वो नहीं चलेगा। देखिए अगर
  10490. 7:01:00यहां पर आप आओगे तो यहां पर हमने हर तो
  10491. 7:01:04यहां पर देखिए जे डब्ल्यू टी रो जेडब्ल्यू
  10492. 7:01:07टोकन में रोल्स को ऐड करते वक्त सारी
  10493. 7:01:09रोल्स को हमने ग्रांटेड अथॉरिटी से
  10494. 7:01:11स्ट्रिंग में कन्वर्ट किया था। क्यों किया
  10495. 7:01:13था? क्योंकि रोल्स हम चाहते हैं स्ट्रिंग
  10496. 7:01:15में जाए क्लेम्स के अंदर। ठीक है?
  10497. 7:01:17ग्रांटेड अथॉरिटी का टाइप था वो। करेक्ट?
  10498. 7:01:20लेकिन अब फिर से आपको अगर ऐड करना है,
  10499. 7:01:22स्प्रिंग सिक्योरिटी के साथ इस्तेमाल करना
  10500. 7:01:24है, तो आपको ग्रांटेड अथॉरिटी का टाइप
  10501. 7:01:26बनाना पड़ेगा। लिस्ट ऑफ़ ग्रांटेड अथॉरिटी।
  10502. 7:01:28ठीक है? तो यहां पर मैं कहूंगा अथॉरिटीज़
  10503. 7:01:30और फिर यहां पर कहेंगे हम फिर से रोल्स
  10504. 7:01:34अच्छा सॉरी रिक्वेस्ट नहीं रोल्स डॉट
  10505. 7:01:36स्ट्रीम
  10506. 7:01:38और फिर यहां पर आ जाएंगे डॉट और फिर मैप
  10507. 7:01:41और फिर सिंपल ग्रांटेड अथॉरिटी और फिर
  10508. 7:01:45कॉलन न्यू और फिर डॉट टू लिस्ट ऐसे ऐसे।
  10509. 7:01:50ठीक है? अब यहां पर ये एरर क्यों आ रही
  10510. 7:01:52है?
  10511. 7:01:54अच्छा ग्रांटेड अथॉरिटी और यह सिंपल
  10512. 7:01:57ग्रांटेड अच्छा यह सिंपल ग्रांटेड अथॉरिटी
  10513. 7:01:59नहीं चाहिए। यहां पर ग्रांटेड अथॉरिटी
  10514. 7:02:00चाहिए। ठीक है? और ये कॉलन न्यू और फिर
  10515. 7:02:05यहां से ग्रांटेड अब ये एरर क्यों आ रही
  10516. 7:02:06है? तो ये एरर आ रही है क्योंकि ये
  10517. 7:02:10है फंक्शन। अच्छा
  10518. 7:02:13एक मिनट यहां पर यह दिक्कत हो रही है कुछ
  10519. 7:02:17तो इस पर अगर ओवर करेंगे तो प्रोवाइडेड
  10520. 7:02:21मेथड रेफरेंस लेकिन एक्सपेक्टेड है इसको
  10521. 7:02:24फंक्शन अच्छा फंक्शन एक्सपेक्टेड है तो
  10522. 7:02:29यहां पर लिख देता हूं ग्रांटेड अथॉरिटी और
  10523. 7:02:32फिर गेट अथॉरिटी
  10524. 7:02:34अच्छा यही तो चल जाना चाहिए था डॉट मैप
  10525. 7:02:38डॉट स्ट्रीम
  10526. 7:02:40यह क्यों नहीं चल रहा है? अब यहां पर अगर
  10527. 7:02:42हो करते हुए यह फिर से फंक्शन मांग रहा
  10528. 7:02:43है। ठीक है? ठीक है? तो कुछ एरर आ रही थी
  10529. 7:02:46और मैंने उसको इस तरीके से फिक्स किया। तो
  10530. 7:02:48मैंने क्या किया? रोल और फिर हर रोल को
  10531. 7:02:52मैंने एक सिंपल ग्रांटेड अथॉरिटी रोल का
  10532. 7:02:54ऑब्जेक्ट क्रिएट किया है और फिर उसको
  10533. 7:02:56कास्ट कर दिया ग्रांटेड अथॉरिटीज़ में
  10534. 7:02:58क्योंकि यहां पर ग्रांटेड अथॉरिटी
  10535. 7:02:59एक्सपेक्ट कर रहे हैं। ठीक है? तो देखिए
  10536. 7:03:01एक चीज़ समझिए। स्प्रिंग सिक्योरिटी
  10537. 7:03:03इंटरनली रोल को जब रिप्रेजेंट करता है तो
  10538. 7:03:06ग्रांटेड अथॉरिटी ग्रांटेड अथॉरिटी के
  10539. 7:03:10टाइप में करता है। आप देख रहे हो अथॉरिटी।
  10540. 7:03:12ठीक है? तो हमने क्या किया है? उसको पहले
  10541. 7:03:14ग्रांटेड अथॉरिटी से स्ट्रिंग में कन्वर्ट
  10542. 7:03:16किया था। जब उसको जेडब्ल्यूटी में ऐड कर
  10543. 7:03:18रहे थे और फिर उसको स्ट्रिंग से फिर से
  10544. 7:03:21ग्रांटेड अथॉरिटी में कन्वर्ट किया है।
  10545. 7:03:24ठीक है? क्योंकि हमें स्प्रिंग सिक्योरिटी
  10546. 7:03:25के साथ इस्तेमाल करना है। ठीक है? तो पहले
  10547. 7:03:27ऐसा किया फिर ऐसा किया। ठीक है? ये आपको
  10548. 7:03:29अब समझ गया रहेगा। ठीक है? ठीक है? तो
  10549. 7:03:31इतना कर लिया मैंने। अब ये जो अथॉरिटीज है
  10550. 7:03:33इसको मैं लूंगा और यहां पर एम्प्टी लिस्ट
  10551. 7:03:35डालने की जरूरत नहीं है। यहां पर मैं ये
  10552. 7:03:37वाली लिस्ट डाल दूंगा। ठीक है? यानी कि
  10553. 7:03:38रोल्स डाल दूंगा। इतना हो चुका है। ठीक
  10554. 7:03:40है? अब मुझे गेट ऑल क्लेम्स जो है उसको
  10555. 7:03:45डिफाइन करना है। तो यहां पर आ जाते हैं और
  10556. 7:03:47फिर यहां पर आएंगे। और अच्छा यहां पर
  10557. 7:03:50अच्छा यहां पर JWT यूटिल्स में आएगा ये।
  10558. 7:03:54और यहां पर इसको ओवर करते हैं और क्रिएट
  10559. 7:03:56कर लेते हैं ये मेथड। ठीक है? है तो JWT
  10560. 7:03:58यूटर्स में मैंने ये क्रिएट करना है और यह
  10561. 7:03:59यहां पर रिटर्न करूंगा JWTS डॉट पार्सर
  10562. 7:04:03बिल्डर अच्छा पार्सर
  10563. 7:04:071 मिनट पार्सर डॉट बिल्ड डॉट सेट अच्छा एक
  10564. 7:04:11मिनट
  10565. 7:04:15gws
  10566. 7:04:17डॉट पार्सर
  10567. 7:04:19तो हमें क्लेम्स रिट्रीव करना है तो हमने
  10568. 7:04:21सब्जेक्ट ऑलरेडी किया हुआ है तो मुझे
  10569. 7:04:22पार्सर बिल्डर करके कोई मेथड तो नहीं मिल
  10570. 7:04:24रहा है तो मुझे ना ये ही अप्रोच यूज़ यूज़
  10571. 7:04:27करना चाहिए। देखिए, यहां से हमने सब्जेक्ट
  10572. 7:04:28को रिट्रीव किया था। अब यहां से हम
  10573. 7:04:30रिट्रीव करेंगे गेट क्लेम्स। अच्छा
  10574. 7:04:33क्लेम्स भी नहीं मिल रहा है यहां पर। तो
  10575. 7:04:36गेट
  10576. 7:04:38पार्स क्लेम्स GW टी स्पार्स साइन
  10577. 7:04:41क्लेम्स। ठीक है? और फिर यहां पर डॉट गेट
  10578. 7:04:47पेलोड है। हेडर है। ठीक है? पेलोड और फिर
  10579. 7:04:50पेलोड में आएगा क्लेम्स। नहीं पेलोड में
  10580. 7:04:53क्लेम्स नहीं है। तो क्लेम्स है कहां
  10581. 7:04:55एक्चुअली में? पेलोड में ही क्लेम्स है तो
  10582. 7:04:58आइडली
  10583. 7:05:02तो देखिए पेलोड में ही क्लेम्स है राइट तो
  10584. 7:05:04हमें क्या करना चाहिए क्लेम्स को रिट्रीव
  10585. 7:05:06नहीं करना चाहिए ये गेट पेलोड पे ही कहानी
  10586. 7:05:08खत्म कर देनी चाहिए ठीक है एक्चुअली पहले
  10587. 7:05:11प्रीवियस अ जेडब्ल्यूटी वर्जनंस में एक
  10588. 7:05:13मेथड हुआ करता था गेट पार्स जो यानी कि
  10589. 7:05:16पार्सर बिल्डर उसके थ्रू हम क्लेम्स को
  10590. 7:05:18रिट्रीव कर पाते थे लेकिन अभी ये रीसेंट
  10591. 7:05:20वर्ज़ ऑफ़ JWT और सिक्योरिटी में यह थोड़ी
  10592. 7:05:23चेंजज़ आए हैं। तो इसके लिए थोड़ा कंफ्यूजन
  10593. 7:05:24था यहां पर। लेकिन ठीक है हमने क्रैक कर
  10594. 7:05:26लिया यहां पर देखिए जे डब्ल्यूटीएस पार्सर
  10595. 7:05:29वेरीफाई विद बिल्ड पारस साइन क्लेम्स और
  10596. 7:05:31फिर यहां पर पहले हमने गेट पेलोड और फिर
  10597. 7:05:34गेट सब्जेक्ट किया था क्योंकि हमें यहां
  10598. 7:05:35यूजरनेम सिर्फ चाहिए था यहां पर मैं क्या
  10599. 7:05:37कर रहा हूं गेट पे लोड पे रुक जा रहा हूं
  10600. 7:05:39ठीक है और फिर हमें पेलोड पूरा यहां पर
  10601. 7:05:41मिल जाएगा टोकन फ़िल्टर में और फिर पेलोड
  10602. 7:05:43में से हम सिर्फ रोल्स को रिट्रीव कर रहे
  10603. 7:05:45हैं। तो देखिए पेलोड हमें पूरा का पूरा
  10604. 7:05:47ऐसे ही मिल जाएगा। पेलोड में से रोल्स को
  10605. 7:05:49रिट्रीव कर रहे हैं। ठीक है? तो यह वर्क
  10606. 7:05:51होना चाहिए। ठीक है? अब देखते हैं यहां पर
  10607. 7:05:53रन करके कि होता क्या है?
  10608. 7:05:55ठीक है? और मैं क्या करना चाहूंगा? यहां
  10609. 7:05:58पर ना यहीं पर मैं मुझे जो लिस्ट मिल रही
  10610. 7:06:02है लिस्ट ऑफ अथॉरिटीज उसको या तो फिर यहां
  10611. 7:06:05पर ये जो मिल रही है उसको मैं प्रिंट भी
  10612. 7:06:07कर लेता हूं। ठीक है? तो मैं यहां पर
  10613. 7:06:08लिखता हूं रूल्स। ठीक है? और यहां पर
  10614. 7:06:11लिखता हूं रोल्स इस तरीके से। ठीक है?
  10615. 7:06:13रोल्स को प्रिंट भी कर लेता हूं। तो एक
  10616. 7:06:14हिसाब से क्या है? हमें रोल्स क्या आ रहे
  10617. 7:06:16हैं ना वो भी दिखाई देगा यहां पर। सिस्टम
  10618. 7:06:18डॉट डॉट डॉट प्रिंट एलन में। ठीक है?
  10619. 7:06:20प्रिंट कर सकते हो। लॉगर लगा सकते हो जैसा
  10620. 7:06:22आप चाहो। ठीक है? गोल है डाटा को देखना।
  10621. 7:06:24ठीक है? तो, यह मैंने लिख दिया और यहां पर
  10622. 7:06:26आ जाते हैं। यहां पर यह टोकन तो मैंने
  10623. 7:06:30रिट्रीव कर लिया। ठीक है? टोकन को लेते
  10624. 7:06:31हैं और फिर यहां पर ये जो रिक्वेस्ट है जो
  10625. 7:06:34पहले नहीं चल रही थी पुराने टोकन के साथ
  10626. 7:06:36वहां पर ऐड करते हैं। तो देखिए पुराने
  10627. 7:06:37टोकन के साथ अगर आप डाटा भेजते हो ये
  10628. 7:06:39पुराना टोकन है। तो अच्छा मुझे एरर आ रही
  10629. 7:06:42है यहां पर। एरर क्यों आ रही है? क्योंकि
  10630. 7:06:44इसमें रोल्स ही नहीं है। रूल्स देखिए नल
  10631. 7:06:46है। ठीक है? तो इसके लिए एरर आ रही है।
  10632. 7:06:49ठीक है? ये स्ट्रीम रिट्रीव नहीं कर सकता
  10633. 7:06:50क्योंकि ये नल है। तो अगर ये रोल नल है तो
  10634. 7:06:54आप यहां पर चेक भी लगा सकते हो। ठीक है?
  10635. 7:06:55लेकिन मैंने चेक नहीं लगाई है कि अगर रोल
  10636. 7:06:57नल है तो ये आगे नहीं बढ़ेगा या ऐसा कुछ
  10637. 7:06:59या यहां पर एम्प्टी अ लिस्ट ऑफ रूल्स आ
  10638. 7:07:02जाएगी। ऐसा कुछ कर सकते हो आप। ठीक है? तो
  10639. 7:07:04ये कौन सी लाइन पर आ रही है? ये यहां पर आ
  10640. 7:07:06रहा है। अच्छा यहां पर स्ट्रीम में
  10641. 7:07:08कन्वर्ट कर रहा है। उस पर आ रहा है
  10642. 7:07:09क्योंकि ये फिर स्ट्रीम में कन्वर्ट नहीं
  10643. 7:07:10हो सकता। ठीक है? तो मैं क्या कर सकता हूं
  10644. 7:07:13ना? यहां पर एक छोटा सा चेक भी लगा सकता
  10645. 7:07:15हूं। एक कोड इंप्रूवमेंट है एक हिसाब से।
  10646. 7:07:17तो देखिए यहां पर आपने इसमें कन्वर्ट किया
  10647. 7:07:19इसको तो यहां पर मैं लिखूंगा इफ
  10648. 7:07:23रोल्स नॉट इक्वल टू नल तो ही ये स्ट्रीम
  10649. 7:07:28में कन्वर्ट करेगा इसे ऐसे ठीक है नहीं तो
  10650. 7:07:32फिर ये क्या करेगा अच्छा अथॉरिटीज यहां पे
  10651. 7:07:36चला गया ये क्या करेगा नहीं तो फिर
  10652. 7:07:39अथॉरिटीज़ इज़ इक्वल टू
  10653. 7:07:42इक्वल टू लिस्ट ऑफ़
  10654. 7:07:46ऐसे कर देगा एम्प्टी लिस्ट क्रिएट कर दी
  10655. 7:07:47है वैसे भी उसने। ठीक है? और फिर इसको हटा
  10656. 7:07:50देते हैं हम। ठीक है? तो अगर नल नहीं है
  10657. 7:07:51तो ये क्या करेगा? यहां पर इसको ओवर
  10658. 7:07:53इनिशियलाइज़ कर देगा एज़ अ एम्प्टी लिस्ट।
  10659. 7:07:56ठीक है? और अगर नल है तो फिर इसको ओवराइड
  10660. 7:08:00कर देगा पूरा का पूरा डेटा। ठीक है? इसको
  10661. 7:08:02फिर से रन करके देखते हैं।
  10662. 7:08:09ठीक है? रन हो चुका है। और फिर यहां पर
  10663. 7:08:11इसको सेंड करेंगे। तो देखिए अब एरर नहीं
  10664. 7:08:13आनी चाहिए। रोल्स नल है। एरर नहीं आ रही
  10665. 7:08:15है। हमने एरर को हैंडल कर लिया है। अब
  10666. 7:08:17यहां पर जो एक्चुअल हमारी JWई टोकन थी
  10667. 7:08:19रोल्स वाली उसको हम लेंगे और फिर यहां पर
  10668. 7:08:22पहले इसको डिलीट कर देंगे और फिर इसको
  10669. 7:08:24पेस्ट कर देंगे और इसको सेंड कर देंगे। तो
  10670. 7:08:26देखिए अब चल गई। कैसे चली? क्योंकि यहां
  10671. 7:08:28पर रोल्स रिट्रीव हो पाए। देखिए रोल्स
  10672. 7:08:31रिट्रीव हो पाए। उम्मीद करता हूं यह
  10673. 7:08:33क्लियर है आपको रोल बेस्ड ऑथेंटिकेशन
  10674. 7:08:35जेडब्ल्यूडी में आप किस तरीके से कर सकते
  10675. 7:08:37हो। देखिए ये काफी एडवांस कांसेप्ट है।
  10676. 7:08:39यहां पर टोकन में आप रोल्स को एंबेड कर
  10677. 7:08:42रहे हो। यहां पर काफी सारे कांसेप्ट्स
  10678. 7:08:43आपको सीखने मिले। ऑथेंटिकेशन तो हम कर रहे
  10679. 7:08:45थे पहले लेकिन रोल्स का इस्तेमाल नहीं कर
  10680. 7:08:47रहे थे। मैं यहां पर एंप्टी रोल की लिस्ट
  10681. 7:08:49भेज रहा था। अगर आपको याद हो तो। यहां पर
  10682. 7:08:52अथॉरिटीज़ के बजाय एम्प्टी लिस्ट ऑफ रोल्स
  10683. 7:08:54भेज रहा था। ठीक है? लेकिन यहां पर अब
  10684. 7:08:56रोल्स हमें रिट्रीव हो रहे हैं। ठीक है?
  10685. 7:08:59उम्मीद करता हूं ये पूरा का पूरा हेल्पफुल
  10686. 7:09:02रहा है। पूरा का पूरा आपको समझ में आया है
  10687. 7:09:04कि हम कर क्या रहे हैं। ठीक है?
  10688. 7:09:11तो देखिए दोस्तों, अब एक बार फिर से
  10689. 7:09:13रिवाइज कर लेते हैं यह सारी कांसेप्ट्स।
  10690. 7:09:15ठीक है? रिवीजन जरूरी है। तो देखिए, सबसे
  10691. 7:09:18पहले तो मैं फाइल्स के बारे में बता देता
  10692. 7:09:20हूं। क्या-क्या फाइल्स का हम इस्तेमाल कर
  10693. 7:09:21रहे हैं? सबसे पहले तो सिक्योरिटी कॉन्फिग
  10694. 7:09:23फाइल मैं सब कुछ क्लोज कर देता हूं यहां
  10695. 7:09:25पे ताकि थोड़ा क्लीन दिखे। सिक्योरिटी
  10696. 7:09:26कॉन्फिग सिक्योरिटी कॉन्फ़िग है क्या?
  10697. 7:09:28सिक्योरिटी कॉन्फ़िग एक हिसाब से
  10698. 7:09:30सेंट्रलाइज़ कॉन्फ़िगरेशन है हमारी
  10699. 7:09:32एप्लीकेशन की। पॉइंट नंबर वन। ठीक है? फिर
  10700. 7:09:35दूसरी इंपॉर्टेंट फाइल हमारे पास है
  10701. 7:09:37ऑथेंटिकेशन टोकन फिल्टर। ऑथ टोकन फिल्टर
  10702. 7:09:39इसका नाम दिया मैंने। आप नाम कोई भी दे
  10703. 7:09:41सकते हो। मैंने ये नाम दिया है। ठीक है?
  10704. 7:09:43ये क्या है? यह एक हिसाब से फ़्टर है जो कि
  10705. 7:09:46हर इनकमिंग रिक्वेस्ट को आने पर वैलिडेट
  10706. 7:09:48करता है और एक जेडब्ल्यूटी की हेल्पर
  10707. 7:09:50क्लास है जिसको हमने क्रिएट किया है। तो
  10708. 7:09:52इन तीन क्लासेस की मदद से हमने पूरा का
  10709. 7:09:55पूरा जेडब्ल्यूटी ऑथेंटिकेशन को खत्म किया
  10710. 7:09:57है। और एक और क्लास है जिसका हम इस्तेमाल
  10711. 7:09:59कर रहे हैं लॉग इन रिक्वेस्ट जो कि हमारी
  10712. 7:10:01जो लॉग इन की रिक्वेस्ट किस फॉर्म में
  10713. 7:10:02आएंगी उसको डिफाइन करती है। ये एक डीटीओ
  10714. 7:10:04की तरह है। लेकिन फिलहाल इसको इग्नोर
  10715. 7:10:06कीजिए। जेडब्ल्यूडी चलने के लिए ये तीन
  10716. 7:10:08चीजें जरूरी है। ठीक है? तो रिवाइज करते
  10717. 7:10:11हैं। किया क्या है? ठीक है? तो देखिए दो
  10718. 7:10:14चीजें हैं। सबसे पहले तो जेडब्ल्यूटी को
  10719. 7:10:16इशू करना और दूसरी चीज है आती हुई
  10720. 7:10:19जेडब्ल्यूटी को वैलिडेट करना। इशू तो चलो
  10721. 7:10:22हम लाइब्रेरी की मदद से कर सकते हैं।
  10722. 7:10:24जेडब्ल्यूटी की जो डिपेंडेंसी ऐड की है
  10723. 7:10:25उसकी मदद से हम कर सकते हैं। अब जो आती
  10724. 7:10:28हुई jडब्ल्यूटी है उसको वैलिडेट कैसे
  10725. 7:10:29करेंगे? उसको वैलिडेट करने के लिए आपको
  10726. 7:10:31पता है बेस्ट प्लेस कौन सी होगी? फ़िल्टर
  10727. 7:10:33चेन। क्यों होगी बेस्ट प्लेस? क्योंकि वो
  10728. 7:10:35हर आती हुई रिक्वेस्ट को इनकमिंग
  10729. 7:10:37रिक्वेस्ट को इंटरसेप्ट करती है। ठीक है?
  10730. 7:10:40तो हमने क्या सोचा? हम एक हमारा कस्टम
  10731. 7:10:42फ़िल्टर बनाते हैं। ये स्टार वाला फ़िल्टर
  10732. 7:10:44हमारा फ़िल्टर है और इसको कहीं तो फ़्टर चेन
  10733. 7:10:46में प्लेस कर देते हैं। ठीक है? हमने
  10734. 7:10:47प्लेस किया उसको यूजरनेम पासवर्ड
  10735. 7:10:49ऑथेंटिकेशन फ़िल्टर के आगे। क्योंकि वो
  10736. 7:10:52फ़िल्टर क्या पहले JWT ऑथेंटिकेशन हो जाना
  10737. 7:10:54चाहिए। क्योंकि वो जो ऑथेंटिकेशन फ़्टर है
  10738. 7:10:56वो यूजरनेम पासवर्ड के द्वारा ऑथेंटिकेट
  10739. 7:10:59करता है रिक्वेस्ट को और रिजेक्ट करता है।
  10740. 7:11:00अगर वो नहीं है तो। तो हमने उसके आगे ही
  10741. 7:11:02Jडब्यूटी ऑथेंटिकेशन फ़िल्टर हमारा ऐड कर
  10742. 7:11:04दिया। ठीक है? ये वाला फ़िल्टर। अब लॉजिक
  10743. 7:11:06को समझते हैं। ठीक है? यहां पर आ जाएंगे।
  10744. 7:11:10JWT और यूटिल्स में हमने कुछ लॉजिक डिफाइन
  10745. 7:11:13किए। ठीक है? कुछ मेथड्स जहां पर हम
  10746. 7:11:16हेल्पर हेल्पर क्लासेस की मदद यानी कि
  10747. 7:11:20डिपेंडेंसी की मदद से हमने कुछ हेल्पर
  10748. 7:11:22मेथड्स बनाए। ठीक है? तो सबसे पहले तो
  10749. 7:11:24Jडब्ल्यूडी सीक्रेट और एक्सपाइरेशन हमने
  10750. 7:11:26डिफाइन किया है। ठीक है? उसके बाद में
  10751. 7:11:28हमने एक मेथड डिफाइन किया है जिसके जरिए
  10752. 7:11:30हम जो भी JडW आ रही है। ठीक है? उसको
  10753. 7:11:33रिट्रीव कर पा रहे हैं हेडर से। ये सबसे
  10754. 7:11:36पहली चीज़। ठीक है? तो देखिए जेडब्ल्यूटी आ
  10755. 7:11:38रही है उसको रिट्रीव करने का भी तो लॉजिक
  10756. 7:11:40चाहिए। जेडब्ल्यूटी आएगी किस फॉर्म में?
  10757. 7:11:42ऑथराइजेशन हेडर में आएगी और बेरर स्पेस ये
  10758. 7:11:46प्रीफिक्स के साथ आएगी। तो हमको सिर्फ
  10759. 7:11:48स्ट्रिंग चाहिए ऑथ जेड टोकन उसको निकाल
  10760. 7:11:51लेंगे हम। और ये पूरा लॉजिक उसके लिए है।
  10761. 7:11:53फिर दूसरी चीज़ है हमने अ टोकन इशू करने के
  10762. 7:11:58लिए एक लॉजिक लिखा था। तो टोकन इशू करने
  10763. 7:12:01के लिए यह वाला लॉजिक है। जनरेट टोकन
  10764. 7:12:03फ्रॉम यूजरनेम। अब इसमें हमने यूजरनेम
  10765. 7:12:07को ऐड किया है जेडब्ल्यूडी टोकन में
  10766. 7:12:10सब्जेक्ट की जगह पर और क्लेम में ऐड किया
  10767. 7:12:12है रोल्स को। ठीक है? और इशू डेट
  10768. 7:12:15एक्सपायरेशन सेट की है और साइन करके इसको
  10769. 7:12:18रिटर्न कर दिया। ठीक है? रोल्स सेट करते
  10770. 7:12:21वक्त हमने रोल्स जो थे हमारे यूजर डिटेल्स
  10771. 7:12:23में उसको स्ट्रीम की मदद से ग्रांटेड
  10772. 7:12:26अथॉरिटी के टाइप से चेंज कर कर स्ट्रिंग
  10773. 7:12:28में कन्वर्ट किया है। क्योंकि हमको वो
  10774. 7:12:31रोल्स की जो क्लेम है उसमें ऐड करना है।
  10775. 7:12:34ठीक है? JW टोकन में ऐड करना है। यह हो
  10776. 7:12:36गया। वैलिडेशन का लॉजिक सिंपल है। हमने
  10777. 7:12:38यहां पर वैलिडेट किया है। यह की हमने
  10778. 7:12:40रिटर्न की है बेस 64डेड की। ठीक है? और यह
  10779. 7:12:43Jडw सीक्रेट का इस्तेमाल कर रही है। हमने
  10780. 7:12:45एक हेल्प मेथड लिखा है यूजरनेम को टोकन से
  10781. 7:12:47रिट्रीव करने के लिए और क्लेम्स को भी
  10782. 7:12:50रिट्रीव करने के लिए JWई टोकन से। ठीक है?
  10783. 7:12:53इतना काम हो गया। अब फ़्टर की बात करते
  10784. 7:12:56हैं। अब मैंने सोचा कि फ़िल्टर बना लेते
  10785. 7:12:58हैं। मैंने नहीं ये स्टैंडर्ड प्रैक्टिस
  10786. 7:12:59है। फ़्टर बनाते हैं और टोकन फ़िल्टर का
  10787. 7:13:01इस्तेमाल करके। ठीक है? यहां पर हमने सबसे
  10788. 7:13:04पहले तो हेल्पर को ले लिया। ठीक है?
  10789. 7:13:06हेल्पर का इस्तेमाल कर लिया। यहां पर डू
  10790. 7:13:08फिल्टर इंटरनल मेथड का इस्तेमाल किया
  10791. 7:13:10क्योंकि यह है एब्स्ट्रैक्ट क्लास वंस पर
  10792. 7:13:13रिक्वेस्ट फिल्टर। और ये फ़्टर को एक्सटेंड
  10793. 7:13:16करना जरूरी है। ये क्लास को एक्सटेंड करना
  10794. 7:13:18जरूरी है। अगर आप कोई फ़िल्टर बना रहे हो
  10795. 7:13:20जो हर रिक्वेस्ट पर एक बार एग्जीक्यूट
  10796. 7:13:22होनी है। ठीक है? यूटिलिटी क्लास को ऑटो
  10797. 7:13:25ऑटो वायर कर लिया यहां पर। ठीक है? यहां
  10798. 7:13:27पर सबसे पहले हम JडW को पास कर रहे हैं।
  10799. 7:13:30यानी JW टोकन को हेडर से एक्सट्रैक्ट
  10800. 7:13:32करें। सबसे पहला काम तो वही करना होगा
  10801. 7:13:33क्योंकि JWT टोकन के अराउंड ही सब कुछ काम
  10802. 7:13:36करता है। ठीक है? आगे बढ़ने से पहले मैं
  10803. 7:13:38आपको इसके पैरामीटर्स भी बता दूं जो मैंने
  10804. 7:13:40आपको बताए नहीं थे। डू फ़िल्टर इंटरनल।
  10805. 7:13:42यहां पर तीन पैराटर्स आपको देखने मिलते
  10806. 7:13:44हैं। ठीक है? ये आपको इनकमिंग रिक्वेस्ट
  10807. 7:13:47देता है। ये आपको आउटगोइंग रिस्पांस देता
  10808. 7:13:50है। आप चाहो तो मॉडिफाई कर सकते हो
  10809. 7:13:52रिस्पांस जो हमने किया नहीं है क्योंकि
  10810. 7:13:53जरूरत नहीं थी। और आप यहां पे फ़्टर चेन भी
  10811. 7:13:57मिलता है आपको। ठीक है? जो रिमेनिंग
  10812. 7:13:58फ़िल्टर है वो इसमें होगे फ़्टर चेन में।
  10813. 7:14:01ठीक है? और लास्ट में आपको क्या करना है?
  10814. 7:14:03फिल्टर चेन को कंटिन्यू बोल देना है और
  10815. 7:14:05रिक्वेस्ट रिस्पांस को पास कर देना है।
  10816. 7:14:07रिक्वेस्ट और रिस्पांस में अगर आप कोई
  10817. 7:14:09मॉडिफिकेशन करते हो तो बाकी के जो
  10818. 7:14:10फिल्टर्स हैं उसके पास वो मॉडिफाइड
  10819. 7:14:12रिक्वेस्ट और रिस्पांस ऑब्जेक्ट जाएगी।
  10820. 7:14:14एक्चुअल वन नहीं। ठीक है? क्योंकि आपने
  10821. 7:14:16मॉडिफाई किया है। ठीक है? इतना समझ में आ
  10822. 7:14:19गया? अब यहां पर हमने जेडब्ल्यूडी को पास
  10823. 7:14:22किया। जेडब्ल्यूडी को पास किया और फिर चेक
  10824. 7:14:25किया जेडब्ल्यूडी को कि वो नल तो नहीं है
  10825. 7:14:27और वैलिड है या नहीं। नल और वैलिड अगर
  10826. 7:14:30नहीं है। ठीक है? फिर हम हमने ये लॉजिक
  10827. 7:14:34एग्जीक्यूट किया। सबसे पहले तो यूजरनेम को
  10828. 7:14:37रिट्रीव किया। ठीक है? यूजरनेम को रिट्रीव
  10829. 7:14:39किया कहां से? अ हमने एक्सट्रैक्ट किया अ
  10830. 7:14:42यूजरनेम को जेडब्ल्यूई टोकन से। क्योंकि
  10831. 7:14:44हमने वहां पर सब्जेक्ट में ऐड कर रखा था।
  10832. 7:14:46और उसका लॉजिक भी हमने यहां पर लिख रखा
  10833. 7:14:48है। ठीक है? सब्जेक्ट को रिट्रीव कर लिया।
  10834. 7:14:50ठीक है? दूसरी चीज़ हमें चाहिए थी रूल्स।
  10835. 7:14:53अब ये रूल्स क्यों चाहिए थी? रोल्स
  10836. 7:14:55क्लेम्स के फॉर्म में एडेड थी। रोल्स
  10837. 7:14:57चाहिए थी ताकि हम रोल बेस्ड एक्सेस
  10838. 7:14:59कंट्रोल इंप्लीमेंट कर पाए GWD की मदद से।
  10839. 7:15:02ठीक है? यहां पर हम यूजर डिटेल्स का भी
  10840. 7:15:04इस्तेमाल करना चाह रहे थे। पहले देखिए
  10841. 7:15:05हमने मैंने यूजर डिटेल से भी कर रखा है ये
  10842. 7:15:08लॉजिक। लेकिन सर्कुलर डिपेंडेंसी की एरर आ
  10843. 7:15:10रही थी और रीसेंट वर्शन्स ऑफ़ स्प्रिंग बूट
  10844. 7:15:12में सर्कुलर डिपेंडेंसीज़ अलाउड नहीं है।
  10845. 7:15:14तो मैंने अ वो कोड को हटाकर JWT में JW
  10846. 7:15:19टोकन में ऐड किया मैंने रूल्स। ठीक है?
  10847. 7:15:22इतना होने के बाद मैंने रिट्रीव कर लिया
  10848. 7:15:24रूल्स को स्ट्रिंग फॉर्म में लिस्ट में और
  10849. 7:15:26उसको प्रिंट भी कर लिया देखने के लिए एक
  10850. 7:15:28बार और फिर इस रूल्स को हमें कन्वर्ट करना
  10851. 7:15:31होता है ग्रांटेड अथॉरिटी टाइप की लिस्ट
  10852. 7:15:34में। ठीक है? वो क्यों करना है? क्योंकि
  10853. 7:15:36इंटरनली स्प्रिंग सिक्योरिटी काम करता है
  10854. 7:15:39ग्रांटेड अथॉरिटी ऑब्जेक्ट्स पर ही। अगर
  10855. 7:15:42रोल्स का बात कर करोगे आप तो। ग्रांटेड
  10856. 7:15:44अथॉरिटी ऑब्जेक्ट के टाइप में ही चाहिए
  10857. 7:15:46स्प्रिंग सिक्योरिटी को। तो, हमको वह टू
  10858. 7:15:48एंड फ़्रो करना होगा थोड़ा। उसको कन्वर्ट कर
  10859. 7:15:50दिया हमने। हर रोल को कन्वर्ट किया
  10860. 7:15:52ग्रांटेड अथॉरिटी के टाइप में। यहां पर वो
  10861. 7:15:55लॉजिक है। ठीक है? और अगर रोल नहीं भेज
  10862. 7:15:57रहे हम तो हमने ग्रांटेड ये जो लिस्ट है
  10863. 7:16:00उसको एम्प्टी डिक्लेअ कर दिया यहां पर।
  10864. 7:16:02ठीक है? इतना हो गया। फिर हमने यहां पर एक
  10865. 7:16:05ऑथेंटिकेशन का ऑब्जेक्ट बना लिया।
  10866. 7:16:07ऑथेंटिकेशन का ऑब्जेक्ट क्यों बनाया?
  10867. 7:16:08क्योंकि हमें ये ऑथेंटिकेशन के ऑब्जेक्ट
  10868. 7:16:10को सिक्योरिटी कंटेक्स्ट में स्टोर करना
  10869. 7:16:12है। करेक्ट? तो ये यूजरनेम अभी आप बोलोगे
  10870. 7:16:15यूजरनेम पासवर्ड ऑथेंटिकेशन टोकन का
  10871. 7:16:16ऑब्जेक्ट बनाया आपने। तो ऑथेंटिकेशन
  10872. 7:16:18ऑब्जेक्ट कहां है? जी हां। तो यह
  10873. 7:16:19ऑथेंटिकेशन का ही ऑब्जेक्ट है क्योंकि
  10874. 7:16:21यूजरनेम पासवर्ड ऑथेंटिकेशन टोकन एक सब
  10875. 7:16:24क्लास है ऑथेंटिकेशन की। आप देख पा रहे
  10876. 7:16:26हो? ठीक है? और यहां पर यूजरनेम, पासवर्ड
  10877. 7:16:29ऑथेंटिकेशन टोकन के डॉक्यूमेंटेशन में भी
  10878. 7:16:31आपको मिल जाएगा कि एन इंप्लीमेंटेशन ऑफ़
  10879. 7:16:35ऑथेंटिकेशन। देखिए ये ऑथेंटिकेशन का एक
  10880. 7:16:37इंप्लीमेंटेशन है जो कि डिज़ है फॉर सिंपल
  10881. 7:16:40प्रेजेंटेशन ऑफ यूजरनेम एंड पासवर्ड। तो
  10882. 7:16:43ये ऑब्जेक्ट हमें क्यों चाहिए? ये
  10883. 7:16:44ऑब्जेक्ट हमें इसलिए चाहिए ताकि हम
  10884. 7:16:46सिक्योरिटी कॉन्टेक्स्ट में एक हमें
  10885. 7:16:48ऑथेंटिकेशन का ही ऑब्जेक्ट स्टोर करना
  10886. 7:16:50होता है। देखिए सिक्योरिटी कॉन्टेक्स्ट जो
  10887. 7:16:52होती है ना यहां पर जो ऑथेंटिकेटेड यूजर
  10888. 7:16:55की जो इनेशन है वो ऑथेंटिकेशन का ऑब्जेक्ट
  10889. 7:16:58चाहिए। ऑथेंटिकेशन जो इंटरफ़ेस है उसका
  10890. 7:17:01टाइप चाहिए होता है यहां पर स्टोर करने के
  10891. 7:17:04लिए। वो इसी तरह से स्टोर होता है। यही
  10892. 7:17:06सिंटेक्स है और यही इसका नॉर्म है। ठीक
  10893. 7:17:09है? तो हमने इसका इस्तेमाल किया यहां पर।
  10894. 7:17:12ठीक है? और फिर इसको सेट करने से पहले
  10895. 7:17:14सिक्योरिटी कॉन्टेक्स्ट में हमने
  10896. 7:17:16रिक्वेस्ट की जो डिटेल्स थी वह भी ऐड कर
  10897. 7:17:18दी। ऑथेंटिकेशन ऑब्जेक्ट में। देखिए ये
  10898. 7:17:20हमने किया। ये करने की जरूरत नहीं है
  10899. 7:17:22लेकिन कर दिया हमने। बेस्ट प्रैक्टिस है।
  10900. 7:17:23ये होने के बाद सिक्योरिटी कॉन्टेक्स्ट
  10901. 7:17:25अपडेट हो चुका। तो, यहां पर जो रिक्वेस्ट
  10902. 7:17:27है हमारी, वो ऑथेंटिकेटेड मार्क हो गई।
  10903. 7:17:29देखिए, रिक्वेस्ट आई। सारे फ़िल्टर्स
  10904. 7:17:31एग्जीक्यूट हुए। हमारे फ़िल्टर तक आई।
  10905. 7:17:32हमारे फ़िल्टर में हमने जेडब्ल्यूडी को
  10906. 7:17:34ऑथेंटिकेट किया। रोल्स वगैरह सेट किए
  10907. 7:17:36ऑथेंटिकेशन ऑब्जेक्ट में और फिर
  10908. 7:17:38ऑथेंटिकेशन ऑब्जेक्ट को यहां पर सेट कर
  10909. 7:17:39दिया। तो सिक्योरिटी कॉन्टेक्स्ट में यह
  10910. 7:17:41रिक्वेस्ट जो है वह ऑथेंटिकेटेड है। आगे
  10911. 7:17:44के फिल्टर्स को पता रहेगा कि यह
  10912. 7:17:46ऑथेंटिकेटेड है। आगे अगर कंट्रोलर्स भी
  10913. 7:17:48एक्सेस करते हैं उनको पता है ये
  10914. 7:17:50ऑथेंटिकेटेड है। करेक्ट? रोल्स सारी यूजर
  10915. 7:17:52इनेशन लोडेड है। करेक्ट? इतना हो गया। अब
  10916. 7:17:56इतना होने के बाद हमने कह दिया कि फ़िल्टर
  10917. 7:17:58को कंटिन्यू रखा जाए और यहां पर रिक्वेस्ट
  10918. 7:18:00रिस्पांस के ऑब्जेक्ट पास कर दी। तो इतना
  10919. 7:18:02हो गया। ठीक है? अब देखिए यह फिर आगे जाती
  10920. 7:18:06है रिक्वेस्ट और फिर हमारे कंट्रोलर पर
  10921. 7:18:08हिट करती है। हमारा कंट्रोलर कहां पर है?
  10922. 7:18:11कंट्रोलर हमने यहां पर लिखा हुआ है। ठीक
  10923. 7:18:13है? और कंट्रोलर यहां पर लिखा हुआ है। तो
  10924. 7:18:16यहां पर अब इसको एक्सेस करने के लिए यूजर
  10925. 7:18:19का रोल चाहिए। यूजर का रोल चाहिए। तो अब
  10926. 7:18:22देखिए यहां पर सिक्योरिटी कॉन्फ़िग में
  10927. 7:18:24हमने डिफाइन कर रखा है यूजर का रोल। ठीक
  10928. 7:18:26है? तो यूजर का रोल है। तो रोल तो हमने
  10929. 7:18:29ऑलरेडी ऐडेड है। तो फिर यह चलने लग गया।
  10930. 7:18:31बेसिकली रोल बेस्ड ऑथराइजेशन करेक्ट। अब
  10931. 7:18:34मैं एडमिन का एक्सेस करना चाहूं। यहां पर
  10932. 7:18:36देखिए यूजर की एपीआई में एक्सेस कर पा रहा
  10933. 7:18:38हूं। एडमिन का एक्सेस कर पाऊं करना चाहूं
  10934. 7:18:42तो नहीं चलेगा ये। क्योंकि ये फॉरबिडन है।
  10935. 7:18:44क्यों? क्योंकि इसमें जो रोल है वो यूजर
  10936. 7:18:46का है। तो आप कैसे कॉल कर रहे हो? एडमिन
  10937. 7:18:49एपीआई अलाउड ही नहीं है। तो, यह काम कर
  10938. 7:18:51रहा है। ठीक है? और यहां पर ज्यादा कुछ
  10939. 7:18:54चेंज नहीं किया हमने। सिक्योरिटी
  10940. 7:18:55कॉन्फ़िगरेशन में सिंपल ही है। यह
  10941. 7:18:57सिक्योरिटी कॉन्फ़िगरेशन है। जहां पर हमने
  10942. 7:18:59सीएसआरएफ को डिसेबल किया है क्योंकि पोस्ट
  10943. 7:19:01रिक्वेस्ट आनी है। और अगर पोस्ट रिक्वेस्ट
  10944. 7:19:03आप भेजते हो तो उसमें सीएसआरएफ टोकन
  10945. 7:19:04एक्सपेक्ट करता है। ठीक है? टोकन बेस्ड
  10946. 7:19:06ऑथेंटिकेशन में तो उसको डिसेबल किया है।
  10947. 7:19:08और यहां पर हमने ये फ़्टर को ऐड किया। ये
  10948. 7:19:10लॉजिक है फ़िल्टर को ऐड करने का। देखिए,
  10949. 7:19:13फ़िल्टर तो यहां पर आपने लिख दिया। फ़िल्टर
  10950. 7:19:16चेन में फ़िल्टर लिख दिया। लेकिन, ये कहां
  10951. 7:19:18पर ऐड होना है? उसका ऑर्डर डिसाइड होता है
  10952. 7:19:20यहां पर। तो, यह मैंने ऑर्डर डिसाइड किया
  10953. 7:19:22यूजर नेम, पासवर्ड, ऑथेंटिकेशन फ़्टर के
  10954. 7:19:23आगे। तो बिफोर ऑथेंटिकेटिंग यूजिंग
  10955. 7:19:26यूजरनेम एंड पासवर्ड मैं टोकन बेस्ड
  10956. 7:19:28ऑथेंटिकेशन का लॉजिक ऐड कर दिया। तो
  10957. 7:19:30रिक्वेस्ट ऑथेंटिकेट हो गई। ठीक है? और
  10958. 7:19:33फिर ये तो पहले से लिखा हुआ था कोड। ठीक
  10959. 7:19:35है? तो उम्मीद करता हूं यह पूरा क्लियर
  10960. 7:19:37रहा, हेल्पफुल रहा। आपको कैसा लगा मुझे
  10961. 7:19:40बताइए। यह पूरा का पूरा एक्सप्लेनेशन।
  10962. 7:19:42काफी सारी चीजें हमने सीखी। देखिए काफी
  10963. 7:19:44सारी चीजें सीखी। हमने सबसे पहले तो टोकन
  10964. 7:19:47बेस्ड JW का मतलब सीखा। JWD है क्या? टोकन
  10965. 7:19:51बेस्ड ऑथेंटिकेशन सीखा। टोकन बेस्ड
  10966. 7:19:53ऑथेंटिकेशन होता क्यों है? ठीक है? उसके
  10967. 7:19:56बाद में हमने सिंपल टोकन बेस्ड ऑथेंटिकेशन
  10968. 7:19:58देखा। सिंपल टोकन बेस्ड यानी कि उसमें
  10969. 7:19:59रोल्स वगैरह का कुछ झमेला नहीं। फिर हमने
  10970. 7:20:02ये देखा कि हम एक्स्ट्रा इनेशन को कैसे ऐड
  10971. 7:20:04कर सकते हैं टोकन में। जैसे कि हमने ऐड
  10972. 7:20:06किया रोल्स। अब आपकी कोई एप्लीकेशन में
  10973. 7:20:09डोमेन स्पेसिफिक इनेशन है। जैसे कि आप
  10974. 7:20:11हॉस्पिटल मैनेजमेंट सिस्टम बना रहे हो और
  10975. 7:20:13आपको कुछ ऐड करना है टोकन में। ठीक है? कि
  10976. 7:20:17चलिए इसको एडमिन पैनल का एक्सेस है या
  10977. 7:20:19नहीं? या इसको यह एक्सेस है या नहीं? या
  10978. 7:20:21ये यूजर ने ये वेरीिफाइड यूजर है या नहीं?
  10979. 7:20:23ईमेल वेरीिफाइड ऐसे कुछ डाटा ऐड करना है
  10980. 7:20:25तो आप ऐड कर सकते हो टोकन में। कहां ऐड
  10981. 7:20:27करोगे? क्लेम्स में ऐड करोगे। ठीक है? फिर
  10982. 7:20:30हमें डिकोड करते वक्त वो डेटा को रिट्रीव
  10983. 7:20:33कैसे करना है वो भी हमने देखा है। करेक्ट?
  10984. 7:20:35देखा है या नहीं? देखा है? यहां पर
  10985. 7:20:37रिट्रीव कैसे करना है उस डिटेल को। यहां
  10986. 7:20:40पर हमने देखिए क्लेम्स को रिट्रीव किया और
  10987. 7:20:42उसमें से रूल्स निकाले हैं। अगर आप कल को
  10988. 7:20:44कुछ और डाटा ऐड करते हो क्लेम्स में रूल्स
  10989. 7:20:47की बजाय आपने कुछ परमिशन ऐड कर दिया। कुछ
  10990. 7:20:49ऐड कर दिया तो उसको आप इस तरीके से
  10991. 7:20:50रिट्रीव कर सकते हो और इस्तेमाल कर सकते
  10992. 7:20:52हो। यह काफी लॉन्ग टर्म नॉलेज है जो आपको
  10993. 7:20:54मिल रही है यहां पर। ठीक है? JWT
  10994. 7:20:57ऑथेंटिकेशन वि रोल बेस्ड एक्सेस कंट्रोल
  10995. 7:20:59अलोंग विद ए लॉट ऑफ़ कांसेप्ट्स। उम्मीद
  10996. 7:21:02करता हूं मजा आया बहुत। मुझे तो बहुत आया।
  10997. 7:21:10तो देखिए दोस्तों, अब हम आ चुके हैं
  10998. 7:21:13फिटनेस मोनोलथ एप्लीकेशन में। ठीक है? और
  10999. 7:21:17यहां पर हम सिक्योरिटी इंप्लीमेंट करने की
  11000. 7:21:20ओर जाएंगे। ठीक है? अब तक हमने क्या किया
  11001. 7:21:22है? यहां पर अगर आप देखेंगे तो हमारे पास
  11002. 7:21:24ऑथ कंट्रोलर है। इसमें यूजर रजिस्टर हो
  11003. 7:21:26रहा है। ठीक है? लेकिन ऐसे लॉग इन वगैरह
  11004. 7:21:28करने की कोई फंक्शनैलिटी नहीं है और ना ही
  11005. 7:21:30कोई सिक्योरिटी कॉन्फ़िगरेशन है और ना ही अ
  11006. 7:21:34एंड पॉइंट्स ऑथेंटिकेटेड है। ठीक है? तो
  11007. 7:21:36सारी की सारी एंड पॉइंट्स ऐसी ओपन पब्लिक
  11008. 7:21:38है। कोई भी आकर इसे इस्तेमाल कर सकता है।
  11009. 7:21:40तो मैं क्या करूंगा? ऑथेंटिकेशन की ओर
  11010. 7:21:42बढ़ेंगे हम। और हमें क्या करना है? हमें
  11011. 7:21:45यहां पर यूजर की ओर आना है। ठीक है? ये
  11012. 7:21:47यूजर मॉडल हमने बनाया हुआ है। तो देखिए ये
  11013. 7:21:50यूजर मॉडल है। लेकिन इसमें अब रोल की कोई
  11014. 7:21:54केयरिंग नहीं की गई है। ठीक है? यानी रोल
  11015. 7:21:57का इस्तेमाल नहीं किया गया है यहां पर।
  11016. 7:21:59ठीक है? हम सिर्फ यूजर की इनेशन स्टोर कर
  11017. 7:22:02रहे हैं। क्योंकि इसको सिक्योरिटी अ
  11018. 7:22:05स्टैंड पॉइंट से बनाया नहीं था। ठीक है?
  11019. 7:22:06सिक्योरिटी के मॉडिफिकेशंस जो हमें करने
  11020. 7:22:09चाहिए वो हमने किए नहीं थे। तो वो अब हम
  11021. 7:22:11करेंगे। हम कोड को रिफैक्टर करेंगे। ठीक
  11022. 7:22:15है? और रोल वगैरह। तो देखिए यहां पर यूजर
  11023. 7:22:18की इनफेशन तो सब सही से स्टोर हो रही है।
  11024. 7:22:20मेरे हिसाब से हमें क्या करना चाहिए? यहां
  11025. 7:22:22पर रोल की इनेशन स्टोर करनी चाहिए। ठीक
  11026. 7:22:25है? तो मैं क्या करूंगा? यहां पर आऊंगा और
  11027. 7:22:28यहां पर लास्ट नेम के बाद में मैं कहूंगा
  11028. 7:22:29प्राइवेट। ठीक है? यूजर रोल ऐसे और यहां
  11029. 7:22:33पर कहूंगा रोल इज़ इक्वल टू। ठीक है? यूजर
  11030. 7:22:37रोल डॉट यूजर। ठीक है? ऐसे। अब ये दोस्तों
  11031. 7:22:41आप बोलोगे ये क्या लिख रहे हो? तो ये
  11032. 7:22:42बेसिकली हम एक इनम बनाने वाले हैं। ये इनम
  11033. 7:22:45होने वाला है। ठीक है? और यहां पर मैं
  11034. 7:22:46लिखने वाला हूं एनुमिटेड।
  11035. 7:22:49जब भी आपको अ ऐसे इनम वैल्यूज़ इस्तेमाल
  11036. 7:22:52करनी है एंटिटी में तो आपको एनुमिटेड
  11037. 7:22:54लिखना है। ठीक है? और यहां पर इनम टाइप
  11038. 7:22:57स्ट्रिंग लिखना है। इनम टाइप डॉट
  11039. 7:22:59स्ट्रिंग। ठीक है? ताकि इसकी जो स्ट्रिंग
  11040. 7:23:01वैल्यू है वो स्टोर हो डेटाबेस में। अगर
  11041. 7:23:03आप ये नहीं लिखोगे तो जो इंडेक्स है वो
  11042. 7:23:05स्टोर होगा। ठीक है? तो ये तो इनम बन गया।
  11043. 7:23:07अब मैं क्या करूंगा? इस पर होवर करूंगा एक
  11044. 7:23:09हिसाब से ऐसे और फिर मोर एक्शंस करूंगा और
  11045. 7:23:12यहां पर इनम बना लूंगा ऐसे। ठीक है? तो ये
  11046. 7:23:15इनम तो बन चुका है यहां पर और यहां पर मैं
  11047. 7:23:18लिख दूंगा यूजर। ठीक है? अ यूजर और एडमिन
  11048. 7:23:22ऐसे दो रोल हम बनाएंगे। ठीक है? तो यूजर
  11049. 7:23:25को हम इस यहां पर इस्तेमाल कर रहे हैं।
  11050. 7:23:27ठीक है? यूजर को इस्तेमाल कर रहे हैं। तो
  11051. 7:23:28देखिए दोस्तों, यहां पर यूजर का इस्तेमाल
  11052. 7:23:30हो रहा है। और ये जो वैल्यू है, यह
  11053. 7:23:32डिफॉल्ट वैल्यू है। ठीक है? ये हम लोग
  11054. 7:23:34क्या कर रहे हैं? हार्ड कोड करके रख रहे
  11055. 7:23:36हैं। तो कोई भी यूजर क्रिएट होता है तो
  11056. 7:23:37उसका जो रोल होगा वो बाय डिफ़ॉल्ट यूजर
  11057. 7:23:40होगा। हम बाद में इसको ऑल्टर भी कर सकते
  11058. 7:23:43हैं। जैसे कि एडमिन बनाना है हमें किसी
  11059. 7:23:44को। तो हम ये जो वैल्यू है इसको मॉडिफाई
  11060. 7:23:47करके यूजर मॉड्यूल में मॉडिफाई करके उसे
  11061. 7:23:50डेटाबेस में स्टोर कर सकते हैं। ठीक है?
  11062. 7:23:51तो ये सारी चीजें डेटाबेस में जा रही है।
  11063. 7:23:54ठीक है? तो उम्मीद करता हूं इतना क्लियर
  11064. 7:23:55हो गया। ठीक है? अ देखिए अब हम यहां पर आ
  11065. 7:23:57जाते हैं। अब यहां पर मुझे क्या करना
  11066. 7:23:59होगा? अ मैं ये सारी चीजों को क्लोज कर
  11067. 7:24:02देता हूं। ठीक है? यहां पर मैं बनाऊंगा एक
  11068. 7:24:05पैकेज। ठीक है? एक पैकेज बनाएंगे हम जो
  11069. 7:24:09होगा सिक्योरिटी रिलेटेड पैकेज। ठीक है?
  11070. 7:24:11तो यहां पर मैं लिखूंगा सिक्योरिटी।
  11071. 7:24:14ठीक है? सिक्योरिटी लिख देंगे ऐसे। और
  11072. 7:24:17यहां पर सबसे पहले तो एक जावा की क्लास
  11073. 7:24:19बनाएंगे। ठीक है? तो सबसे पहले देखिए हम
  11074. 7:24:22सिक्योरिटी की बात करते हैं ना? तो मैं
  11075. 7:24:23पहले तो यहां पर लिखने से पहले यहां पर आ
  11076. 7:24:25जाता हूं। ठीक है? तो देखिए सिक्योरिटी की
  11077. 7:24:28बात करते हैं ना? तो सबसे पहले तो हमें हम
  11078. 7:24:30लोग जेडब्ल्यूटी ऑथेंटिकेशन इंप्लीमेंट
  11079. 7:24:32करने जा रहे हैं। JWT ओथ। ठीक है? अब JWT
  11080. 7:24:35ओथ में ना हमें कुछ चीजें हैं जो हमें
  11081. 7:24:38चाहिए। तो सबसे पहले तो हमें चाहिए एक
  11082. 7:24:40यूटिलिटी क्लास। तो JWT यूटिल्स JWT
  11083. 7:24:44यूटिल्स नाम की एक क्लास बना देंगे हम।
  11084. 7:24:46ठीक है? इसको थोड़ा बड़ा कर देते हैं हम।
  11085. 7:24:48ठीक है? तो JWT यूटिल्स नाम की एक क्लास
  11086. 7:24:50बनाएंगे। ये JWT यूटिल्स नाम की जो क्लास
  11087. 7:24:52है, ये होगी एक हेल्पर क्लास। ठीक है? ठीक
  11088. 7:24:55है? हेल्पर क्लास का मतलब है इसमें
  11089. 7:24:57जेडब्ल्यूटी टोकंस क्रिएट करने की,
  11090. 7:24:59वैलिडेट कर क्रिएट करने की, यूजरनेम जनरेट
  11091. 7:25:02यूजरनेम से टोकन बनाने की। ये सारी जो
  11092. 7:25:03एबिलिटीज़ है वो इस क्लास में होगी। ठीक
  11093. 7:25:07है? इतना हो गया। ये JWT यूटिस हो गई।
  11094. 7:25:09दूसरी हमारे पास होगी अ कस्टम
  11095. 7:25:13अ तो हम बनाएंगे कस्टम यूजर डिटेल्स
  11096. 7:25:17सर्विस। यूजर डिटेल्स सर्विस। ठीक है? अब
  11097. 7:25:21देखिए आप बोलोगे ये सर्विस हम क्यों बना
  11098. 7:25:23रहे हैं? ठीक है? तो इस पर मैं आता हूं।
  11099. 7:25:24ठीक है? इसके पहले हम बनाएंगे इसको मैं
  11100. 7:25:26लास्ट में रखता हूं कस्टम यूजर डिटेल
  11101. 7:25:28सर्विस क्योंकि इसमें थोड़े कॉन्सप्ट
  11102. 7:25:29समझने होंगे। हमें बनाना होगा सिक्योरिटी
  11103. 7:25:31कॉन्फिग ठीक है? अ सिक्योरिटी कॉन्फ़िगरेशन
  11104. 7:25:34और ये ये जो फाइल है वो सिक्योरिटी
  11105. 7:25:36कॉन्फ़िगरेशंस को अ डिफाइन करेंगे एक हिसाब
  11106. 7:25:39से। ठीक है? तो इतना हमने बना लिया और
  11107. 7:25:40हमें एक बनाना होगा JW टी ऑथ फ़िल्टर। ठीक
  11108. 7:25:45है? यह JWT ऑथ फ़िल्टर क्या करेगा? यह एक
  11109. 7:25:48हिसाब से फ़िल्टर है जो कि सारी इनकमिंग
  11110. 7:25:50रिक्वेस्ट को इंटरसेप्ट करेगा और उनमें
  11111. 7:25:52टोकन है या नहीं यह वैलिडेट करेगा। उम्मीद
  11112. 7:25:54करता हूं आपको समझ में आ रहा है। देखिए
  11113. 7:25:56जीW यूटर्स एक हेल्पर क्लास है। ठीक है?
  11114. 7:25:58यहां पे लिख देता हूं चाहिए तो हेल्पर
  11115. 7:26:00क्लास ऐसे। ठीक है? ये है सिक्योरिटी
  11116. 7:26:03कॉन्फ़िगरेशन सेंट्रलाइज्ड सिक्योरिटी
  11117. 7:26:06कॉन्फ़िगरेशन। ऐसे ठीक है? JW ओथ फ़िल्टर
  11118. 7:26:10क्या है? ये एक फ़िल्टर है फॉर फ़्टर चेन।
  11119. 7:26:15ठीक है? दैट इंटरसेप्ट्स
  11120. 7:26:18एव्री रिक्वेस्ट फॉर ऑथ। ठीक है? हर
  11121. 7:26:22रिक्वेस्ट को इंटरसेप्ट करेगा और चेक
  11122. 7:26:24करेगा कि उसमें ऑथराइजेशन हेडर्स है या
  11123. 7:26:26नहीं। ठीक है? ऑथराइजेशन हेडर्स है तो
  11124. 7:26:28रिक्वेस्ट को आगे जाने देगा और नहीं है तो
  11125. 7:26:30बेसिकली वहीं पर ब्लॉक कर देगा। ठीक है?
  11126. 7:26:32इतना हो गया। फिर हम बनाने वाले हैं कस्टम
  11127. 7:26:35यूजर डिटेल्स सर्विस। तो कस्टम यूजर
  11128. 7:26:36डिटेल्स सर्विस के बारे में बात करते हैं।
  11129. 7:26:38देखिए तो अब हमारे पास है स्प्रिंग
  11130. 7:26:42सिक्योरिटी। यह है स्प्रिंग सिक्योरिटी।
  11131. 7:26:45ठीक है? तो यहां पर लिख देता हूं स्प्रिंग
  11132. 7:26:48सिक्योरिटी।
  11133. 7:26:51अच्छा
  11134. 7:26:54ठीक है। तो यह स्प्रिंग सिक्योरिटी। ठीक
  11135. 7:26:56है? अब एक चीज आप समझ लीजिए यहां पर।
  11136. 7:26:57देखिए स्प्रिंग सिक्योरिटी में एक कोर
  11137. 7:27:00यूजर मॉडल होता है। ठीक है? यूजर कोर यूजर
  11138. 7:27:03मॉडल इसमें यूजर डिटेल्स होती है। ठीक है?
  11139. 7:27:06और यहां पर और भी सारी क्लासेस होती है।
  11140. 7:27:09ठीक है? यूजर और यूजर डिटेल्स के बारे में
  11141. 7:27:10ही बात करूंगा मैं। ठीक है? यूजर जो है
  11142. 7:27:13देखिए ये स्प्रिंग सिक्योरिटी ने डिफाइन
  11143. 7:27:17किया हुआ यूजर मॉडल है। ठीक है? आप अगर
  11144. 7:27:20यहां पर आओगे और अगर आप सिक्योरिटी की
  11145. 7:27:22डिपेंडेंसी ऐड करते हो अपनी एप्लीकेशन में
  11146. 7:27:24तो ये सिक्योरिटी ने डिफाइन किया हुआ यूजर
  11147. 7:27:28मॉडल है और ये हमने डिफाइन नहीं किया है
  11148. 7:27:31और ये जब भी आप स्प्रिंग सिक्योरिटी का अ
  11149. 7:27:35जो डिपेंडेंसी है उसे ऐड करते हो तो आपको
  11150. 7:27:37ये यूजर मॉडल बाय डिफ़ॉल्ट मिल जाता है।
  11151. 7:27:39ठीक है? तो ये हमने डिफाइन किया है। जी
  11152. 7:27:40नहीं ये इनबिल्ट है। अब होता क्या है? जब
  11153. 7:27:43भी आप एप्लीकेशनेशंस बनाते हो, आप जब भी
  11154. 7:27:45एप्लीकेशनेशंस बनाते हो, तो उसमें है ना
  11155. 7:27:48आपकी जो नीड है वो थोड़ी डिफरेंट होती है।
  11156. 7:27:50आप चाहोगे कि मुझे ये सारी चीजें जो
  11157. 7:27:54स्प्रिंग सिक्योरिटी दे रहा है वो तो ठीक
  11158. 7:27:55है लेकिन मुझे और 10 चीजों का ट्रैक रखना
  11159. 7:27:58है। तो मान लीजिए अगर आप एक हॉस्पिटल
  11160. 7:28:00मैनेजमेंट सिस्टम बना रहे हो। ठीक है?
  11161. 7:28:02हॉस्पिटल मैनेजमेंट सिस्टम में आप कहोगे
  11162. 7:28:04कि अच्छा मुझे ऐसा नहीं चाहिए। मुझे ऐसा
  11163. 7:28:06चाहिए। मुझे पेशेंट आईडी ट्रैक करनी है।
  11164. 7:28:09मुझे पेशेंट की कौन सी डिजीजसेस ट्रैक
  11165. 7:28:10करनी है? मुझे तो पेशेंट की रिलेटेड
  11166. 7:28:13इंफॉर्मेशनेशन मुझे ट्रैक करनी है। और ये
  11167. 7:28:15जो अ ट्रैकिंग आप कर रहे हो ठीक है? ये आप
  11168. 7:28:19कर रहे हो अपने डोमेन स्पेसिफिक। लेकिन
  11169. 7:28:21स्प्रिंग सिक्योरिटी का जो यूजर मॉडल है
  11170. 7:28:23वो काफी जेनेरिक है। वो जेनेरिक दिया हुआ
  11171. 7:28:26है ताकि आप स्प्रिंग सिक्योरिटी को आउट ऑफ
  11172. 7:28:28द बॉक्स इस्तेमाल कर पाओ। तो बोलने का
  11173. 7:28:30पॉइंट ये है कि अगर आप एक रियल वर्ल्ड
  11174. 7:28:32प्रोडक्शन ग्रेड एप्लीकेशन बना रहे हो तो
  11175. 7:28:34कस्टम यूजर मॉडल अपने हिसाब से डिजाइन
  11176. 7:28:37करना ये एक कॉमन चीज है। ठीक है? एक कॉमन
  11177. 7:28:40चीज है। आप बैंकिंग एप्लीकेशन बनाओगे तो
  11178. 7:28:43आपकी जो यूजर मॉडल होगा वो डिफरेंट
  11179. 7:28:45दिखेंगी और उसमें आप डिफाइन करोगे चीजें
  11180. 7:28:47जैसे कि अ आप डिफाइन करोगे अकाउंट नंबर
  11181. 7:28:49यूजर का हो सकता है। ठीक है? तो डिपेंडिंग
  11182. 7:28:52ऑन कि आप किस टाइप का एप्लीकेशन बना रहे
  11183. 7:28:54हो। ठीक है? आप उस तरीके की अ यूजर मॉडल्स
  11184. 7:28:58डिफाइन करोगे। तो देखिए दोस्तों अगर आप
  11185. 7:29:00स्प्रिंग सिक्योरिटी को आउट ऑफ द बॉक्स
  11186. 7:29:02इस्तेमाल कर रहे हो। ठीक है? तो यहां पर
  11187. 7:29:03मैं डेटाबेस पर आ जाता हूं। ठीक है?
  11188. 7:29:05डेटाबेस पर अगर आप आते हो तो यहां पर मेरे
  11189. 7:29:07पास एक स्कीमा है जो कि है सिक्योरिटी ऐप
  11190. 7:29:10का। और यहां पर दो टेबल्स आपको दिखाई देगी
  11191. 7:29:13अथॉरिटीज़ और यूज़र्स। ठीक है? तो ये जो है
  11192. 7:29:17ये डिफॉल्ट स्ट्रक्चर है जिस पर स्प्रिंग
  11193. 7:29:20सिक्योरिटी काम करता है। डिफ़ॉल्ट
  11194. 7:29:22स्ट्रक्चर है जिस पर स्प्रिंग सिक्योरिटी
  11195. 7:29:23काम करता है। यूज़र्स और अथॉरिटीज़ इस तरीके
  11196. 7:29:26से। ठीक है? यहां पर कॉलम्स डिफाइंड है,
  11197. 7:29:28यूजरनेम, पासवर्ड इनेबल्ड और अथॉरिटीज़ इस
  11198. 7:29:30तरीके से डिफाइंड है। अब अगर मेरे डोमेन
  11199. 7:29:32के हिसाब से अगर मैं कुछ कस्टमाइजेशंस
  11200. 7:29:34करना चाहता हूं। ठीक है? तो यहां पर अगर
  11201. 7:29:36मैं आऊंगा तो यहां पर मैं क्या करना
  11202. 7:29:38चाहूंगा? मैं यहां पर यूजर मैं बोलूंगा
  11203. 7:29:40मुझे यूजर इस्तेमाल नहीं करना है। मैं
  11204. 7:29:41इसके बजाय मेरा कस्टम यूजर इस्तेमाल करना
  11205. 7:29:44चाहता हूं। ठीक है? कस्टम यूजर इस्तेमाल
  11206. 7:29:47करना चाहता हूं। मैं ऐसा कर रहा हूं। ठीक
  11207. 7:29:49है? मुझे स्प्रिंग सिक्योरिटी का डिफॉल्ट
  11208. 7:29:51इस्तेमाल नहीं करना है क्योंकि मैं एक
  11209. 7:29:52एडवांस एप्लीकेशन बना रहा हूं और मैं मेरा
  11210. 7:29:54यूजर का जो मॉडल है उसे इस्तेमाल करना
  11211. 7:29:56चाहता हूं ऑथेंटिकेशन के लिए। ठीक है? तो
  11212. 7:29:59अब देखिए यहां पर है स्प्रिंग सिक्योरिटी।
  11213. 7:30:02ठीक है? स्प्रिंग सिक्योरिटी। ठीक है?
  11214. 7:30:06यहां पर और यहां पर है आपका अ कस्टम यूजर
  11215. 7:30:11मॉडल। ठीक है? ये है कस्टम यूजर। कस्टम
  11216. 7:30:15यूजर। ठीक है? ये है कस्टम यूजर मॉडल। और
  11217. 7:30:17यहां पर है स्प्रिंग सिक्योरिटी। अब दोनों
  11218. 7:30:19में आपको लिंकिंग तो लगानी पड़ेगी ना। ठीक
  11219. 7:30:22है? स्प्रिंग सिक्योरिटी को क्या पता कि
  11220. 7:30:24आप यूजर इनेशन कैसे स्टोर कर रहे हो।
  11221. 7:30:26स्प्रिंग सिक्योरिटी को नहीं पता।
  11222. 7:30:27स्प्रिंग सिक्योरिटी को उसका खुद का
  11223. 7:30:29डिफॉल्ट यूजर पता है। स्प्रिंग सिक्योरिटी
  11224. 7:30:32को क्या पता है? स्प्रिंग सिक्योरिटी को
  11225. 7:30:33उसका खुद का डिफॉल्ट यूजर मॉडल पता है।
  11226. 7:30:36स्प्रिंग सिक्योरिटी बोलता है अच्छा आप
  11227. 7:30:37अगर ये इस्तेमाल करते हो मुझे पता है कैसे
  11228. 7:30:39ऑथेंटिकेट करना है। कहां से यूज़र्स को लोड
  11229. 7:30:41करना है, क्या करना है सब मुझे पता है।
  11230. 7:30:43ठीक है? लेकिन आपने अगर कस्टम यूजर का जो
  11231. 7:30:47मॉडल है उसे बना लिया अगर कस्टम यूजर मॉडल
  11232. 7:30:50स्प्रिंग सिक्योरिटी बोलेगा मुझे पता नहीं
  11233. 7:30:52है और मुझे इसके बारे में इंफॉर्मेशनेशन
  11234. 7:30:53दो करेक्ट तो आपको जो है एक इसकी
  11235. 7:30:57इंफॉर्मेशनेशन स्प्रिंग सिक्योरिटी को
  11236. 7:30:58देनी होगी। ठीक है? यानी कि इसमें जो डेटा
  11237. 7:31:01है वो आपको स्प्रिंग सिक्योरिटी के हिसाब
  11238. 7:31:03से थोड़ा मैप करना होगा। ठीक है? और उसी
  11239. 7:31:05के लिए हम बना रहे हैं कस्टम यूजर डिटेल्स
  11240. 7:31:08सर्विस। ठीक है? तो कस्टम यूजर डिटेल
  11241. 7:31:11सर्विस हम इसलिए बना रहे हैं क्योंकि
  11242. 7:31:12हमारे पास कस्टम यूजर मॉडल है और और हम
  11243. 7:31:16उसे इस्तेमाल करना चाहते हैं स्प्रिंग
  11244. 7:31:18सिक्योरिटी के साथ। ठीक है? तो उम्मीद
  11245. 7:31:21करता हूं इतना समझ में आया है।
  11246. 7:31:24ठीक है? कि इस इसका मतलब क्या है? अब और
  11247. 7:31:27डिटेल्स में हम समझेंगे जब हम इसे डिफाइन
  11248. 7:31:29करेंगे। ठीक है? लेकिन एक हिसाब से देखिए
  11249. 7:31:31आप अगर कस्टम यूजर मॉडल बनाते हो तो जो अ
  11250. 7:31:35डिफॉल्ट स्प्रिंग सिक्योरिटी का मैकेनिज्म
  11251. 7:31:38है और कस्टम यूजर आपने जो मॉडल बनाया है
  11252. 7:31:40उन दोनों के बीच में एक ब्रिज बनाना होता
  11253. 7:31:42है। ठीक है? और उसे कहते हैं उसके लिए हम
  11254. 7:31:45बना रहे हैं ये वाली क्लास। ठीक है?
  11255. 7:31:47उम्मीद करता हूं ये हेल्पफुल रह रहा है।
  11256. 7:31:50ठीक है? तो अगर आप कस्टम यूजर मॉडल का
  11257. 7:31:53इस्तेमाल नहीं करते तो ये वाली सर्विस की
  11258. 7:31:55आपको जरूरत है नहीं। आप बिना इस सर्विस के
  11259. 7:31:58जो डिफ़ॉल्ट स्ट्रक्चर है स्प्रिंग
  11260. 7:31:59सिक्योरिटी का यूजर मॉडल का और अथॉरिटीज़
  11261. 7:32:01का जो डिफ़ॉल्ट स्ट्रक्चर है उसको इस्तेमाल
  11262. 7:32:03कर सकते हो और यूज़र्स को ऑथेंटिकेट कर
  11263. 7:32:05सकते हो। ठीक है? क्योंकि ये देखिए ये ये
  11264. 7:32:07आपने बना दिया तो कस्टम यूजर मॉडल बनाया
  11265. 7:32:09तो स्प्रिंग सिक्योरिटी को पता नहीं है कि
  11266. 7:32:11यूजर कहां से लोड करना है ऑथेंटिकेशन के
  11267. 7:32:12लिए। ऑथेंटिकेशन के वक्त यूजर को लोड करना
  11268. 7:32:14होगा। करेक्ट इन मेमोरी और देखना होगा कि
  11269. 7:32:16जो क्रेडेंशियल्स आए वो सही आए कि नहीं।
  11270. 7:32:18तो वो स्प्रिंग सिक्योरिटी को पता नहीं
  11271. 7:32:20होगा। अगर वो पता नहीं है तो वो ऑथेंटिकेट
  11272. 7:32:22कैसे करेगा। तो उसके लिए हमें वो मैपिंग
  11273. 7:32:25बनानी पड़ेगी और वो बनेगी हमें वो ब्रिज
  11274. 7:32:27बनानी पड़ेगी और वो ब्रिज बनेगा कस्टम
  11275. 7:32:29यूजर डिटेल्स सर्विस में। ठीक है? उम्मीद
  11276. 7:32:31करता हूं इतना क्लियर है आप लोगों को। ठीक
  11277. 7:32:33है? अब हम क्या करेंगे? अब हम यहां पर आ
  11278. 7:32:35जाते हैं। ठीक है? सबसे पहले तो स्टार डॉट
  11279. 7:32:38स्प्रrिंग डॉटio पर आ जाऊंगा मैं। क्योंकि
  11280. 7:32:40मैं क्या करना चाहता हूं? मैं यहां पर
  11281. 7:32:41डिपेंडेंसीज़ ऐड करना चाहता हूं। तो मैं
  11282. 7:32:43मेवन सेलेक्ट कर लूंगा और यहां पर सेलेक्ट
  11283. 7:32:45करूंगा सिक्योरिटी। ठीक है? सबसे पहले
  11284. 7:32:47सिक्योरिटी ऐड करेंगे हम। ठीक है? यहां पर
  11285. 7:32:50आएंगे और फिर इसको कॉपी कर लेंगे यहां पर
  11286. 7:32:53और हमारी एप्लीकेशन में आ जाएंगे यहां पर।
  11287. 7:32:56ठीक है? और यहां पर फॉर्म डॉट एक्सml में
  11288. 7:32:58आ जाते हैं और यहां पर ये सिक्योरिटी का
  11289. 7:33:00जो पैकेज है उसको हम लगा देंगे यहां पर।
  11290. 7:33:02ठीक है? अब डिफ़ॉल्ट बिहेवियर क्या होता
  11291. 7:33:04है? स्प्रिंग सिक्योरिटी का क्या होता है
  11292. 7:33:06डिफ़ॉल्ट बिहेवियर? डिफ़ॉल डिफ़ॉल्ट बिहेवियर
  11293. 7:33:07ये होता है कि एवरीथिंग इज़ ऑथेंटिकेटेड।
  11294. 7:33:09सब कुछ ऑथेंटिकेटेड होता है। देखिए, ये
  11295. 7:33:11अभी रीड कर रहा है और ये डिपेंडेंसीज़
  11296. 7:33:13रिज़ॉल्व कर रहा है। डिपेंडेंसीज़ डाउनलोड
  11297. 7:33:15करेगा ये। ठीक है? उसके बाद हम एप्लीकेशन
  11298. 7:33:17को रन करेंगे और यहां पर पोस्टमैन भी खुली
  11299. 7:33:19हुई है। ठीक है? तो मैं इसे रन करता हूं
  11300. 7:33:20एक हिसाब से। ठीक है? इसको रन करते हैं।
  11301. 7:33:23एप्लीकेशन तो रन हो चुकी है डिपेंडेंसी के
  11302. 7:33:25बाद। अब यहां पर आ जाता हूं। ये रजिस्टर
  11303. 7:33:27की जो एंड पॉइंट हमने बनाई थी, उसको मैं अ
  11304. 7:33:30क्वेरी करता हूं। देखिए, यहां पर अगर मैं
  11305. 7:33:32क्वेरी भेजता हूं, यहां पर क्या होता है?
  11306. 7:33:34एरर आ जाती है कि अनऑथराइज़्ड है। ठीक है?
  11307. 7:33:36तो, इसका मतलब स्प्रिंग सिक्योरिटी का जो
  11308. 7:33:38कॉन्फ़िगरेशन है, वह चल रहा है। और आपको
  11309. 7:33:40यूजरनेम और पासवर्ड लगभग यहां पर प्रिंटेड
  11310. 7:33:42दिखेगा। देखिए ये स्प्रिंग सिक्योरिटी का
  11311. 7:33:45जो डिफॉल्ट पासवर्ड है तो डिफॉल्ट यूजर है
  11312. 7:33:47यूजर और डिफॉल्ट पासवर्ड है ये पासवर्ड।
  11313. 7:33:49ठीक है? तो ये हर रन पर जनरेट होगा। ठीक
  11314. 7:33:52है? तो इसका हम इस्तेमाल नहीं करेंगे
  11315. 7:33:54क्योंकि हमें इसका इस्तेमाल नहीं करना है।
  11316. 7:33:56हमें क्या इस्तेमाल करना है? हमें
  11317. 7:33:58इस्तेमाल करना है JWT। ठीक है? JWT का
  11318. 7:34:01इस्तेमाल करना है। तो मैं यहां पर आ
  11319. 7:34:02जाऊंगा फिर से यहां पर और मैं यहां पर
  11320. 7:34:04लिखूंगा java gw
  11321. 7:34:07मेन। ठीक है? ऐसा मैं सर्च कर लूंगा और
  11322. 7:34:10यहां पर अगर आप आते हो तो यहां पर आपको यह
  11323. 7:34:13देखिए यह वाली जो रेपोज़िटरी है इस ये
  11324. 7:34:15रिपोज़िटरी का नाम याद रखिए जे जे डब्ल्यू
  11325. 7:34:18टी और ये JW टी के जे जे डब्ल्यू टी ये
  11326. 7:34:21नाम है। ठीक है? यहां पर आ जाइए। कोई
  11327. 7:34:23दूसरी रिपॉज़िटरी पर नहीं चले जाना। ठीक
  11328. 7:34:25है? अपडेट होती रहती है। और इस ये काफी
  11329. 7:34:27पॉपुलर भी है। आप स्टार्स और फोकस देखोगे
  11330. 7:34:29तो काफी पॉपुलर है। यहां पर आना है आपको
  11331. 7:34:31इंस्टॉलेशन में मेवन सेलेक्ट करना है। और
  11332. 7:34:33यहां पर देखिए सारी डिपेंडेंसी आपको मिल
  11333. 7:34:35जाएगी। इसको कॉपी कर लो। ठीक है? कॉपी
  11334. 7:34:38करने के बाद यहां पर आ जाओ और फिर इसको
  11335. 7:34:42सिक्योरिटी की जो हमने लगाई है यहां पर
  11336. 7:34:44डिपेंडेंसी उसके बाद इसको यहां पर लगा
  11337. 7:34:46देंगे। ठीक है? और इसको कर देंगे रिफ्रेश।
  11338. 7:34:50ठीक है? तो ये डिपेंडेंसी भी कॉन्फ़िगर हो
  11339. 7:34:52चुकी है। इसका मतलब अब हमारा प्रोजेक्ट जो
  11340. 7:34:53है वो रेडी है JWT ऑथेंटिकेशन के साथ काम
  11341. 7:34:58करने के लिए। ठीक है? अब मैं सिक्योरिटी
  11342. 7:35:00पर आ जाता हूं। ठीक है? यहां पर
  11343. 7:35:02सिक्योरिटी पैकेज में हम एक-एक करके क्लास
  11344. 7:35:04बनाने लग जाएंगे। तो सबसे पहले तो जे
  11345. 7:35:06डब्ल्यू टी यूटिल्स नाम की क्लास बनाऊंगा
  11346. 7:35:08मैं। ये क्या है? ये है हमारी अ क्या कहते
  11347. 7:35:12हैं इसे? अ हेल्पर क्लास। ठीक है? इसमें
  11348. 7:35:15टोकन जनरेट कैसे करना है? टोकन वैलिडेट
  11349. 7:35:16कैसे करना है? वो सारी चीजें यहां पर आ
  11350. 7:35:19जाएंगी। ठीक है? दूसरी जो क्लास मैं बनाना
  11351. 7:35:22चाहता हूं वो है JWT। तो फ़िल्टर का नाम
  11352. 7:35:25मैंने क्या बताया था? JWT ऑथ फ़िल्टर। आप
  11353. 7:35:28कोई भी फ़्टर का नाम दे सकते हो। ठीक है?
  11354. 7:35:30तो यहां पर जेडब्ल्यूटी ऑथ फिल्टर दे सकते
  11355. 7:35:32हो या आपको कुछ और कस्टम नाम देना है वो
  11356. 7:35:34दे सकते हो। ठीक है? तो यहां पर जे
  11357. 7:35:37डब्ल्यू टी
  11358. 7:35:39ऑथ फ़िल्टर। तो मैं पूरा नाम दे देता हूं
  11359. 7:35:42ऑथेंटिकेशन
  11360. 7:35:43फ़िल्टर। ठीक है? ये फ़िल्टर क्या करेगा? हर
  11361. 7:35:46इनकमिंग रिक्वेस्ट को इंटरसेप्ट करेगा और
  11362. 7:35:48उसमें JWई टोकन है या नहीं उसे वैलिडेट
  11363. 7:35:51करेगा। ठीक है? तो यह हमने बना लिया है।
  11364. 7:35:53यहां पर आ जाऊंगा और मैं बना लूंगा
  11365. 7:35:54सिक्योरिटी कॉन्फिग के हिसाब से। ठीक है?
  11366. 7:35:58डोंट आस्क अगेन। ठीक है? सिक्योरिटी
  11367. 7:36:01कॉन्फिग बना लेंगे। सिक्योरिटी कॉन्फिग
  11368. 7:36:03में हमारे पास जो सिक्योरिटी कॉन्फ़िगरेशन
  11369. 7:36:06है, सेंट्रलाइज़ सिक्योरिटी कॉन्फ़िगरेशन
  11370. 7:36:08हमारी एप्लीकेशन की वो स्टोर रहेगी। ठीक
  11371. 7:36:10है? उसे हमने डिफाइन कर लिया। और भी
  11372. 7:36:11फाइल्स लगेगी जैसे कि अ कस्टम यूजर
  11373. 7:36:14डिटेल्स सर्विस। लेकिन अभी मैं उसे नहीं
  11374. 7:36:15बनाता। कस्टम यूजर डिटेल्स चाहिए तो बना
  11375. 7:36:17के रखते हैं। चलिए। ऐसे कोई हार्म तो है
  11376. 7:36:19नहीं। कस्टम
  11377. 7:36:21यूजर डिटेल्स सर्विस। ठीक है? इसमें लॉजिक
  11378. 7:36:24रहेगा सब। तो ये ठीक है। इतना हो चुका है।
  11379. 7:36:27ठीक है? इतनी चीजें हमने डिफाइन कर ली है।
  11380. 7:36:29अब मैं यहां पर आ जाऊंगा जे डब्ल्यू टी
  11381. 7:36:32यूटल्स में। ठीक है? और हम क्या करेंगे?
  11382. 7:36:34यहां पर एक-एक करके अ सारी जो चीजें हैं
  11383. 7:36:37उसको डिफाइन करने लग जाते हैं। या तो फिर
  11384. 7:36:39पहले सिक्योरिटी कॉन्फ़िगरेशन में आ जाते
  11385. 7:36:41हैं। ठीक है? सिक्योरिटी कॉन्फ़िगरेशन।
  11386. 7:36:42इसको सबसे पहले अह मैं डिफाइन करूंगा अह
  11387. 7:36:46ऐज़ ई कॉन्फ़िगरेशन क्लास। ठीक है? तो, यह
  11388. 7:36:50है कॉन्फ़िगरेशन क्लास। ठीक है? और फिर
  11389. 7:36:53यहां पर डिफाइन करूंगा इनेबल वेब
  11390. 7:36:55सिक्योरिटी। ठीक है? इतना मैंने कर दिया
  11391. 7:36:57है। और फिर यहां पर आ जाऊंगा
  11392. 7:37:01यहां पर और यहां पर डिफाइन करूंगा पब्लिक।
  11393. 7:37:05ठीक है? अच्छा सॉरी यहां पर बीन डिफाइन
  11394. 7:37:08करना है मुझे। बीन और फिर ऑब्लिक
  11395. 7:37:14सिक्योरिटी फ़िल्टर चेन ऐसे
  11396. 7:37:18सिक्योरिटी फ़िल्टर चेन ऐसे और फिर http
  11397. 7:37:22सिक्योरिटी
  11398. 7:37:23एचtटीp
  11399. 7:37:26और इतना मैंने डिफाइन कर दिया। ठीक है? और
  11400. 7:37:28फिर यहां पर मैं रिटर्न करूंगा रिटर्न
  11401. 7:37:31http डॉट बिल्ड। इसे मैं रिटर्न कर दूंगा
  11402. 7:37:34इसको। ठीक है? इतना मैंने रिटर्न कर दिया।
  11403. 7:37:38और फिर यहां पर थोड़े से सिक्योरिटी रूल्स
  11404. 7:37:40भी डिफाइन करने लग जाते हैं। ठीक है? तो
  11405. 7:37:42हम क्या करेंगे? यहां पर मैं लिख देता हूं
  11406. 7:37:44http डॉट सीएसआरएफ और फिर सीएसआरf और फिर
  11407. 7:37:50से यहां पर लिख दूंगा सीएसआरएफ
  11408. 7:37:54डॉट डिसेबल। तो देखिए ये आ गया। और फिर
  11409. 7:37:56मुझे वर्न करेगा कि मेथड रेफरेंस का
  11410. 7:37:58इस्तेमाल कर लो। ठीक है? मेथड रेफरेंस का
  11411. 7:38:00इस्तेमाल कर लेते हैं। ठीक है? सीएसआरएफ
  11412. 7:38:02को डिसेबल कर दिया और फिर ऑथोराइज़
  11413. 7:38:04रिक्वेस्ट को कॉल करेंगे और फिर यहां पर
  11414. 7:38:07ऑथोराइज़ रिक्वेस्ट ठीक है और फिर यहां पर
  11415. 7:38:12हम लिखेंगे
  11416. 7:38:14ऑथोराइज़ रिक्वेस्ट डॉट रिक्वेस्ट मैचर्स
  11417. 7:38:19और फिर यहां पर लिखेंगे एपीआई एडमिन स्लश
  11418. 7:38:23स्टार स्टार ठीक है ऐसे लिख देंगे हम ठीक
  11419. 7:38:26है और फिर यहां पर डॉट हैज़ रोल अच्छा
  11420. 7:38:31अच्छा सॉरी यहां पर नहीं आएगा ये हस रोल
  11421. 7:38:34डॉट हैस रोल हस रोल और फिर यहां पर हम लिख
  11422. 7:38:39देंगे एडमिन
  11423. 7:38:41ऐसे ठीक है ऐसा मैंने लिख दिया है और फिर
  11424. 7:38:45अ यहां पर लिखेंगे डॉट एनी रिक्वेस्ट डॉट
  11425. 7:38:49ऑथेंटिकेटेड
  11426. 7:38:51ठीक है और इसको कर देंगे क्लोज तो ये हो
  11427. 7:38:54चुका है क्लोज एक हिसाब से कुछ मिस किया
  11428. 7:38:57है मैंने यहां पर यहां पर एरर दे रहा है
  11429. 7:38:59ओके यहां पर इसको को क्लोज कर देना है
  11430. 7:39:02शायद। यस इसको क्लोज कर दिया मैंने। तो ये
  11431. 7:39:05हो चुका है। ठीक है? इतना मैंने मैंने
  11432. 7:39:08रूल्स ज्यादा डिफाइन नहीं किए। ठीक है? आप
  11433. 7:39:09देख सकते हो रूल्स मैंने काफी सिंपल रखे।
  11434. 7:39:12यहां पर रिक्वेस्ट मैचेस का इस्तेमाल करके
  11435. 7:39:14मैंने सिर्फ
  11436. 7:39:16एडमिन एंड पॉइंट को प्रोटेक्ट किया है।
  11437. 7:39:18ठीक है? अब एडमिन एंड पॉइंट हमारे पास अभी
  11438. 7:39:19फिलहाल तो है नहीं। ठीक है? लेकिन अगर हम
  11439. 7:39:21बनाते हैं फ्यूचर में है या नहीं है? मुझे
  11440. 7:39:24देखना पड़ेगा एक हिसाब से। ठीक है? ये तो
  11441. 7:39:28रेकमेंडेशन के एंड पॉइंट है। ये वाली है
  11442. 7:39:30ऑथराइजेशन। ठीक है? और ये वाली है
  11443. 7:39:32एक्टिविटी की। तो एडमिन एंड पॉइंट तो ऐसे
  11444. 7:39:35कुछ है नहीं हमारे पास अभी फिलहाल। लेकिन
  11445. 7:39:37आगे चलके अगर हम कोई एडमिन पैनल एडमिन
  11446. 7:39:39डैशबोर्ड ऐसे सब बनाते हैं तो ये आ सकती
  11447. 7:39:42है। ठीक है? और यहां पर मैं लिख देता हूं
  11448. 7:39:44एपीआई अ स्ल
  11449. 7:39:47नहीं इसकी जरूरत नहीं है। एक्चुअली एपीआई
  11450. 7:39:49ऑथ लिख देता हूं। ऑथ सबको ओपन रहना चाहिए।
  11451. 7:39:53ठीक है? ऑथ की जो एंड पॉइंट है वह पब्लिक
  11452. 7:39:55रहनी चाहिए। परमिट ऑल ठीक है ऐसे इतना हो
  11453. 7:39:59चुका है। ठीक है? यह हमने बना लिया
  11454. 7:40:00सिक्योरिटी कॉन्फ़िगरेशन।
  11455. 7:40:03ठीक है? अब यहां पर हम आएंगे तो ये
  11456. 7:40:06सिक्योरिटी कॉन्फ़िगरेशन हो चुका है। अब
  11457. 7:40:08मुझे JWT यूटिल्स में आना चाहिए एक हिसाब
  11458. 7:40:11से। तो देखिए दोस्तों, JWT यूutls एक
  11459. 7:40:14हिसाब से हेल्पर क्लास है। ठीक है? और
  11460. 7:40:16यहां पर सारे के सारे JWT के साथ काम करने
  11461. 7:40:19के लिए सारे जो हेल्पर मेथड्स चाहिए वो
  11462. 7:40:21सारे होंगे। तो मैं क्या करूंगा? इसको
  11463. 7:40:22स्क्रैच से डिफाइन करने के बजाय मेरे पास
  11464. 7:40:24ऑलरेडी एक टेंपल्लेट सेटअप है इस दूसरे
  11465. 7:40:26प्रोजेक्ट में सिक्योरिटी के। यहां पर
  11466. 7:40:28मैंने लिखा हुआ है पूरा का पूरा कोड। ठीक
  11467. 7:40:30है? और ये एक हिसाब से अ मतलब सेम ही होगा
  11468. 7:40:34कोड। इसमें सिर्फ चीजों को आप मॉडिफाई
  11469. 7:40:36करोगे। यानी कि Jडw सीक्रेट को मॉडिफाई
  11470. 7:40:39करोगे, एक्सपायरेशन टाइम को मॉडिफाई
  11471. 7:40:40करोगे। आपको जो एक्सपायरेशन टाइम चाहिए और
  11472. 7:40:43यहां पे यूजर डिटेल्स से हम जनरेट कर रहे
  11473. 7:40:47हैं टोकन और यूजरनेम से जनरेट कर रहे हैं
  11474. 7:40:50टोकन। तो हो सकता है हमारे ऐप में हमें
  11475. 7:40:51यूजरनेम नहीं जनरेट करना है। हमें यूजरनेम
  11476. 7:40:54का इस्तेमाल नहीं करना है। हमें इस्तेमाल
  11477. 7:40:55करना है यूजर आईडी। तो थोड़ी-थोड़ी
  11478. 7:40:57मॉडिफिकेशंस होंगे लेकिन मोटा-मोटा जो अ
  11479. 7:41:00कोड है वो यही होगा। तो मैं इसको कॉपी कर
  11480. 7:41:02लेता हूं पूरा का पूरा और यहां पर इस
  11481. 7:41:04तरीके से पेस्ट कर देता हूं। ये पैकेज का
  11482. 7:41:07जो है इसे चेंज कर देंगे हम। ठीक है? तो
  11483. 7:41:09ये पूरा का पूरा कोड जो है वो आ चुका है
  11484. 7:41:13यहां पर। ठीक है? अब देखिए इसमें मैं कोई
  11485. 7:41:15मॉडिफिकेशन नहीं करने जाऊंगा। ठीक है?
  11486. 7:41:17इसमें हम अभी मॉडिफिकेशन नहीं करेंगे
  11487. 7:41:19करेंगे। देखिए मैं आपको एक चीज बता देता
  11488. 7:41:20हूं। यहां पर आप जनरेट कर रहे हो टोकन
  11489. 7:41:22यूजरनेम से। ठीक है? टोकन कैसे जनरेट कर
  11490. 7:41:24रहे हो? यूजरनेम से। हमें टोकन यूजरनेम से
  11491. 7:41:26जनरेट नहीं करना है। हमारी जो एप्लीकेशन
  11492. 7:41:28है जो कि फिटनेस डेमो है। ठीक है? उसमें
  11493. 7:41:31यूजर है। कॉलम्स देखोगे ना आप तो यूजर
  11494. 7:41:33आईडी है। तो आइडियली हमारा यूजर देखिए
  11495. 7:41:36स्प्रिंग सिक्योरिटी का जो डिफ़ॉल्ट यूजर
  11496. 7:41:38मॉडल है उसमें यूजरनेम से आइडेंटिफिकेशन
  11497. 7:41:40होता है। उसमें यूजर आईडी नहीं है। ठीक
  11498. 7:41:42है? लेकिन हमारा जो कस्टम यूजर मॉडल है
  11499. 7:41:45उसमें जो आइडेंटिफिकेशन है वो होती है
  11500. 7:41:48यूजर आईडी से। तो हमें वो सारी
  11501. 7:41:50मॉडिफिकेशंस करनी होगी। ठीक है? तो वो
  11502. 7:41:52सारी मॉडिफिकेशंस हम करेंगे। ठीक है? तो
  11503. 7:41:54उम्मीद करता हूं इतना क्लियर है आपको। ठीक
  11504. 7:41:56है? यहां पर यूजरनेम का इस्तेमाल कर रहे
  11505. 7:41:57हैं। और यहां पर मेथड का नाम भी जनरेट
  11506. 7:41:59टोकन फ्रॉम यूजरनेम है। तो मैं ये फ्रॉम
  11507. 7:42:01यूजरनेम हटा देता हूं क्योंकि ये जो मेथड
  11508. 7:42:03है इसको हम रिनेम करने वाले हैं। अच्छा
  11509. 7:42:05यहां पर नहीं सॉरी यहां पर नहीं ये दूसरा
  11510. 7:42:06प्रोजेक्ट है। ये वाले प्रोजेक्ट में जो
  11511. 7:42:08हमारा प्रोजेक्ट है फिटनेस का वहां पर हम
  11512. 7:42:10अपडेट करेंगे जनरेट टोकन। ठीक है? उसको
  11513. 7:42:12रीनेम कर देंगे जनरेट टोकन फ्रॉम यूजरनेम
  11514. 7:42:14से जनरेट टोकन। ठीक है? और फिर अंदर हम
  11515. 7:42:16मॉडिफाई करेंगे। ठीक है? लेकिन ये इसको
  11516. 7:42:18थोड़ी देर बाद करते हैं। अब ये जो
  11517. 7:42:20स्प्रिंग सिक्योरिटी का जो हमारा
  11518. 7:42:21प्रोजेक्ट था इसमें हेलो कंट्रोलर जो है
  11519. 7:42:23ठीक है? यहां पर आपको साइन इन दिखाई देगा।
  11520. 7:42:25ठीक है? ये जो साइन इन मेथड है। तो इसको
  11521. 7:42:27मैं ऐसे के ऐसे कॉपी कर लेता हूं। ठीक है?
  11522. 7:42:29ऐसे के ऐसे और फिर इसको यहां पर आ जाते
  11523. 7:42:31हैं। और यहां पर हमारे पास है एक हिसाब से
  11524. 7:42:35ऑथ कंट्रोलर होगा। ठीक है? ऑथ कंट्रोलर
  11525. 7:42:37में हम आएंगे और यहां पर हम साइन इन की जो
  11526. 7:42:39एंड पॉइंट है उसको पेस्ट कर देंगे। ठीक
  11527. 7:42:41है? और ये ऐसे के ऐसे यूज़ नहीं होगी। ठीक
  11528. 7:42:43है? इसमें हम थोड़ी सी मॉडिफिकेशंस करेंगे।
  11529. 7:42:46ठीक है? लेकिन मॉडिफिकेशंस पर अब बात करते
  11530. 7:42:47हैं। अब ये वाली जो क्लास है, ठीक है? जो
  11531. 7:42:51ऑथ कंट्रोलर है, यहां पर ये हमने जो कोड
  11532. 7:42:53लिखा हुआ है, ठीक है? ये हमने डिफॉल्ट जो
  11533. 7:42:56ऑथेंटिकेशन मैकेनिज्म है, उसको इस्तेमाल
  11534. 7:42:58करके लिखा हुआ है। ठीक है? ये सारी
  11535. 7:42:59इनबिल्ट क्लासेस हैं। लेकिन हमारे पास
  11536. 7:43:01सारा का सारा कस्टम बनाया हुआ है। ठीक है?
  11537. 7:43:03तो ये सारी चीजें हम इस्तेमाल नहीं
  11538. 7:43:04करेंगे। ठीक है? लेकिन स्टेप बाय स्टेप
  11539. 7:43:06चलते हैं। तो सबसे पहले तो देखिए, लॉग इन
  11540. 7:43:07रिक्वेस्ट जो है, मैं उसके लिए एक क्लास
  11541. 7:43:09बना देता हूं। ठीक है? यह क्लास मैं
  11542. 7:43:11बनाऊंगा डीटीओ पैकेज में। ठीक है? लॉग इन
  11543. 7:43:13रिक्वेस्ट। और यहां पर अह लॉग इन
  11544. 7:43:16रिक्वेस्ट में क्या डिफ़ाइन करना चाहिए
  11545. 7:43:18हमें? ठीक है? तो लॉग इन
  11546. 7:43:22तो लॉग इन रिक्वेस्ट में हमारे पास होगी
  11547. 7:43:24सिंपल चीज़ जैसे कि प्राइवेट ईमेल अ
  11548. 7:43:27स्ट्रिंग ईमेल सॉरी स्ट्रिंग ईमेल ऐसे।
  11549. 7:43:31ठीक है? अ हमारे पास होगी प्राइवेट अ
  11550. 7:43:34स्ट्रिंग पासवर्ड। ठीक है? तो यू यूजरनेम
  11551. 7:43:37और पासवर्ड की बजाय ईमेल और पासवर्ड लूंगा
  11552. 7:43:39क्योंकि हमारे इसमें जो ऑथेंटिकेशन चलेगा
  11553. 7:43:41वो ईमेल और पासवर्ड बेस चलेगा। देखिए
  11554. 7:43:44यूजरनेम और पासवर्ड बेस भी आप रख सकते हो।
  11555. 7:43:46ईमेल पासवर्ड बेस भी रख सकते हो। यूजरनेम
  11556. 7:43:49और सॉरी यूजर आईडी और पासवर्ड बेस भी रख
  11557. 7:43:51सकते हो। डिपेंडिंग ऑन योर एप्लीकेशन आप
  11558. 7:43:53रख सकते हो। और जो भी आपको एक्सेप्ट करना
  11559. 7:43:55है वो आपको यहां पर मेंशन करना है। अगर आप
  11560. 7:43:58यूजरनेम लेना चाहते हो, यूजर आईडी लेना
  11561. 7:44:00चाहते हो, ईमेल लेना चाहते हो, मैं ईमेल
  11562. 7:44:01और पासवर्ड रखना चाहता हूं फिटनेस में।
  11563. 7:44:03ठीक है? है फिटनेस एप्लीकेशन में और इस
  11564. 7:44:05ईमेल के बिहाफ पर हम लोग क्या करेंगे?
  11565. 7:44:08यहां पर आ जाएंगे। इस ईमेल के बिहाफ पर ये
  11566. 7:44:11देखिए ये मेरा ईमेल का जो फील्ड है इस
  11567. 7:44:14ईमेल के बिहाफ पर हम जो डेटाबेस है उसमें
  11568. 7:44:17क्वेरी करेंगे। ठीक है? और जो यूजर है
  11569. 7:44:20उसकी इंफॉर्मेशनेशन हम फैच करेंगे। ठीक
  11570. 7:44:22है? उम्मीद करता हूं इतना क्लियर है कैसे
  11571. 7:44:24काम करने वाला है ये आगे चलकर। ठीक है? और
  11572. 7:44:26यहां पर हम लॉबक का इस्तेमाल कर रहे हैं।
  11573. 7:44:27तो मैं डेटा ऐड कर दूंगा। यहां पर ऐड कर
  11574. 7:44:29दूंगा नो आस्क् कंस्ट्रक्टर और फिर ऑल
  11575. 7:44:31आस्क् कंस्ट्रक्टर। ठीक है? तो ये हो चुका
  11576. 7:44:34है। ठीक है? और इसको साइन इन के बजाय मैं
  11577. 7:44:36बोल दूंगा लॉग इन। ठीक है? लॉग इन थोड़ा
  11578. 7:44:38बेटर लगता है। तो लॉग इन बोल रहा हूं इसे।
  11579. 7:44:41ठीक है? इतना करने के बाद यहां पर इसकी
  11580. 7:44:43जरूरत है नहीं। तो ये ऑथेंटिकेशन मैनेजर
  11581. 7:44:45क्या कर रहा है? ये ऑथेंटिकेट कर रहा है
  11582. 7:44:47और वेरीफाई कर रहा है कि यूजरनेम और
  11583. 7:44:48पासवर्ड जो दिया गया है यूजर से वो करेक्ट
  11584. 7:44:52है या नहीं। यहां पर यूजर ये जो
  11585. 7:44:53क्रेडेंशियल है उसकी वैलिडेशन चल रही है।
  11586. 7:44:55तो हम वैलिडेशन इस तरीके से नहीं करेंगे।
  11587. 7:44:57ठीक है? क्योंकि हमारे पास कस्टम यूजर
  11588. 7:44:59मॉडल है। तो मैं इसको हटा दूंगा और मैं
  11589. 7:45:01यहां पर क्या करूंगा? यूजर का एक इंस्टेंस
  11590. 7:45:03बना लूंगा। यूजर यूजर इज़ इक्वल टू यूजर
  11591. 7:45:06अच्छा यूजर की कोई रिपॉज़िटरी ही नहीं है।
  11592. 7:45:09अ यूजर की रिपॉज़िटरी है। और यूजर सर्विस
  11593. 7:45:12है हमारे पास। एक मिनट देख लेने दीजिए
  11594. 7:45:14मुझे। तो यहां पर यूजर सर्विस में आप जाते
  11595. 7:45:16हो तो यूजर सर्विस है। अ यहां पर ऑथ
  11596. 7:45:21कंट्रोलर में। यूजर सर्विस में यूजर
  11597. 7:45:22रिपॉज़िटरी तो है। ठीक है? अ लेकिन मैं
  11598. 7:45:25क्या करूंगा? मैं यहां पर अह यहीं पर आ
  11599. 7:45:29जाता हूं ऑथ कंट्रोलर में और यहां पर मैं
  11600. 7:45:34लिखूंगा अ यूजर
  11601. 7:45:38सर्विस। ठीक है? यूजर सर्विस डॉट या यूजर
  11602. 7:45:42सर्विस नहीं अभी के लिए ना सिंपलीफाई करते
  11603. 7:45:43हुए चीजों को। यहां पर है ना मैं यूजर
  11604. 7:45:44रिपॉज़िटरी का ही इंस्टेंस बना देता हूं।
  11605. 7:45:46तो यहां पर यूजर रिपॉज़िटरी लेके आता हूं।
  11606. 7:45:49यूजर रिपॉज़िटरी और फिर यहां पर यूजर
  11607. 7:45:52रिपॉज़िटरी। ठीक है? यूजर रिपॉज़िटरी मैंने
  11608. 7:45:54ला दिया और फिर यहां पर यूजर रिपॉज़िटरी
  11609. 7:45:56डॉट फाइंड बाय ईमेल लिख देता हूं। ठीक है?
  11610. 7:46:00फाइंड बाय ईमेल। अब फाइंड बाय ईमेल नाम का
  11611. 7:46:01कोई मेथड तो है नहीं। ठीक है? रिक्वेस्ट
  11612. 7:46:04डॉट गेट ईमेल। ठीक है? ये मैंने लिख दिया।
  11613. 7:46:07अब फाइंड बाय ईमेल नाम का कोई मेथड तो है
  11614. 7:46:08नहीं यहां पर। तो मैं क्या करूंगा? इसको
  11615. 7:46:10डिफाइन करवा देंगे हम यहां पर। देखिए ये
  11616. 7:46:12डिफाइन हो गया। ठीक है? और फिर यहां पर
  11617. 7:46:16मैं लिख दूंगा इफ
  11618. 7:46:19यूजर इज़ इक्वल टू नल। ठीक है? तो फिर
  11619. 7:46:23रिटर्न करना है क्या रिटर्न करना है 401
  11620. 7:46:26रिटर्न करेंगे हम तो मैं क्या करूंगा
  11621. 7:46:28रिस्पांस एंटिटी डॉट अ स्टेटस और फिर यहां
  11622. 7:46:32पर लिखूंगा 401 डॉट बिल्ड
  11623. 7:46:36ऐसे ठीक है इतना मैंने रिटर्न कर दिया और
  11624. 7:46:39यहां पर देखिए ये स्ट्रिंग लिखी हुई है
  11625. 7:46:41मैंने यहां पर स्ट्रिंग तो इसको हम कर
  11626. 7:46:44देते हैं रिस्पांस एंटिटी और फिर इसको लॉग
  11627. 7:46:47इन रिस्पांस लिख देता हूं यहां पर लॉग इन
  11628. 7:46:49रिस्पांस ठीक है तो रिस्पांस जो है उसका
  11629. 7:46:51भी स्ट्रक्चर हम रखेंगे यहां पर लॉग इन
  11630. 7:46:52रिस्पांस नाम की अभी फिलहाल कोई क्लास
  11631. 7:46:54डिफाइंड नहीं है। इसको डिफाइन करेंगे। ठीक
  11632. 7:46:56है? तो अभी के लिए रिस्पांस एंटिटी और ये
  11633. 7:46:59401 बिल्ड हो रहा है। लेकिन फिर भी इसमें
  11634. 7:47:02एरर तो आ ही रही है। ठीक है? एरर क्यों आ
  11635. 7:47:04रही है? अच्छा 1 मिनट। तो ये 401 इस पर
  11636. 7:47:09ओवर करता हूं। तो
  11637. 7:47:12ऑग डॉट स्प्रिंग फ्रेमवर्क। अच्छा तो ये
  11638. 7:47:14हो तो रहा है। ये रिस्पांस एंटिटी का
  11639. 7:47:17इस्तेमाल कर रहा है। अच्छा ये शायद लॉग इन
  11640. 7:47:19रिस्पांस की जो क्लास है वो बनी नहीं है।
  11641. 7:47:21इसके लिए ये एरर आ रही है। तो मैं इसको
  11642. 7:47:23क्रिएट कर देता हूं और इसको क्रिएट करूंगा
  11643. 7:47:25डीटीओ में ऑफ कोर्स और जैसे ही क्रिएट
  11644. 7:47:28करता हूं यहां पर आ जाता हूं। अच्छा एरर
  11645. 7:47:29चली गई देखिए। तो ये बिकॉज़ ये कंपाइल नहीं
  11646. 7:47:32हुआ था इतना लाइन। इसके लिए वो एरर आ रही
  11647. 7:47:34थी। ठीक है? तो यहां पे लिखता हूं। देखिए
  11648. 7:47:35मैं रिपॉज़िटरी का इस्तेमाल डायरेक्टली
  11649. 7:47:37कंट्रोलर में कर रहा हूं अभी के लिए। ठीक
  11650. 7:47:39है? ताकि हम ऑथेंटिकेशन प्रोसेस को समझ
  11651. 7:47:40पाए। बाद में ये जो रिपॉज़िटरी का कोड है
  11652. 7:47:42इसको हम सर्विस में मूव कर सकते हैं। ठीक
  11653. 7:47:44है? तो अ घबराइएगा नहीं कि अरे ये
  11654. 7:47:46रिपॉज़िटरी कंट्रोल में क्यों यूज़ कर रहा
  11655. 7:47:48है? मैं रीज़न है रीज़न ये है कि सिम सिंपल
  11656. 7:47:50रखूं चीजों को। ठीक है? ताकि आप लोगों को
  11657. 7:47:52समझ में आए। इफ यहां पर अब पासवर्ड
  11658. 7:47:55वैलिडेट करेंगे। इफ पासवर्ड अच्छा यहां पर
  11659. 7:47:58अब पासवर्ड वैलिडेट करने के लिए हमें क्या
  11660. 7:48:01चाहिए होगा? हमें चाहिए होगा पासवर्ड का
  11661. 7:48:04एनकोडर। ठीक है? तो मैं JWT utटिल्स में आ
  11662. 7:48:07जाता हूं। जेडब्ल्यूटी यूutils में हमारे
  11663. 7:48:09पास पासवर्ड एनकोडर डिफाइंड है। अह जी
  11664. 7:48:13यहां पे नहीं है। सिक्योरिटी में होगा।
  11665. 7:48:15सिक्योरिटी में तो एक हिसाब से सिक्योरिटी
  11666. 7:48:18कॉन्फ़िगरेशन में आ जाता हूं। ये रही
  11667. 7:48:20सिक्योरिटी कॉन्फ़िगरेशन। इसमें अ पासवर्ड
  11668. 7:48:23एनकोडर जो है वो डिफाइन नहीं है। ठीक है?
  11669. 7:48:26तो यहां पर मैं डिफाइन कर लूंगा पासवर्ड
  11670. 7:48:28एनकोडर। ठीक है? तो यहां पर आऊंगा और यहां
  11671. 7:48:32पर मैं लिख दूंगा
  11672. 7:48:35पिन
  11673. 7:48:37ठीक है? पब्लिक पासवर्ड एनकोडर
  11674. 7:48:42इस तरीके से और फिर पासवर्ड एनकोडर ऐसे और
  11675. 7:48:45फिर यहां पर लिख दूंगा रिटर्न न्यू
  11676. 7:48:47बिक्रिप्ट एनकोडर बिक्रिप्ट पासवर्ड
  11677. 7:48:50एनकोडर ऐसे। ठीक है? इतना हो चुका है। अब
  11678. 7:48:53यहां पर एरर क्यों आ रही है? अच्छा ये एरर
  11679. 7:48:56चली गई। ठीक है? तो यहां पर हमने एस
  11680. 7:48:58पासवर्ड एनकोडर को डिफाइन कर दिया। देखिए
  11681. 7:49:00पासवर्ड एनकोडर का हमें बीन यहां पर
  11682. 7:49:02लगेगा। इसीलिए हमने वहां पर डिफाइन किया
  11683. 7:49:04है। तो मैं क्या करूंगा? यहां पर प्राइवेट
  11684. 7:49:07फाइनल पासवर्ड एनकोडर तो बिक्रिप्ट
  11685. 7:49:10पासवर्ड एनकोडर हम इस्तेमाल कर रहे हैं और
  11686. 7:49:12उसका इंस्टेंस यहां पर स्प्रिंग
  11687. 7:49:13ऑटोमेटिकली इंजेक्ट कर देगा और हमें
  11688. 7:49:14पासवर्ड एनकोडर क्यों चाहिए यहां पर? एनी
  11689. 7:49:17गेसेस पासवर्ड एनकोडर क्यों चाहिए यहां
  11690. 7:49:19पर? हमें चाहिए पासवर्ड एनकोडर ताकि हम जो
  11691. 7:49:22है एनकोडेड पासवर्ड को कंपेयर कर पाएं।
  11692. 7:49:25ठीक है? तो मैं यहां पर कहूंगा नॉट इक्वल
  11693. 7:49:27टू पासवर्ड एनकोडर डॉट मैचेस। तो देखिए
  11694. 7:49:31यहां पर एक मैचेस मेथड है जहां पर आप रॉ
  11695. 7:49:33पासवर्ड पास कीजिए और एनकोडेड पासवर्ड को
  11696. 7:49:36पास कीजिए। तो पहले रॉ पासवर्ड को पास
  11697. 7:49:37कीजिए और फिर एनकोडेड पासवर्ड को पास
  11698. 7:49:39कीजिए। तो ये कंपेयर करके आपको बता देगा
  11699. 7:49:42कि ये मैच है या नहीं। ठीक है? तो जनरली
  11700. 7:49:46यहां पर मुझे रॉ पासवर्ड कहां पर आएगा?
  11701. 7:49:47लॉग इन रिक्वेस्ट में आएगा। ठीक है? तो
  11702. 7:49:49लॉग इन रिक्वेस्ट डॉट गेट पासवर्ड। और फिर
  11703. 7:49:53यहां पर मैं कहूंगा यूजर डॉट गेट पासवर्ड।
  11704. 7:49:56इनकोडेड पासवर्ड कहां से आएगा? डेटाबेस से
  11705. 7:49:59आएगा। करेक्ट। तो, यह मैंने लिख दिया यहां
  11706. 7:50:01पर। और अगर यह ट्रू नहीं होता है, तो मैं
  11707. 7:50:04फिर से यहां पर रिटर्न कर दूंगा
  11708. 7:50:07रिस्पांस एंटिटी 401 बिल। ठीक है? इतना
  11709. 7:50:09मैंने कर दिया है। अब ये हो चुका है। अब
  11710. 7:50:12यहां पर मुझे क्या करना चाहिए? यहां पर
  11711. 7:50:14मैं लिखूंगा स्ट्रिंग टोकन इज़ इक्वल टू
  11712. 7:50:17JWT यूutil। अच्छा JWT यूutil का भी
  11713. 7:50:19इंस्टेंस है नहीं क्रिएटेड। मैं यहां पर
  11714. 7:50:21लिख दूंगा JWT यूटिल्स और JWT यूटर्स ऐसे
  11715. 7:50:27और यहां पर आ जाऊंगा JWT
  11716. 7:50:29यूटिल्स डॉट जनरेट टोकन ठीक है अब जनरेट
  11717. 7:50:34टोकन में मुझे यहां पर पास करना चाहिए अ
  11718. 7:50:38डिटेल्स कुछ डिटेल्स तो जो डिटेल्स मैं
  11719. 7:50:40पास करना चाहता हूं वो यूजर डिटेल्स नहीं
  11720. 7:50:42है वो मैं पास करना चाहता हूं यूजर डॉट
  11721. 7:50:44गेट आईडी ठीक है और फिर यूजर डॉट गेट रोल
  11722. 7:50:49डॉट गेट
  11723. 7:50:51अच्छा यूजर डॉट गेट रोल इतना काफी है। ठीक
  11724. 7:50:54है? अब यहां पर अगर मैं आता हूं तो यूजर
  11725. 7:50:58डिटेल्स डिफाइंड क्या डिफाइंड है? यूजर
  11726. 7:51:00डिटेल्स। अब यूजर डिटेल तो नहीं चलेगा
  11727. 7:51:02यहां पर। ठीक है? तो हमें इसको मॉडिफाई
  11728. 7:51:04करना होगा। इसको हम कर देंगे स्ट्रिंग
  11729. 7:51:05यूजर आईडी और यहां पर मैं ले लूंगा
  11730. 7:51:08स्ट्रिंग रोल इस तरीके से। इतना हो गया।
  11731. 7:51:11ठीक है? अब यहां पर यूजरनेम लेने की जरूरत
  11732. 7:51:13नहीं है इसे यूजर डिटेल्स में से। तो इसको
  11733. 7:51:14हटा देता हूं। और सब्जेक्ट में यूजर नेम
  11734. 7:51:17नहीं जाएगा। यूजर आईडी जाएगी। ठीक है? जो
  11735. 7:51:19कि सही है। और यहां पर यूजर डिटेल्स डॉट
  11736. 7:51:23करने की बजाय ठीक है यूजर डिटेल्स डॉट ये
  11737. 7:51:27सब करने की बजाय हम क्या कर सकते हैं यहां
  11738. 7:51:29पर
  11739. 7:51:31यहां पर इसको डिलीट कर देता हूं और यहां
  11740. 7:51:33पर लिख देता हूं लिस्ट ऑफ ठीक है और यहां
  11741. 7:51:37पर लिख दूंगा न्यू सिंपल
  11742. 7:51:39ग्रांटेड अथॉरिटी और यहां पर मैं लिख
  11743. 7:51:42दूंगा यूज़ रोल ठीक है इसे ठीक है इतना हो
  11744. 7:51:46गया तो यहां पर यह जो रोल है यह सिंपल
  11745. 7:51:48ग्रांटेड अथॉरिटी
  11746. 7:51:50टाइप है यहां पर ऐसे। ठीक है? इतना हो
  11747. 7:51:53चुका है। अब यहां पर ये तो फिक्स हो गया।
  11748. 7:51:55अब यहां पर आ जाते हैं। ठीक है? यूजर डॉट
  11749. 7:51:57गेट रोल। अच्छा ये यूजर रोल प्रोवाइड कर
  11750. 7:52:00रहा है यहां पर। तो यहां पर मैं कहूंगा
  11751. 7:52:02गेट क्लास। अच्छा गेट क्लास नहीं होगा।
  11752. 7:52:06यहां पर ये इनम है। तो यहां पर यूजर यूजर
  11753. 7:52:09रोल आ रहा है। तो देखिए ये यूजर रोल
  11754. 7:52:12रिटर्न कर रहा है क्योंकि ये इनम है।
  11755. 7:52:14करेक्ट? आप समझ रहे हो? तो यहां पर अगर आप
  11756. 7:52:16यूजर मॉडल में अगर आप जाते हो तो आपने
  11757. 7:52:17उसको एज एन इनम डिक्लेअर किया हुआ है। ठीक
  11758. 7:52:19है? कहां पर गया यूजर? अच्छा यूजर दिखाई
  11759. 7:52:22नहीं दे रहा। तो यहां पर अगर आप जाते हो अ
  11760. 7:52:25यूजर में तो यहां पर आपने इनम डिक्लेअर
  11761. 7:52:27किया हुआ है। ठीक है? तो ये इनम रिटर्न कर
  11762. 7:52:29रहा है। तो आप क्या करोगे? यहां पर आ
  11763. 7:52:30जाओगे और यहां पर डॉट करोगे और नेम कर
  11764. 7:52:32दोगे ना तो ये नेम दे देगा उसका। ठीक है?
  11765. 7:52:35और नेम पास हो जाएगा मेथड में। ठीक है? तो
  11766. 7:52:37जो भी रोल है वो पास हो जाएगा अ वहां पर।
  11767. 7:52:40ठीक है? अब इतना होने के बाद हमें क्या
  11768. 7:52:43करना चाहिए? हमने इतना कर लिया। तो ये
  11769. 7:52:45देखिए ये हमें मिलता है ना टोकन इसका मतलब
  11770. 7:52:46देखिए यूजरनेम यूजर हमें मिल गया हमने
  11771. 7:52:49पासवर्ड वैलिडेट कर लिया टोकन भी जनरेट कर
  11772. 7:52:51लिया और अब हम क्या कर सकते हैं हम लोग
  11773. 7:52:53रिटर्न कर सकते हैं रिस्पांस एंटीटी डॉट
  11774. 7:52:57ओके और फिर यहां पर लिखना है अ न्यू लॉग
  11775. 7:53:00इन रिस्पांस अच्छा लॉग इन रिस्पांस में अब
  11776. 7:53:04आपको टोकन पास करना है करेक्ट तो यहां पर
  11777. 7:53:07मैं क्या करूंगा लॉग इन रिस्पांस में मैं
  11778. 7:53:10लिख दूंगा अ स्ट्रिंग टोकन ठीक है? लॉग इन
  11779. 7:53:14रिस्पांस में देखिए आप अपने हिसाब से
  11780. 7:53:16डिजाइन कर सकते हो। आपको चाहिए टोकन
  11781. 7:53:19डिफाइन कीजिए। यहां पर हमारे पास और कौन
  11782. 7:53:21से कौन से डिटेल्स हैं। यहां पर यूजर
  11783. 7:53:23रिस्पांस भी है। ठीक है? एक हिसाब से यूजर
  11784. 7:53:25रिस्पांस भी है। तो अगर आप चाहते हो कि
  11785. 7:53:27यूजर की सारी डिटेल्स भी जाए तो आप वो भी
  11786. 7:53:29कर सकते हो। तो मैं क्या करूंगा? देखिए
  11787. 7:53:30टोकन भी रख सकते हैं हम। हमारे ऊपर है।
  11788. 7:53:33ठीक है? सिंपल रखना है तो टोकन रख दीजिए।
  11789. 7:53:34लेकिन मैं क्या करूंगा? मैं प्राइवेट और
  11790. 7:53:36फिर यूजर रिस्पॉन्स भी पास करूंगा यहां
  11791. 7:53:38पर। तो यह दूसरा डीटीओ का क्लास है जिसका
  11792. 7:53:42ऑब्जेक्ट मैं यहां पर पास कर रहा हूं। ठीक
  11793. 7:53:44है? एक हिसाब से तो रिस्पांस नहीं रहेगा।
  11794. 7:53:46यह रहेगा यूजर। इसको यूजर बोलता हूं। ठीक
  11795. 7:53:48है? ऐसे और यहां पर फिर से मैं डिक्लेअ कर
  11796. 7:53:51दूंगा डेटा और यहां पर लिख दूंगा नो ऑक्स
  11797. 7:53:54कंस्ट्रक्टर और फिर यहां पर लिख दूंगा ऑल
  11798. 7:53:56ऑक्स कंस्ट्रक्टर इस तरीके से। ठीक है?
  11799. 7:53:59इतना मैंने कर दिया। अब मैं क्या करूंगा?
  11800. 7:54:01यहां पर आ जाऊंगा ऑथ कंट्रोलर में। अब
  11801. 7:54:03यहां पर मुझे पास करना है टोकन। तो सबसे
  11802. 7:54:05पहले पास करूंगा टोकन। अच्छा सॉरी टोकन
  11803. 7:54:07नहीं यहां पर लिखूंगा न्यू लॉग इन
  11804. 7:54:09रिस्पांस
  11805. 7:54:11लॉग इन रिस्पांस और फिर यहां पर मुझे पास
  11806. 7:54:13करना है टोकन सबसे पहले टोकन पास कर दिया
  11807. 7:54:16और फिर मैं कहूंगा यूजर सर्विस यूजर
  11808. 7:54:19सर्विस डॉट मैप अच्छा यूजर सर्विस में है
  11809. 7:54:24कोई ऐसा मेथड जो हमें मैप करने में मदद
  11810. 7:54:27करे अच्छा मैप टू रिस्पांस है तो सही मैप
  11811. 7:54:30टू रिस्पांस लेकिन यह जो मेथड है यह
  11812. 7:54:32प्राइवेट है तो देख लेने दीजिए मुझे यहां
  11813. 7:54:35पर आएंगे हम ठीक है मैप टू अच्छा
  11814. 7:54:40मैप टू रिस्पांस ठीक है ये वर्क नहीं
  11815. 7:54:42करेगा क्योंकि ये प्राइवेट है तो एक सिंपल
  11816. 7:54:44सी चीज कर लेते हैं यहां पर यूजर सर्विस
  11817. 7:54:46में अगर आप चाहोगे तो इसको हम कर देते हैं
  11818. 7:54:50प्राइवेट हटा के पब्लिक क्योंकि ये मैपिंग
  11819. 7:54:52मेथड है तो ठीक है इसको पब्लिक रख सकते
  11820. 7:54:54हैं और यहां पर मैं इसको यूज़ करना चाहूंगा
  11821. 7:54:56ठीक है मैप टू रिस्पांस देखिए खुद का मेथड
  11822. 7:54:59भी यहां पर डिफाइन कर सकते हो लेकिन
  11823. 7:55:00ऑलरेडी डिफाइंड है तो फिर से क्यों करना
  11824. 7:55:02है ठीक है और यहां पर हम पास करेंगे अ
  11825. 7:55:05यूजर यूर ऐसे ठीक है तो इतना मैंने कर
  11826. 7:55:09दिया है यूजर को पास कर दिया है इतना हो
  11827. 7:55:11चुका है और फिर यहां पर हम आएंगे रिटर्न
  11828. 7:55:15अच्छा यहां पर देखिए और भी कोड लिखा हुआ
  11829. 7:55:17है तो ये सारी कोड की अब जरूरत नहीं है तो
  11830. 7:55:19यहां पर मैं क्या करूंगा रिटर्न करते वक्त
  11831. 7:55:21सिर्फ 401 रिटर्न कर दूंगा सीधा-सीधा ऐसे
  11832. 7:55:25ठीक है और इस कोड की अब जरूरत नहीं है।
  11833. 7:55:27ठीक है? तो इसको हटा देते हैं। तो इस
  11834. 7:55:29तरीके से देखिए आपका लॉगिन मेथड जो है वो
  11835. 7:55:32कंप्लीटली बन चुका है। ठीक है? तो एपीआई
  11836. 7:55:35डॉट ऑथ इसको आपको पब्लिकली इनेबल्ड रखना
  11837. 7:55:37है। तो आपको आना है सिक्योरिटी
  11838. 7:55:39कॉन्फ़िगरेशन में यहां पर और एपीआई स्लश ऑथ
  11839. 7:55:42को आपने पब्लिकली इनेबल ऑलरेडी रखा हुआ
  11840. 7:55:44है। ठीक है? तो ये एक हिसाब से अ काम कर
  11841. 7:55:47लेना चाहिए। ठीक है? एक हिसाब से ये काम
  11842. 7:55:49कर लेना चाहिए। इसमें कोई दिक्कत नहीं आनी
  11843. 7:55:51चाहिए। तो इतना हो गया। ठीक है? इसको अब
  11844. 7:55:53चलाते हैं। ठीक है? मैं क्या करूंगा? इसको
  11845. 7:55:55रीन करूंगा और देखते हैं कि हमें कोई इशूज़
  11846. 7:55:58या बग्स आते हैं या नहीं। ठीक है? अच्छा
  11847. 7:56:02यहां पर क्या हो गया? सेमी कॉललन मैंने
  11848. 7:56:03कहीं तो मिस कर दिया है। ठीक है? तो यहां
  11849. 7:56:05पर कहां मिस किया है मैंने? सेमी कॉललन
  11850. 7:56:07रिटर्न करते वक्त सेमी कॉललन मिस किया है।
  11851. 7:56:09ठीक है? छोटी सी गड़बड़ तो होनी है। लाजमी
  11852. 7:56:14है। ठीक है? तो ये देखिए एप्लीकेशन रन हो
  11853. 7:56:16रहा है। रन हो चुका है। कोई एरर वैसे आई
  11854. 7:56:19नहीं है। यह रन हो चुका है। इसको क्लियर
  11855. 7:56:22कर देता हूं स्टक ट्रेस को। ठीक है? यहां
  11856. 7:56:24पर आ जाते हैं। सबसे पहले तो देखिए यहां
  11857. 7:56:28पर यह रजिस्टर्ड है। लॉग इन की जो
  11858. 7:56:30रिक्वेस्ट है उसको ट्रिगर करते हैं हम।
  11859. 7:56:32ठीक है? लॉग इन की रिक्वेस्ट बनानी पड़ेगी
  11860. 7:56:33एक्चुअली में। तो लॉग इन इसको मैं यूजर
  11861. 7:56:36रजिस्ट्रेशन को ही मैं डुप्लीकेट कर देता
  11862. 7:56:37हूं यहां पर। ठीक है? यूजर रजिस्ट्रेशन को
  11863. 7:56:39डुप्लीकेट कर दिया। और यहां पर यूजर
  11864. 7:56:41रजिस्ट्रेशन के बजाय मैं कहूंगा लॉग इन।
  11865. 7:56:44लॉग इन ऐसे। ठीक है? अब यहां पर बॉडी में
  11866. 7:56:47आप देख पा रहे हो ईमेल और पासवर्ड मैं पास
  11867. 7:56:49कर रहा हूं। ठीक है? तो ईमेल और पासवर्ड
  11868. 7:56:50रहने दूंगा। फर्स्ट नेम, लास्ट नेम हटा
  11869. 7:56:52दूंगा। इस तरीके से पोस्ट रिक्वेस्ट ही
  11870. 7:56:54चाहिए हमें। इसको सेव कर दूंगा और इसको कर
  11871. 7:56:56दूंगा सेंड। देखते हैं क्या आउटपुट आता
  11872. 7:56:58है। अच्छा देख पा रहे हो आपको। अच्छा सॉरी
  11873. 7:57:00रजिस्टर के एंड पॉइंट मैंने कॉल किए सॉरी
  11874. 7:57:03रजिस्टर के एंड पॉइंट कॉल किए। रजिस्टर के
  11875. 7:57:05एंड पॉइंट कॉल नहीं करनी है। आपको लॉग इन
  11876. 7:57:07के एंड पॉइंट कॉल करनी है। तो अगर आप
  11877. 7:57:08डुप्लीकेट करते हो एंड पॉइंट्स को इस
  11878. 7:57:10तरीके से तो ध्यान रखिएगा याद रखिएगा आपको
  11879. 7:57:12लॉग इन के एंड पॉइंट कॉल करनी है। ये
  11880. 7:57:14अपडेट कर दीजिएगा। लॉग इन करूंगा मैं।
  11881. 7:57:16अच्छा 403 फॉरबिडन आ चुका है। अब ये 403
  11882. 7:57:20फॉरबिडन क्यों आया है? तो यहां पर देखते
  11883. 7:57:22हैं। एरर तो आई है। सो लेट्स सी। ठीक है?
  11884. 7:57:24तो स्टैक ट्रेस से देखिए कुछ भी एरर आपको
  11885. 7:57:26पोस्टमैन में दिखता है ना तो उस उस एरर की
  11886. 7:57:29जो डिटेल्स है वो आपको दिखाई देगी यहां पर
  11887. 7:57:30कंसोल पर तो देखिए क्वेरी डिड नॉट रिटर्न
  11888. 7:57:35यूनिक रिजल्ट सेवन रिटर्न सेवन रिजल्ट्स
  11889. 7:57:38वर रिटर्न विद रूट कॉस्ट ठीक है अब ये कौन
  11890. 7:57:40सी क्वेरी की बात हो रही है यहां पर तो ये
  11891. 7:57:43मेरे हिसाब से यहां पर ऑथ कंट्रोलर 44
  11892. 7:57:46अच्छा समझ गया मैं क्या इशू हुआ है तो एक
  11893. 7:57:49ही ईमेल से हमने क्रिएट कर रखी है मल्टीपल
  11894. 7:57:54यूज यूज़र्स हमने क्या कर रखा है? एक ही
  11895. 7:57:57ईमेल से हमने क्रिएट कर रखी है अ मल्टीपल
  11896. 7:58:00यूज़र्स। और यह प्रॉब्लम इसीलिए है अगर आप
  11897. 7:58:03ईमेल्स का इस्तेमाल कर रहे हो ऑथेंटिकेशन
  11898. 7:58:05में तो आप चाहोगे कि आपकी जो ईमेल्स है वो
  11899. 7:58:08यूनिक रहे। ठीक है? तो मैं क्या करूंगा?
  11900. 7:58:09देखिए डेटाबेस लेवल पे एक मैं कंडीशन ऐड
  11901. 7:58:12कर रहा हूं कि कॉलम ये कॉलम एनोटेशन है जो
  11902. 7:58:15आप जीपीए में इस्तेमाल कर सकते हो @ कॉलम
  11903. 7:58:17और यहां पर देखिए आप काफी सारी चीजें लिख
  11904. 7:58:19सकते हो। तो देखिए मैं यहां पर अगर ऐसे
  11905. 7:58:21ऐसे लिखता हूं तो देखिए अह यूनिक, नलेबल,
  11906. 7:58:24इंसर्टेबल, अपडेटेबल यह सारे पैरामीटर्स
  11907. 7:58:27हैं। आप लेंथ भी डिफाइन कर सकते हो। ये
  11908. 7:58:28सारी चीजें आप डिफाइन कर सकते हो। तो कॉलम
  11909. 7:58:30लेवल पे अगर कोई कंस्ट्रेंट डिफाइन करना
  11910. 7:58:31है आपको कॉलम एनोटेशन का इस्तेमाल करना
  11911. 7:58:33है। ठीक है? अब इसमें से मैं यूनिक का
  11912. 7:58:35इस्तेमाल करना चाहता हूं। तो मैं कहूंगा
  11913. 7:58:36यूनिक। ठीक है? यूनिक = ट्रू। इतना मैंने
  11914. 7:58:40लिख दिया यूनिक = ट्रू। तो अब ये क्या मेक
  11915. 7:58:42श्योर करेगा कि जो यूजर है वो यूनिक रहे।
  11916. 7:58:45ठीक है? ये मेक श्योर करेगा। लेकिन मुझे
  11917. 7:58:47क्या लगता है पता है? मुझे लगता है कि ये
  11918. 7:58:49सारे चलो डेटा तो ठीक है। मुझे ऐसा लगता
  11919. 7:58:52है कि ये सारी जो टेबल्स हैं ना मुझे इसको
  11920. 7:58:54ड्रॉप कर देना चाहिए फिलहाल के लिए। तो
  11921. 7:58:56मैं तीनों टेबल को ड्रॉप कर देता हूं
  11922. 7:58:57फिटनेस डेमो में से। ठीक है? तो अभी
  11923. 7:58:59फिटनेस डेमो में कुछ भी नहीं है। ठीक है?
  11924. 7:59:01कुछ भी नहीं है एक हिसाब से। और यहां पर
  11925. 7:59:03आता हूं और एप्लीकेशन को स्टॉप करता हूं
  11926. 7:59:05और फिर दोबारा रिस्टार्ट करता हूं।
  11927. 7:59:07क्योंकि देखिए मैंने टेबल लेवल
  11928. 7:59:08कंस्ट्रेंट्स चेंज किए और ऑलरेडी मैंने
  11929. 7:59:10डुप्लीकेट वैल्यूज़ डाल रखी है। तो दिक्कत
  11930. 7:59:13है। करेक्ट? तो देखिए यह सारी की सारी
  11931. 7:59:15टेबल्स क्रिएट हो गई है। यहां पर यहां पर
  11932. 7:59:17आओगे आप। पूरा का पूरा रिसेट हो गया था।
  11933. 7:59:19यूजर भी क्रिएट हो चुकी है। ठीक है? अब
  11934. 7:59:21मैं एक पहला यूजर को रजिस्टर करता हूं। तो
  11935. 7:59:24यहां पर यूजर तो एक्सिस्ट नहीं करता। तो
  11936. 7:59:25पहले यह यूजर को रजिस्टर करेंगे हम। ये
  11937. 7:59:27यूजर रजिस्टर हो चुकी है। आप डेटाबेस में
  11938. 7:59:29आके चेक भी कर सकते हो यूजर रजिस्टर हुई
  11939. 7:59:31है या नहीं। ठीक है? देखिए ये यूजर
  11940. 7:59:33रजिस्टर हो चुकी है। ठीक है? पासवर्ड भी#श
  11941. 7:59:36का अ यानी कि एनकोडेड है। तो यहां पर आ
  11942. 7:59:39जाऊंगा मैं और ये तो हो चुका है। और यहां
  11943. 7:59:42पर लॉग इन करने को कोशिश करेंगे। लॉग इन
  11944. 7:59:44करता हूं मैं। अच्छा लॉग इन किया मैंने तो
  11945. 7:59:47401 अन ऑथोराइज्ड और अब क्या हो गया?
  11946. 7:59:50एनकोडेड पासवर्ड डज नॉट लुक लाइक अ
  11947. 7:59:53बिक्रिप्ट। अच्छा ये क्यों हो गया? अब
  11948. 7:59:56यहां पर ठीक है? तो यहां पर देखते हैं। अब
  11949. 7:59:58देखिए यहां पर ऑथ कंट्रोलर में मैं जब
  11950. 8:00:00यूजर को सेव कर रहा हूं, रजिस्टर कर रहा
  11951. 8:00:02हूं। तो यहां पर पासवर्ड रिक्वेस्ट डॉट
  11952. 8:00:04गेट पासवर्ड कर रहा हूं। ठीक है? और फिर
  11953. 8:00:06यहां पर मैं यूजर को अच्छा मैं सेव कर रहा
  11954. 8:00:10हूं। अच्छा यहां पर देखिए पासवर्ड को मैं
  11955. 8:00:12सेव कर रहा हूं। रिक्वेस्ट डॉट गेट
  11956. 8:00:13पासवर्ड। ठीक है? पासवर्ड कहां पे है?
  11957. 8:00:15पासवर्ड। तो पासवर्ड जो है प्लेन टेक्स्ट
  11958. 8:00:17में सेव हो रहा है। करेक्ट। पासवर्ड एनकोड
  11959. 8:00:19कर रहे हैं हम। जी नहीं बिल्कुल नहीं कर
  11960. 8:00:21रहे। और पासवर्ड कैसे सेव हो रहा है?
  11961. 8:00:23प्लेन टेक्स्ट में सेव हो रहा है। तो हमें
  11962. 8:00:25क्या करना चाहिए? सबसे पहले तो सेव करते
  11963. 8:00:27वक्त भी पासवर्ड को एनकोड करना है। उम्मीद
  11964. 8:00:29करता हूं समझ गए आप ये चल क्यों नहीं रहा
  11965. 8:00:31है? क्योंकि जो पासवर्ड कंपैरिजन हम कर
  11966. 8:00:33रहे हैं वो एनकोडेड पासवर्ड के अगेंस्ट कर
  11967. 8:00:35रहे हैं। देखिए यहां पर मैं एक और बार
  11968. 8:00:36आपको बता देता हूं। ऑथ कंट्रोलर में जिनको
  11969. 8:00:38समझ में नहीं आया। ऑथ कंट्रोलर में हम मैच
  11970. 8:00:40कर रहे हैं ये रॉ पासवर्ड वर्सेस एनकोडेड
  11971. 8:00:42पासवर्ड। लेकिन डेटाबेस से हमें इनकोडेड
  11972. 8:00:44पासवर्ड नहीं मिल रहा है क्योंकि डेटाबेस
  11973. 8:00:45में हम इनकोडेड पासवर्ड स्टोर ही नहीं कर
  11974. 8:00:47रहे। एनकोडेड पासवर्ड को स्टोर करना है।
  11975. 8:00:49ठीक है? हम प्लेन टेक्स्ट में इस तरीके से
  11976. 8:00:52पासवर्ड स्टोर नहीं कर सकते। करेक्ट?
  11977. 8:00:53सिक्योरिटी प्रिंसिपल्स के अगेंस्ट है। तो
  11978. 8:00:56यहां पर आ जाएंगे हम अ लॉग इन अ कहां पर
  11979. 8:00:59थे हम? हमारे पास तो हम ऑथ कंट्रोलर से गए
  11980. 8:01:02थे यूजर सर्विस में। यूजर सर्विस में हम
  11981. 8:01:05यहां पर पासवर्ड को स्टोर कर रहे हैं। तो
  11982. 8:01:07मैं क्या करूंगा? सबसे पहले तो मुझे
  11983. 8:01:08एनकोडर लगेगा यहां पर। तो मैं कहूंगा
  11984. 8:01:09प्राइवेट फाइनल पासवर्ड एनकोडर। और
  11985. 8:01:12पासवर्ड एनकोडर का बीम जो है मैंने ऑलरेडी
  11986. 8:01:14बना रखा है। ठीक है? और यहां पर पासवर्ड
  11987. 8:01:17को मैं स्टोर करने से पहले मैं कहूंगा
  11988. 8:01:19इसको कट कर लूंगा। इसको कहूंगा पासवर्ड
  11989. 8:01:21एनकोडर डॉट एनकोड और ये जो पासवर्ड है
  11990. 8:01:24इसको पास कर दूंगा। बस इतना ही करूंगा
  11991. 8:01:26मैं। ठीक है? अब मैं क्या करूंगा? यहां पर
  11992. 8:01:28आ जाता हूं। ये जो टेबल है इसको मैं
  11993. 8:01:30ट्रंकेट कर देता हूं। ट्रंकेट टेबल।
  11994. 8:01:32ट्रंकेट का मतलब है सारा का सारा डेटा
  11995. 8:01:34डिलीट हो जाएगा। अच्छा ये डिलीट नहीं
  11996. 8:01:35होगा। तो एक काम करता हूं। मैं रिसेट ही
  11997. 8:01:37कर देता हूं। मुझे इस पर डिलीट करने जा
  11998. 8:01:40रहा हूं। तो वो बोल रहा है कि अ
  11999. 8:01:42कंस्ट्रेंट्स है कुछ। ठीक है? तो मैं क्या
  12000. 8:01:44करता हूं? ड्रॉप कर देता हूं सारे के सारे
  12001. 8:01:46डेटाबेस को क्योंकि डेटा वैसे भी हमने नया
  12002. 8:01:48ही डाला था। फिर से रिस्टार्ट करता हूं
  12003. 8:01:50ताकि फिर से नया स्कीमा बने। ठीक है?
  12004. 8:01:53देखिए नया स्कीमा बन रहा है पूरा का पूरा
  12005. 8:01:56नया। और यहां पर अगर आप आते हो तो यहां पर
  12006. 8:01:58आपको रिफ्रेश करना है और यूजर बना बनाया
  12007. 8:02:00दिखेगा यहां पर। ठीक है? और यूजर में अब
  12008. 8:02:03कोई डेटा नहीं दिखेगा आपको। ठीक है?
  12009. 8:02:04क्योंकि आपने पूरा ट्रंकेट किया हुआ था।
  12010. 8:02:06अब मैं यहां पर सबसे पहले रजिस्टर करूंगा
  12011. 8:02:08यूजर को। जैसे ही रजिस्टर करता हूं तो
  12012. 8:02:10देखिए ये जो पासवर्ड है ये पूरा एनकोडेड
  12013. 8:02:12पासवर्ड मिल रहा है मुझे और यहां पर
  12014. 8:02:13डेटाबेस में भी अगर आप देखते हो यहां पर
  12015. 8:02:16आप रन करके देखिए देखिए ये जो पासवर्ड है
  12016. 8:02:18एनकोडेड है ठीक है यहां पर अगर आप आओगे अब
  12017. 8:02:22लॉग इन करने की कोशिश कीजिए इस तरीके से
  12018. 8:02:24लॉग इन आप करते हो अच्छा फॉरबिडन अभी भी आ
  12019. 8:02:26रहा है अब ये फॉरबिडन क्यों आ रहा है फिर
  12020. 8:02:28से कुछ एरर आ गई यहां पर ठीक है एरर्स
  12021. 8:02:30देखिए एरर्स से आप बच नहीं सकते हो ठीक है
  12022. 8:02:33एरर्स क्या आ रही है वो देख लेते हैं हम
  12023. 8:02:35ठीक है एरर आ रही है हमें कैन नॉट इनवोक
  12024. 8:02:37यूजर डॉट रोल डॉट नेम बिकॉज़ रिटर्न वैल्यू
  12025. 8:02:41इसके रिटर्न वैल्यू नल है। अच्छा ऐसे
  12026. 8:02:44क्यों नल है? ये यूजर की रोल स्टोर नहीं
  12027. 8:02:48हो रही है क्या? यहां पर अगर आप आओगे तो
  12028. 8:02:51ये जो यूजर की अच्छा यूजर की रोल ही नहीं
  12029. 8:02:55स्टोर हो रही है। यहां पर यूजर रोल यहां
  12030. 8:02:57पर दिखाई नहीं दे रही है। लेकिन हमने एक
  12031. 8:02:58डिफ़ॉल्ट वैल्यू तो ऐड कर रखी है। तो
  12032. 8:03:00डिफ़ॉल्ट वैल्यू अच्छा डिफ़ॉल्ट वैल्यू नल
  12033. 8:03:02है यहां पर। ये देखिए डिफ़ॉल्ट वैल्यू जो
  12034. 8:03:04जा रही है वो नल जा रही है डेटाबेस में।
  12035. 8:03:06अब ये डिफ़ॉल्ट वैल्यू नल क्यों जा रही है
  12036. 8:03:08डेटाबेस में? तो ये देखने की जरूरत है
  12037. 8:03:10हमें यहां पर। तो हम क्या करेंगे? यूजर
  12038. 8:03:12सर्विस में आ जाएंगे। यहां पर हम यूजर
  12039. 8:03:14स्टोर कर रहे हैं। करेक्ट? यूजर को क्रिएट
  12040. 8:03:17करके मैं यूजर को एक हिसाब से यहां पर सेव
  12041. 8:03:21कर रहा हूं। ठीक है? तो दिक्कत ये है। मैं
  12042. 8:03:24यहां पर अ ये सेट नहीं कर रहा हूं। यहां
  12043. 8:03:28पर आप देखोगे यहां पर मैंने रोल सेट नहीं
  12044. 8:03:31किया हुआ है। क्या ये रीज़न है? 1 मिनट।
  12045. 8:03:34मैं देख लेता हूं। जी हां, शायद यही रीज़न
  12046. 8:03:38है। ठीक है? यही रीज़न है। तो, यहां पर
  12047. 8:03:41मुझे रोल भी सेट कर लेना चाहिए। ठीक है?
  12048. 8:03:43डॉट रोल इस तरीके से। और यहां पर मैं
  12049. 8:03:46कहूंगा रिक्वेस्ट डॉट गेट रोल। अगर
  12050. 8:03:48रिक्वेस्ट अच्छा, रिक्वेस्ट में रोल ही
  12051. 8:03:51नहीं ले रहे हम। ठीक है? रिक्वेस्ट में
  12052. 8:03:52रोल नहीं ले रहे। तो मैं क्या करता हूं?
  12053. 8:03:54यहां पर रजिस्टर रिक्वेस्ट में आ जाता
  12054. 8:03:55हूं। और यहां पर रोल भी ऐड कर देता हूं।
  12055. 8:03:57इसको डुप्लीकेट प्राइवेट स्ट्रिंग रोल ऐसे
  12056. 8:03:59कर देता हूं। ठीक है? तो अगर यहां पर आप
  12057. 8:04:02आओगे रजिस्टर रिक्वेस्ट में तो यहां पर
  12058. 8:04:04गेट रोल कीजिए। गेट रोल अगर यह नॉट इक्वल
  12059. 8:04:08टू नल है।
  12060. 8:04:10इसको मैं यहां पर नहीं लिखता हूं। ये पूरा
  12061. 8:04:12लॉजिक मैं क्या करूंगा? देखिए
  12062. 8:04:14यहां पर लिखता हूं रोल और इज़ इक्वल टू अगर
  12063. 8:04:17रिक्वेस्ट में कोई रोल आ रहा है। ठीक है?
  12064. 8:04:21कोई रोल आ रहा है तो वो वाला रोल को
  12065. 8:04:24इस्तेमाल कीजिए। इस तरीके से तो आप क्या
  12066. 8:04:26कीजिए? अह रिक्वेस्ट डॉट गेट रोल ऐसे
  12067. 8:04:29कीजिए। और अगर नहीं आ रहा है तो फिर आपको
  12068. 8:04:33क्या करना है? यूजर रोल का इस्तेमाल करना
  12069. 8:04:35है जो हमने क्रिएट किया हुआ है। और एक
  12070. 8:04:37डिफॉल्ट रोल जो है यूजर का उसको स्टोर कर
  12071. 8:04:40देना है ऐसे। ठीक है? इस तरीके से कर देना
  12072. 8:04:44है आपको।
  12073. 8:04:46स्ट्रिंग पास करना चाहिए कि अच्छा
  12074. 8:04:48स्ट्रिंग पास नहीं करना चाहिए यहां पर
  12075. 8:04:50मेरे हिसाब से। स्ट्रिंग पास करना चाहिए।
  12076. 8:04:531 मिनट मुझे देख लेनी। अच्छा ये स्ट्रिंग
  12077. 8:04:54नहीं रहेगा। ये रहेगा यूजर रोल का टाइप।
  12078. 8:04:56देखिए यूजर रोल का टाइप रहेगा। तो यहां पर
  12079. 8:04:58यह यूजर रोल का टाइप रहेगा इस तरीके से तो
  12080. 8:05:02रिक्वेस्ट डॉट गेट रोल अगर गेट रोल
  12081. 8:05:06रिक्वेस्ट डॉट गेट रोल अच्छा तो यहां पर
  12082. 8:05:10रजिस्टर रिक्वेस्ट में अगर आप आते हो
  12083. 8:05:12रजिस्टर रिक्वेस्ट तो यहां पर आपको लिखना
  12084. 8:05:16होगा स्ट्रिंग नहीं ये होगा यूजर रोल ऐसे
  12085. 8:05:20इस तरीके से ठीक है अब यहां पर अगर आप आते
  12086. 8:05:22हो तो देखिए रिक्वेस्ट डॉट गेट रोल अगर यह
  12087. 8:05:25नल है तो फिर रोल पास कर दीजिए ऐसे से तो
  12088. 8:05:28रोल एक हिसाब से रिक्वेस्ट में मैंडेटरी
  12089. 8:05:30भी नहीं है। ठीक है? अगर नहीं पास करता है
  12090. 8:05:33कोई यूजर तो आप यहां पर एक डिफ़ॉल्ट रोल
  12091. 8:05:35यूजर का असाइन कर सकते हो और फिर उसे यहां
  12092. 8:05:37पर सेट कर दे रहे हो। ठीक है? उतना आप कर
  12093. 8:05:39रहे हो। और मैं अब क्या करूंगा? फिर से
  12094. 8:05:41हमें ट्रंकेट करने की जरूरत है। सब कुछ
  12095. 8:05:43ड्रॉप कर देंगे हम। ड्रॉप कर दूंगा। ड्रॉप
  12096. 8:05:45नाउ। ठीक है? और इसको मैं दोबारा
  12097. 8:05:47रिस्टार्ट करूंगा। अब रोल एक्चुअली डेटबेस
  12098. 8:05:50में स्टोर होना चाहिए। ठीक है? तो हम चेक
  12099. 8:05:52करेंगे ये। ठीक है? हो सकता है और भी एरर
  12100. 8:05:54आए दोस्तों। देखिए एक-एक करके हमें डिब
  12101. 8:05:55करना है एरर्स को। ऐसे घबराना नहीं है
  12102. 8:05:57एरर्स को और मैं इसे बिल्कुल कट नहीं
  12103. 8:05:59करूंगा। ठीक है? पब्लिश करते वक्त इस
  12104. 8:06:01वीडियो को कट नहीं करूंगा। एडिट नहीं
  12105. 8:06:02करूंगा क्योंकि यह जो डिबगिंग प्रोसेस है
  12106. 8:06:04यह भी समझना जरूरी है। क्लीन क्लीन सब कुछ
  12107. 8:06:07सब सही चल रहा है। वैसे तो आपको देखने
  12108. 8:06:10काफी जगह मिल जाएगा। ठीक है? लेकिन मेरा
  12109. 8:06:12स्टाइल वो नहीं है। मैं आपको एरर आते हैं
  12110. 8:06:13वो भी दिखाता हूं। इसको सेव करूंगा। तो
  12111. 8:06:16देखिए अब यह यूजर क्रिएट हो चुका है। यूजर
  12112. 8:06:19क्रिएट होने के बाद यहां पर हम अगर सर्च
  12113. 8:06:22करते हैं यूजर को तो यहां पर देखिए यूजर
  12114. 8:06:24का रोल सेव हो चुका है। पहले नल था ये
  12115. 8:06:27करेक्ट। अब हम जो है यहां से पोस्टमैन से
  12116. 8:06:31लॉगिन की रिक्वेस्ट करते हैं। लॉग इन की
  12117. 8:06:33रिक्वेस्ट अगर मैं करता हूं। अच्छा देखिए
  12118. 8:06:34अब डाटा आ गया हमारे पास। लॉग इन की
  12119. 8:06:37रिक्वेस्ट अगर मैं मैंने की तो देखिए मुझे
  12120. 8:06:39टोकन मिल चुका है। और यह टोकन को मैं अगर
  12121. 8:06:41कॉपी करता हूं। टोकन को कॉपी करते हैं।
  12122. 8:06:43यहां पर आ जाते हैं। यहां पर हम जाएंगे
  12123. 8:06:45jw.io
  12124. 8:06:46यह jw की ऑफिशियल वेबसाइट है और यहां पर
  12125. 8:06:49इसके लिए आ रहे हैं क्योंकि हम टोकन को
  12126. 8:06:50डिबग कर पाए। तो ये टोकन को मैंने पेस्ट
  12127. 8:06:52कर दिया। और यहां पर आप देखिए ये
  12128. 8:06:54एल्गोरिदम यूज़ किया है। ठीक है? एल्गोरिदम
  12129. 8:06:56है HS 256 और यहां पर आप देखोगे तो ये
  12130. 8:07:00सब्जेक्ट में हमने डाला है यूजर आईडी।
  12131. 8:07:02क्या ये यूजर आईडी सही है? 9A8B तो यहां
  12132. 8:07:06पर मैं देख लेता हूं डेटाबेस में 9A8B।
  12133. 8:07:08देखिए यूजर आईडी सही जा रही है यूजर आईडी।
  12134. 8:07:10करेक्ट। यूजर आईडी जा रही है। हमारे पास
  12135. 8:07:13रोल्स भी है। रोल्स इस तरीके से स्टोर हो
  12136. 8:07:15रही है। अथॉरिटी कोलन यूजर अच्छा इसको
  12137. 8:07:18बढ़िया तरीके से भी स्टोर कर सकते हैं।
  12138. 8:07:20इसको थोड़ा इंप्रूव कर सकते हैं। और यहां
  12139. 8:07:22पर देखिए अ क्या बोलते हैं इसको? इशूड एट
  12140. 8:07:26टाइम और एक्सपायरेशन टाइम ये दोनों सेव्ड
  12141. 8:07:28है। और ये है हमारी सीक्रेट। ठीक है? तो
  12142. 8:07:32एक हिसाब से ये स्टोर हो रही है। ठीक है?
  12143. 8:07:34ये अथॉरिटीज़ की की आ रही है। तो इसको एक
  12144. 8:07:35सिंपल तरीके से हम फिक्स कर सकते हैं।
  12145. 8:07:37यहां पर हमने क्या किया है? सिंपल
  12146. 8:07:38ग्रांटेड अथॉरिटी की लिस्ट बनाई है। तो
  12147. 8:07:40इसको हटा देते हैं। सिंपल ग्रांटेड
  12148. 8:07:41अथॉरिटी जरूरी नहीं है। इसको डायरेक्टली
  12149. 8:07:44लिस्ट ऑफ रोल बना देते हैं। ठीक है? और
  12150. 8:07:45इसको रन करके देखते हैं। ठीक है? देखते
  12151. 8:07:47हैं कि जो टोकन इशू होता है उसमें फिर इस
  12152. 8:07:49तरीके से नॉर्मल अरे के फॉर्म में रोल
  12153. 8:07:52स्टोर है या नहीं। ठीक है? ये देखिए ये
  12154. 8:07:55पूरा रन हो गया। अब मैं फिर से लॉग इन की
  12155. 8:07:57क्वरी चलाता हूं। और यहां पर यह पूरा का
  12156. 8:08:00पूरा जो टोकन है इसको हम कॉपी कर लेंगे।
  12157. 8:08:02टोकन कॉपी कर लिया। यहां पर आ जाएंगे।
  12158. 8:08:05इसको पेस्ट कर देंगे। तो देखिए यह ठीक हो
  12159. 8:08:07गया। ठीक है? अथॉरिटी की जो की थी वह हट
  12160. 8:08:10गई है। तो अभी पार्स करते वक्त थोड़ी
  12161. 8:08:11आसानी हो जाएगी। ठीक है? उम्मीद करता हूं
  12162. 8:08:13यह हेल्पफुल रहा। ठीक है? मैं आपको एक बार
  12163. 8:08:16और समझा देता हूं। एक्चुअली में हुआ क्या
  12164. 8:08:18है यहां पर। ठीक है? पूरा का पूरा चीज
  12165. 8:08:21समझा देता हूं। और हम जो है कंट्रोलर को
  12166. 8:08:23भी थोड़ा रिफैक्टर करेंगे यहां पर। ये जो
  12167. 8:08:25सारी चीजें हैं इसको हम सर्विस में मूव कर
  12168. 8:08:27सकते हैं। ठीक है? देखिए सबसे पहले तो अ
  12169. 8:08:30जो हमने फंक्शनैलिटी बनाई थी वो है
  12170. 8:08:32रजिस्टर की फंक्शनैलिटी। रजिस्टर की
  12171. 8:08:33फंक्शनैलिटी स्ट्रेट फॉरवर्ड है। हम जो
  12172. 8:08:35डेटा है वो एक डीटीओ के थ्रू ले रहे हैं।
  12173. 8:08:38ठीक है? और यहां पर जा रहे हैं। एक हिसाब
  12174. 8:08:40से मैं ना सब चीजें बंद कर देता हूं।
  12175. 8:08:41क्लोज ऑल टैब्स। ठीक है? और यहां पर सिर्फ
  12176. 8:08:43कंट्रोलर खोल लेता हूं ताकि थोड़ा नॉइज़ कम
  12177. 8:08:45रहे। ठीक है? तो देखिए यहां पर डेटा हम ले
  12178. 8:08:47रहे हैं रजिस्टर एंड पॉइंट में और फिर
  12179. 8:08:49सर्विस की मदद से हम उसको स्टोर कर रहे
  12180. 8:08:51हैं डेटाबेस में। अब यहां पर एक चीज़ आप
  12181. 8:08:53समझिए। हमारा पहले हमने पासवर्ड को एनकोड
  12182. 8:08:56नहीं कर रखा था। यानी कि पासवर्ड स्टोर हो
  12183. 8:08:58रहा था प्लेन टेक्स्ट में। तो हमने वो
  12184. 8:09:00एनकोडिंग लगाई सबसे पहले। ठीक है? ताकि जो
  12185. 8:09:02पासवर्ड स्टोर हो रहा है वो एनकोडेड फॉर्म
  12186. 8:09:04में स्टोर हो डेटाबेस में। वो हमने किया
  12187. 8:09:06सबसे पहले। अब यह हमने इसके लिए किया
  12188. 8:09:09क्योंकि हमारा जो पासवर्ड आएगा वो अ वो जो
  12189. 8:09:12पासवर्ड है वो रॉ होगा और हम एनकोडर का
  12190. 8:09:14इस्तेमाल कर रहे हैं। और ये इन जनरल बेटर
  12191. 8:09:16प्रैक्टिस है। ठीक है? रोल्स को हमने
  12192. 8:09:18इंट्रोड्यूस किया है यहां पर। रोल्स को
  12193. 8:09:20इंट्रोड्यूस किया है। तो बेसिकली एक
  12194. 8:09:21डिफ़ॉल्ट रोल लगाने की जरूरत पड़ गई। यहां
  12195. 8:09:23पर यहां पर अगर हमें यूजर जो है वो रोल की
  12196. 8:09:26इनेशन रिक्वेस्ट के साथ देता नहीं है। तो
  12197. 8:09:28हमने वो सेट किया और यहां पर रोल को सेट
  12198. 8:09:30कर लिया। ठीक है? और यह सारी चीजें हमने
  12199. 8:09:32मॉडिफाई की है मॉडल में भी। हमने रोल को
  12200. 8:09:35यहां पर ऐड किया है। और रोल हमने अभी
  12201. 8:09:37फिलहाल दो टाइप के रखे हैं। यूजर और
  12202. 8:09:38एडमिन। ठीक है? फ्यूचर में कुछ एडमिन
  12203. 8:09:41एपीआई आती है तो हम उसके लिए अ एडमिन रोल
  12204. 8:09:44का इस्तेमाल कर सकते हैं। ठीक है? तो ये
  12205. 8:09:45एक हिसाब से फ्यूचर प्रूफ बन गया
  12206. 8:09:47एप्लीकेशन। अब यहां पर लॉगिन करते वक्त।
  12207. 8:09:50ठीक है? लॉग इन करते वक्त मैंने इस्तेमाल
  12208. 8:09:51किया है जीW यूटिल्स का जो कि एक हिसाब से
  12209. 8:09:54एक यूटिलिटी क्लास है जिसमें सारे के सारे
  12210. 8:09:57मेथड्स दिए गए हैं। जिसके जरिए मैं टोकन
  12211. 8:09:59को जनरेट कर सकता हूं। वैलिडेट कर सकता
  12212. 8:10:01हूं, हेडर्स से रिट्रीव कर सकता हूं। JW
  12213. 8:10:03के साथ काम करने के लिए जो भी मेथड्स
  12214. 8:10:05चाहिए वो मुझे सारे के सारे मेथड्स यहां
  12215. 8:10:06पर मिलेंगे। ठीक है? फिलहाल हम एक ही मेथड
  12216. 8:10:08इस्तेमाल कर रहे हैं। जनरेट टोकन क्योंकि
  12217. 8:10:10टोकन इशू कर रहे हैं हम लोग। तो यहां पर
  12218. 8:10:12आओगे आप लॉग इन पर। लॉग इन पर हम क्या कर
  12219. 8:10:16रहे हैं? हम यहां पर अच्छा ये ऑथेंटिकेशन
  12220. 8:10:17के ऑब्जेक्ट की भी जरूरत नहीं है यहां पर।
  12221. 8:10:19ठीक है? तो लॉग इन पर हम क्या कर रहे हैं?
  12222. 8:10:21लॉग इन रिक्वेस्ट के फॉर्म में डेटा ले
  12223. 8:10:23रहे हैं। ठीक है? लॉग इन रिक्वेस्ट क्या
  12224. 8:10:24है? ईमेल और पासवर्ड। तो हमने हमारी
  12225. 8:10:26एप्लीकेशन में बनाया है ईमेल और पासवर्ड
  12226. 8:10:28बेस्ड ऑथेंटिकेशन। हमने अह हमारे
  12227. 8:10:32एप्लीकेशन में यूजरनेम और पासवर्ड बेस्ड
  12228. 8:10:34ऑथेंटिकेशन नहीं बनाया। ठीक है? ईमेल और
  12229. 8:10:36पासवर्ड बेस्ड बनाया। जो डिफ़ॉल्ट स्प्रिंग
  12230. 8:10:38सिक्योरिटी काम करता है वो काम करता है
  12231. 8:10:40यूजरनेम और पासवर्ड बेस्ड ऑथेंटिकेशन पर।
  12232. 8:10:43तो अगर आप कस्ट कस्टम मॉडल बना रहे हो।
  12233. 8:10:45अगर आप इनबिल्ट मॉडल का इस्तेमाल करते हो
  12234. 8:10:47तो आप यूजरनेम पासवर्ड ऑथेंटिकेशन का
  12235. 8:10:50इस्तेमाल करना होगा आपको। क्योंकि जो
  12236. 8:10:51स्प्रिंग सिक्योरिटी का मैकेनिज़्म है वो
  12237. 8:10:52यूजरनेम और पासवर्ड पर चलता है। लेकिन मैं
  12238. 8:10:54इस्तेमाल करना चाह रहा था ईमेल का। तो
  12239. 8:10:56इसके लिए मैंने ईमेल ले लिया लॉग इन
  12240. 8:10:57रिक्वेस्ट में और ईमेल मैंने इसलिए लिया
  12241. 8:10:59क्योंकि हमारे पास जो मॉडल है उसमें ईमेल
  12242. 8:11:01की इनेशन है। ठीक है? अब अगर आप यूजर को
  12243. 8:11:04ईमेल के अगेंस्ट ऑथेंटिकेट कर रहे हो तो
  12244. 8:11:06ईमेल आपके डेटाबेस में यूनिक होनी चाहिए।
  12245. 8:11:09करेक्ट? तो इसके लिए हमने ये कंस्ट्रेंट
  12246. 8:11:11लगा दी ईमेल पर कि अगर डुप्लीकेट ईमेल आए
  12247. 8:11:13तो उसको सीधा रिजेक्ट कर दो। तो ईमेल होनी
  12248. 8:11:16है यूनिक अब डेटाबेस में। ठीक है? ये हमने
  12249. 8:11:18कर लिया। देखिए यह सारी चीजें ना जरूरी
  12250. 8:11:21है। आप अगर यूजरनेम मान लीजिए मैं ईमेल
  12251. 8:11:23नहीं कस्टम यूजर मॉडल में भी यूजरनेम रख
  12252. 8:11:25रहा हूं। तो ऑथेंटिकेशन अगर आप यूजरनेम के
  12253. 8:11:28अगेंस्ट कर रहे हो। ठीक है? आप यूजर से
  12254. 8:11:30एक्सेप्ट कर रहे हो, एक्सपेक्ट कर रहे हो
  12255. 8:11:32कि वो यूजरनेम भेजे और आप यूजरनेम के
  12256. 8:11:35अगेंस्ट चेक कर रहे हो डेटाबेस में वो
  12257. 8:11:36यूजर है या नहीं। आपको मल्टीपल रिकॉर्ड्स
  12258. 8:11:38मिलेगा। अगर आपने उसको यूनिक मार्क नहीं
  12259. 8:11:40किया है तो। तो जो भी की आप इस्तेमाल कर
  12260. 8:11:42रहे हो लॉग इन के लिए, ऑथेंटिकेशन के लिए
  12261. 8:11:44उसे आपको यूनिक रखना है। वो चीजें काफी
  12262. 8:11:47आसान हो जाती है। ठीक है? तो मैंने ईमेल
  12263. 8:11:48रखा है यहां पर। ठीक है? जो भी आप की रखते
  12264. 8:11:50हो, मोबाइल नंबर रखते हैं काफी लोग। आजकल
  12265. 8:11:52तो मोबाइल बेस्ड ओटीपी भी चलता है। तो
  12266. 8:11:55मोबाइल नंबर रखते हैं। मैंने ईमेल और
  12267. 8:11:56पासवर्ड रखा है। मोबाइल और पासवर्ड भी रख
  12268. 8:11:58सकते हो आप। ठीक है? यहां पर ये रखा है और
  12269. 8:12:01इसको इसके लिए यूनिक किया है। उम्मीद करता
  12270. 8:12:03हूं ये यूनिक क्यों किया है? ये समझ में आ
  12271. 8:12:04गया। अब यहां पर आकर मैंने क्या किया है?
  12272. 8:12:06यूजर को सबसे पहले तो डेटबेस से रिट्रीव
  12273. 8:12:08किया है। ठीक है? यूजर मिलता है तो ठीक
  12274. 8:12:10है। नहीं मिलता है तो मैं रिटर्न कर रहा
  12275. 8:12:12हूं एरर। फिर मैंने पासवर्ड एनकोडर के
  12276. 8:12:14थ्रू जो लॉग इन रिक्वेस्ट में जो रॉ
  12277. 8:12:16पासवर्ड आई है उसको मैंने मैच किया है जो
  12278. 8:12:19इंक्रिप्टेड पासवर्ड है डेटाबेस में उससे
  12279. 8:12:21और फिर मैंने जनरेट किया है टोकन ठीक है
  12280. 8:12:23टोकन जनरेट करके मैंने टोकन को सिंपली
  12281. 8:12:25रिटर्न कर दिया है यूजर डिटेल्स के साथ
  12282. 8:12:28ठीक है और बस यही रहा है पूरा पूरा का
  12283. 8:12:30पूरा लॉजिक अब हम क्या करेंगे यहां पर जो
  12284. 8:12:33लॉग इन की जो रिक्वेस्ट है सॉरी लॉग इन का
  12285. 8:12:35जो मेथड है उसको थोड़ा रिफैक्टर करेंगे
  12286. 8:12:37यहां पे काफी सारी चीजें जो सर्विस में
  12287. 8:12:39होनी चाहिए जैसे कि ये पूरी की पूरी चीज
  12288. 8:12:41होनी चाहिए सर्विस दिस लेयर पर। ठीक है?
  12289. 8:12:44तो मैं क्या करूंगा? इसको एक हिसाब से
  12290. 8:12:45कॉपी कर लूंगा। ठीक है? और यहां पर कहूंगा
  12291. 8:12:48अ बुलियन। यहां से सर्विस से मैं लूंगा
  12292. 8:12:50बुलियन। बुलियन अ
  12293. 8:12:54यहां पर हम क्या कर रहे हैं? ईमेल को
  12294. 8:12:56फाइंड कर रहे हैं और पासवर्ड को अ मैच कर
  12295. 8:12:58रहे हैं। ठीक है? तो इज़ ऑथेंटिकेटेड करके
  12296. 8:13:03एक बुलियन ले लूंगा यहां पर। ठीक है? और
  12297. 8:13:05यहां पर मैं करूंगा यूजर सर्विस का
  12298. 8:13:06इस्तेमाल। सॉरी यूजर रिपॉज़िटरी नहीं यूजर
  12299. 8:13:08सर्विस डॉट और यहां पर करूंगा अ लॉगिन या
  12300. 8:13:12ऑथेंटिकेट या लॉग इन लिख देता हूं या लॉग
  12301. 8:13:15इन यहां पर क्रिएटेड है तो मैं कहूंगा
  12302. 8:13:17ऑथेंटिकेट ऐसे ठीक है और यहां पर मैं पास
  12303. 8:13:21कर दूंगा जो हमारी
  12304. 8:13:24सर्विस है ठीक है उसमें मैं पास कर दूंगा
  12305. 8:13:27लॉग इन रिक्वेस्ट तो रिक्वेस्ट पास कर
  12306. 8:13:29दूंगा इस तरीके से ठीक है अब यहां पर मैं
  12307. 8:13:32इसको क्रिएट कर दूंगा मेथड को यहां पर और
  12308. 8:13:35यहां पर यह कर दूंगा ठीक ठीक है? इस ये जो
  12309. 8:13:37कोड था हमारा जिसमें हम रिपॉज़िटरी का
  12310. 8:13:39इस्तेमाल कर रहे थे उसको यहां पर लिख
  12311. 8:13:40दिया। ठीक है? अब यहां पर अ देखिए अगर
  12312. 8:13:43यूजर नल है तो मैं यहां से रिटर्न करूंगा।
  12313. 8:13:46मैं यहां से क्या रिटर्न करूंगा? फॉल्स।
  12314. 8:13:48क्योंकि यूजर ही नहीं मिला है। ठीक है? और
  12315. 8:13:50अगर पासवर्ड एनकोडर और ये मैच नहीं हो रहे
  12316. 8:13:52तो मैं यहां से क्या रिटर्न करूंगा?
  12317. 8:13:54फॉल्स। ठीक है? दोनों जगह से फॉल्स रिटर्न
  12318. 8:13:56करूंगा। और यह हो गई पाथ। और यहां पर मैं
  12319. 8:14:00रिटर्न करूंगा रिटर्न फॉल्स।
  12320. 8:14:04रिटर्न ट्रू कर दूंगा यहां पर। ठीक है? एक
  12321. 8:14:07के हिसाब से। ठीक है? या तो फिर एक और
  12322. 8:14:09लेवल का इंप्रूवमेंट हम कर सकते हैं। मैं
  12323. 8:14:11यहां पर इसको थोड़ा सोच रहा था कि ये
  12324. 8:14:13बुलियन बेस्ड रखना चाहिए या कैसा रखना
  12325. 8:14:14चाहिए? तो यहां पर देखिए हम बुलियन रिटर्न
  12326. 8:14:16कर रहे हैं। यहां पर मैं सोच रहा हूं कि
  12327. 8:14:17बुलियन रिटर्न ना करें और अगर हम
  12328. 8:14:19एक्सेप्शन डायरेक्टली थ्रो करें तो वो
  12329. 8:14:21बेटर हो सकता है। ठीक है? तो मैं यहां पर
  12330. 8:14:22क्या करूंगा? यहां पर एक्सेप्शन बेटर
  12331. 8:14:24एक्सेप्शन डायरेक्टली थ्रो कर देता हूं।
  12332. 8:14:26एक रन टाइम एक्सेप्शन और यहां पर लिख देता
  12333. 8:14:28हूं इनवैलिड क्रेडेंशियल्स। ठीक है? ऐसे
  12334. 8:14:32क्रेडेंशियल्स और यहां पर अह
  12335. 8:14:36यहां पर भी मैं लिख दूंगा इनवैलिड
  12336. 8:14:37क्रेडेंशियल्स। तो यह रिटर्न फॉल्स की
  12337. 8:14:39बजाय मैं लिख दूंगा थ्रू अ न्यू रन टाइम
  12338. 8:14:43एक्सेप्शन इनवैलिड क्रेडेंशियल्स। ठीक है?
  12339. 8:14:44और इसको यहां पर ना हम यूजर बुलियन रिटर्न
  12340. 8:14:47नहीं करेंगे। यहां पर रिटर्न करते हैं
  12341. 8:14:48यूजर का ऑब्जेक्ट। ये बेटर रहेगा। ठीक है?
  12342. 8:14:51और यहां पर रिटर्न ट्रू के बजाय यूजर
  12343. 8:14:53रिटर्न कर देंगे। तो जो कंट्रोलर है उसको
  12344. 8:14:55यहां से यूजर की ऑब्जेक्ट रिट्रीव करके
  12345. 8:14:58मिल रही है डेटाबेस से। करेक्ट?
  12346. 8:15:01यूजर की जो ऑब्जेक्ट है वह रिट्रीव करके
  12347. 8:15:03मिल रही है डेटाबेस से ना कि एक बुलियन
  12348. 8:15:05वैल्यू। ठीक है? तो अगर हम यूजर रिटर्न कर
  12349. 8:15:07रहे हैं यहां पर तो चीजें काफी सिंपलीफाइड
  12350. 8:15:09हो जाती है। यहां पर है ना मुझे सिर्फ
  12351. 8:15:11लिखना है यूजर और फिर यूजर को लेना है इस
  12352. 8:15:14तरीके से। और ये जो लॉजिक है ये पूरा का
  12353. 8:15:16पूरा लॉजिक ये मूव हो चुका है डेट अ सॉरी
  12354. 8:15:19सर्विस लेयर में। तो इसको हटा देते हैं।
  12355. 8:15:22ठीक है? अब कुछ बचा नहीं यहां पर। ठीक है?
  12356. 8:15:24काफी सिंपल हो चुके हैं यहां के कोड।
  12357. 8:15:26देखिए आप काफी सिंपल हो चुके हैं यहां के
  12358. 8:15:28कोड। ठीक है? और यहां पर यह सिंपलीफाई हो
  12359. 8:15:32चुका है। और यहां पर अब पासवर्ड एनकोडर की
  12360. 8:15:35जरूरत नहीं है। ठीक है? एक हिसाब से
  12361. 8:15:37रिपोज़िटरी की भी जरूरत नहीं है। ठीक है?
  12362. 8:15:39तो अनवांटेड क्लासेस को हमने हटा दिया और
  12363. 8:15:41यहां से अनवांटेड इंपोर्ट जो है उसे भी हम
  12364. 8:15:44हटा देंगे।
  12365. 8:15:46ठीक है? तो देखिए आपको समझ में आ गया हमने
  12366. 8:15:48क्या इंप्रूवमेंट किया। देखिए हम हमने ना
  12367. 8:15:50रिपॉज़िटरी लेयर का भी इस्तेमाल कंट्रोलर
  12368. 8:15:53में किया था। एक हिसाब से कर सकते हो आप।
  12369. 8:15:55अगर आपका कोड सिंपलीफाइड है। लेकिन मैं
  12370. 8:15:57थोड़ा ऑर्गेनाइज़ रखना चाहता हूं डे वन से।
  12371. 8:15:59तो मैंने क्या किया? स्टार्टिंग में तो
  12372. 8:16:00रिपॉजिटरी लेयर यहीं पे लिखा ताकि आपको
  12373. 8:16:02लॉजिक एक जगह पे दिखाई दे कि कैसे फ्लो हो
  12374. 8:16:04रहा है क्योंकि हम कुछ नई चीज करने जा रहे
  12375. 8:16:06थे। ठीक है? नई चीज करने जा रहे थे। फिर
  12376. 8:16:09मैंने क्या किया है? अब जब चीजें चल रही
  12377. 8:16:12है प्रॉपर्ली तो मैंने उन चीजों को
  12378. 8:16:13रिफैक्टर करके सर्विस लेयर पर मूव किया
  12379. 8:16:15है। अब सर्विस लेयर पर मैंने ये मेथड
  12380. 8:16:17बनाया ऑथेंटिकेट करके जो कि डेटाबेस से
  12381. 8:16:20फैच करेगा यूजर की इनेशन। जैसे ही उसको
  12382. 8:16:23यूजर की इनेशन मिलती है। ठीक है? मिलती है
  12383. 8:16:26तो वह रिटर्न कर देगा। अगर नहीं मिलती है,
  12384. 8:16:28ठीक है? नहीं मिलती है यहां पर तो वो
  12385. 8:16:30रिटर्न करेगा एक एक्सेप्शन। ठीक है? और
  12386. 8:16:33पासवर्ड को भी मैच करेगा। अगर वो पासवर्ड
  12387. 8:16:36मैच होता है तो सही है। आगे चला जाएगा।
  12388. 8:16:38नहीं होता है तो यहीं पर एक्सेप्शन थ्रो
  12389. 8:16:40कर देगा। और अगर ये दोनों कंडीशंस को पास
  12390. 8:16:42कर जाता है वो तो यहां पर हम क्या कर रहे
  12391. 8:16:45हैं? यूजर को रिटर्न कर रहे हैं। इसका
  12392. 8:16:46मतलब अगर यहां से यूजर रिटर्न हो रहा है,
  12393. 8:16:48इसका मतलब यूजर इज़ नॉट नल और पासवर्ड भी
  12394. 8:16:51मैचिंग है जो डेटाबेस में है। अगर यहां से
  12395. 8:16:53यूजर रिटर्न हो रहा है, तो ठीक है? अगर इन
  12396. 8:16:55दोनों में से एक भी कंडीशन फेल्ड है तो
  12397. 8:16:57मेथड ये जो सर्विस का मेथड है ऑथेंटिकेट
  12398. 8:16:59वहीं पर ब्रेक हो जाएगा क्योंकि एक्सेप्शन
  12399. 8:17:01थ्रो कर देगा। ठीक है? फिर यूजर की डिटेल
  12400. 8:17:04यहां पर आ गई तो हमने उसका इस्तेमाल करके
  12401. 8:17:05एक टोकन जनरेट कर लिया है और जो टोकन है
  12402. 8:17:08उसको लॉग इन रिस्पांस में रिटर्न कर दिया।
  12403. 8:17:10बस इतनी सी बात है। अब इसको आप रन करोगे
  12404. 8:17:12तो ये वैसे ही रन होगा जैसे पहले हो रहा
  12405. 8:17:14था। यह रिफैक्टर्ड चीज़ है। देखिए कोड
  12406. 8:17:16रिफैक्टरिंग के बाद भी आपको अह टेस्टिंग
  12407. 8:17:19जो है वह करनी है। वह इंपॉर्टेंट है। तो
  12408. 8:17:21देखिए यह रन हो गई। अब यहां पर मैं फिर से
  12409. 8:17:24रन करके देखता हूं। यह देखिए आपको मिल गया
  12410. 8:17:27यहां पर यह टोकन। अब इसको आप डिबक कर सकते
  12411. 8:17:31सॉरी इसको डिकोड कर सकते हो। और यहां पर
  12412. 8:17:33देखिए सेम चीज आपको दिखाई देगी। ठीक है?
  12413. 8:17:36उम्मीद करता हूं ये हेल्पफुल रहा और आपको
  12414. 8:17:38समझ में आया कि हम कस्टम यूजर मॉडल के साथ
  12415. 8:17:41किस तरीके से ऑथेंटिकेशन कर सकते हैं। ठीक
  12416. 8:17:44है?
  12417. 8:17:50तो दोस्तों, मैंने एप्लीकेशन को रन करके
  12418. 8:17:53जो यह एंड पॉइंट है एक्टिविटीज को, इसको
  12419. 8:17:56टेस्ट करने की कोशिश की। ठीक है? तो मैंने
  12420. 8:17:57क्या किया? यहां पर सबसे पहले तो लॉगिन
  12421. 8:18:00करके मैंने ये जनरेट कर ली टोकन और फिर
  12422. 8:18:04मैं यहां से ट्रैक करने की कोशिश कर रहा
  12423. 8:18:06हूं एक्टिविटी को। लेकिन ये फेल हो रही
  12424. 8:18:08है। और यह फेल इसलिए हो रही है क्योंकि
  12425. 8:18:09स्प्रिंग सिक्योरिटी ये रिक्वेस्ट को
  12426. 8:18:11रिजेक्ट कर रहा है। क्यों रिजेक्ट कर रहा
  12427. 8:18:12है? क्योंकि हमने जो टोकन वैलिडेशन की
  12428. 8:18:15लॉजिक है यहां पर उसे हमने लिखा ही नहीं
  12429. 8:18:17है। ठीक है? तो ये जेडब्ल्यूडी ऑथेंटिकेशन
  12430. 8:18:20फिल्टर जो है ये हमने बनाया ही नहीं है एक
  12431. 8:18:22हिसाब से। तो इसे ऐड करना जरूरी है। तो
  12432. 8:18:24इसके लिए देखिए मेरे पास एक दूसरा
  12433. 8:18:26प्रोजेक्ट है स्प्रिंग सिक्योरिटी का
  12434. 8:18:28जिसमें मैंने ऑलरेडी ये फ़िल्टर बनाया हुआ
  12435. 8:18:30है। ठीक है? तो ये फ़िल्टर आसानी से बनाया
  12436. 8:18:33हुआ है। जिसमें मैंने इस्तेमाल किया है
  12437. 8:18:36वंस पर रिक्वेस्ट फ़िल्टर। तो मैं क्या
  12438. 8:18:38करूंगा? इसको कॉपी कर लूंगा एक हिसाब से।
  12439. 8:18:40ठीक है? यहां पर आ जाऊंगा और फिर इसमें
  12440. 8:18:42मॉडिफिकेशंस करेंगे और समझेंगे चीजों को।
  12441. 8:18:45ठीक है? तो यहां पर देखिए सबसे पहले तो
  12442. 8:18:50मैं इस्तेमाल करना चाहूंगा यहां पर आएंगे
  12443. 8:18:53तो आप अच्छा और टोकन फ़िल्टर लिख दिया
  12444. 8:18:55मैंने। तो ये जो क्लास का नाम है ये है
  12445. 8:18:58JWT ऑथेंटिकेशन। JWT ऑथेंटिकेशन
  12446. 8:19:02फ़िल्टर ऐसे। ठीक है? यहां पर जे डब्ल्यू
  12447. 8:19:05टी यूटिल्स लिखना है। जे डब्ल्यू टी
  12448. 8:19:08यूटिल्स ऐसे और इसको तो हम हटा ही देंगे।
  12449. 8:19:13ठीक है? और यहां पर मैं क्या कर रहा हूं?
  12450. 8:19:16देखिए मैं यहां पर अ यूजरनेम
  12451. 8:19:21लोड कर रहा हूं। ठीक है? गेट यूजरनेम
  12452. 8:19:23फ्रॉम द टोकन को लोड कर रहा हूं। ठीक है?
  12453. 8:19:25तो यहां पर यूजरनेम नहीं चाहिए। हमें
  12454. 8:19:28चाहिए यूजर आईडी। क्योंकि हमारी जो टोकन
  12455. 8:19:30है उसमें ऐडेड है यूजर आईडी। तो मैं यहां
  12456. 8:19:32पर क्या करूंगा? इसको अ मैं हटा दूंगा।
  12457. 8:19:36ठीक है? क्योंकि हमारे पास यूजर आईडी है।
  12458. 8:19:39ठीक है? तो यहां पर यूजर आईडी की ऑलरेडी
  12459. 8:19:41मेथड हमने डिफाइन कर रखी है क्या? अ जी
  12460. 8:19:44नहीं कर रखी है। ठीक है? तो देखिए यहां पर
  12461. 8:19:46यूजर आईडी ऐड कर रहे हैं। तो मैं यहां पर
  12462. 8:19:48आ जाता हूं। यूजर नेम की बजाय मैं यहां पर
  12463. 8:19:49लिख देता हूं यूजर आईडी ऐसे।
  12464. 8:19:53ठीक है? इतना मैंने कर दिया। और यहां से अ
  12465. 8:19:56हमें मिल जाती है जी डब्ल्यू टी पार्सर
  12466. 8:19:58वेरीफाई विद और बिल्ड कर देते हैं यूजर
  12467. 8:20:00आईडी को और यहां से स्ट्रिंग रिटर्न कर
  12468. 8:20:02देता है। ठीक है? इतना हो चुका है। ये
  12469. 8:20:05सब्जेक्ट दे रहा है हमें। ठीक है? तो
  12470. 8:20:07सब्जेक्ट में हमें क्या मिलेगा? यूजर
  12471. 8:20:09आईडी। तो मैं यहां पर कहूंगा यूजर आईडी
  12472. 8:20:11फ्रॉम टोकन। ठीक है? तो यहां पर यूजर नेम
  12473. 8:20:12नहीं है हमारे पास। अब हमारे पास है यूजर
  12474. 8:20:15आईडी। ठीक है? यूजर आईडी। तो ये मैंने
  12475. 8:20:18यूजर आईडी ले लिया क्लेम्स। तो चलिए हमारे
  12476. 8:20:20पास हम निकाल रहे हैं क्लेम्स। और फिर
  12477. 8:20:22क्लेम्स को मैं प्रिंट भी कर रहा हूं। और
  12478. 8:20:24फिर लिस्ट ऑफ ग्रांटेड अथॉरिटीज़ को यहां
  12479. 8:20:26पर मैं अथॉरिटीज़ भी बना रहा हूं। और फिर
  12480. 8:20:29यहां पर आ जाते हैं। तो देखिए ये है
  12481. 8:20:31ऑथेंटिकेशन का पार्ट। ठीक है? ये है
  12482. 8:20:33ऑथेंटिकेशन का पार्ट। अब यहां पर हम इसको
  12483. 8:20:36ऑथेंटिकेट कर रहे हैं। और ऑथेंटिकेशन के
  12484. 8:20:38लिए मुझे पास करना है यूजर आईडी। ठीक है?
  12485. 8:20:41और सेट ऑथेंटिकेशन डॉट सेट डिटेल्स। ठीक
  12486. 8:20:46है? तो यहां पर रिक्वेस्ट की मैं एडिशनल
  12487. 8:20:48डिटेल्स यहां पर ऐड कर रहा हूं। और
  12488. 8:20:49सिक्योरिटी कंटेक्स्ट में इसको ऐड कर दे
  12489. 8:20:50रहा हूं। ठीक है? इतनी बात हो गई। तो ये
  12490. 8:20:53सिमिलर ही था पूरा का पूरा एक हिसाब से ये
  12491. 8:20:55जो फिल्टर है ये सिमिलर ही था। ठीक है?
  12492. 8:20:57इसमें इतना कुछ मैंने ज्यादा चेंजेस नहीं
  12493. 8:21:00किए। ठीक? सिर्फ मैंने यूजर नेम का जो
  12494. 8:21:02लॉजिक है उसको हटाकर यूजर आईडी पर कर दिया
  12495. 8:21:05है। ठीक है? और इसको इस फ़िल्टर को हमें ऐड
  12496. 8:21:07भी करना होगा स्प्रिंग सिक्योरिटी में।
  12497. 8:21:10ठीक है? या फ़िल्टर चेन में। ठीक है? तो
  12498. 8:21:12यहां पर आएंगे हम। और यहां पर मैं कहूंगा
  12499. 8:21:14HTTP
  12500. 8:21:15डॉट ऐड फ़िल्टर बिफोर। और फिर मैं कहूंगा
  12501. 8:21:19जे डब्ल्यू टी। अच्छा रुक जाइए तो इसको ऐड
  12502. 8:21:22करेंगे हम यूजरनेम पासवर्ड ऑथेंटिकेशन
  12503. 8:21:25फिल्टर डॉट क्लास के आगे और इस फिल्टर की
  12504. 8:21:29हमें एक क्लास भी बनानी होगी एक्सपोज करनी
  12505. 8:21:31होगी ठीक है तो मैं क्या करूंगा
  12506. 8:21:35यहां पर ऊपर आ जाता हूं ठीक है और यहां पर
  12507. 8:21:39लिख दूंगा प्राइवेट जे फाइनल जे डब्ल्यू
  12508. 8:21:44टी ऑथेंटिकेशन फ़िल्टर अच्छा ये इसने
  12509. 8:21:48एसक्यू ले लिया पता नहीं तो यहां पर इसको
  12510. 8:21:51ऐसे कर देता हूं और यहां पर अगर मैं ऐसे
  12511. 8:21:53करता हूं तो अच्छा ये ऐसे इंपोर्ट हो रहा
  12512. 8:21:58है मे बी कुछ गड़बड़ है ठीक है लेकिन अभी
  12513. 8:22:00इसे अभी के लिए इसे ऐसे ही रहने देता हूं
  12514. 8:22:02डब्ल्यू टी ऑथेंटिकेशन फ़्टर ठीक है और
  12515. 8:22:06यहां पर मैं लिख देता हूं ये फाइनल है
  12516. 8:22:07करेक्ट और यहां पर मैं लिख सकता हूं
  12517. 8:22:09रिक्वायर्ड आर्गुमेंट्स ठीक है रिक्वायर्ड
  12518. 8:22:12आस्क् कंस्ट्रक्टर ठीक है ऐसे तो ये जनरेट
  12519. 8:22:15हो चुका है और यहां पर जे डब्ल्यू टी
  12520. 8:22:17ऑथेंटिकेशन फ़्टर आ चुका है ठीक है तो ये
  12521. 8:22:19फ़्टर ऐड हो चुका है। फ़िल्टर का काम हो
  12522. 8:22:21चुका है। अब हमें क्या करना है पता है?
  12523. 8:22:23हमें अ कस्टम यूजर डिटेल्स सर्विस बनानी
  12524. 8:22:27है। तो देखिए ये जो स्प्रिंग सिक्योरिटी
  12525. 8:22:29का जो डायग्राम है जो मैंने बनाया था उस
  12526. 8:22:30पर फिर से आ जाते हैं। ठीक है? तो यहां पर
  12527. 8:22:33कस्टम यूजर डिटेल्स हमने बनाई है। ठीक है?
  12528. 8:22:36कस्टम यूजर डिटेल्स। तो मुझे स्प्रिंग
  12529. 8:22:39सिक्योरिटी को ये बताना होगा कि ये जो
  12530. 8:22:41यूजर डिटेल्स है इसको रिट्रीव कैसे करना
  12531. 8:22:42है। क्योंकि ये यूजरनेम बेस नहीं है। ये
  12532. 8:22:44एक तो कस्टम यूजर मॉडल पे बना हुआ है। ठीक
  12533. 8:22:46है? कस्टम यूजर मॉडल पे बना हुआ है।
  12534. 8:22:48करेक्ट?
  12535. 8:22:50और यह स्टोर हो रहा है डेटाबेस में और
  12536. 8:22:52इसकी प्राइमरी की भी अलग है। लाइक इसकी की
  12537. 8:22:54है ईमेल मेरे लिए। करेक्ट? मैं ईमेल से
  12538. 8:22:57यूजर फेस फैच करना चाहता हूं। तो मुझे
  12539. 8:22:59स्प्रिंग सिक्योरिटी को बताना होगा कि किस
  12540. 8:23:01तरीके से इसका इस्तेमाल किया जाए। तो इसके
  12541. 8:23:04लिए मुझे बनानी होगी एक कस्टम यूजर
  12542. 8:23:06डिटेल्स सर्विस की क्लास। तो यहां पर मैं
  12543. 8:23:08आ जाता हूं सिक्योरिटी में। और यहां पर
  12544. 8:23:10देखिए कस्टम यूजर डिटेल्स सर्विस की क्लास
  12545. 8:23:12ऑलरेडी बनी हुई है। तो इस पर मैं
  12546. 8:23:13इंप्लीमेंट करूंगा यूजर डिटेल सर्विस। ठीक
  12547. 8:23:16है? ये इंटरफ़ेस है ऑलरेडी। तो ये यूजर
  12548. 8:23:19डिटेल सर्विस को हम इस्तेमाल कर रहे थे अब
  12549. 8:23:21तक। लेकिन अब मैं इसकी एक कस्टम
  12550. 8:23:23इंप्लीमेंटेशन क्रिएट कर रहा हूं। ठीक है?
  12551. 8:23:25इस तरीके से और इसको मैं मार्क करूंगा एज
  12552. 8:23:28ए कंपोनेंट बी अ सॉरी कंपोनेंट या तो फिर
  12553. 8:23:31इसको एज अ सर्विस मार्क कर सकते हो आपको
  12554. 8:23:33जैसा चाहिए। ठीक है? और यहां पर मुझे
  12555. 8:23:36देखिए मुझे यूजर कैसे फच करना है वो बताना
  12556. 8:23:39है स्प्रिंग सिक्योरिटी को। तो यहां पर
  12557. 8:23:40मुझे लगेगा ऑटो वायर्ड। ठीक है? और यहां
  12558. 8:23:43पर मैं लिखूंगा प्राइवेट फाइनल यूजर
  12559. 8:23:47रिपॉजिटरी
  12560. 8:23:51और यहां पर यूजर रिपॉजिटरी को इस्तेमाल
  12561. 8:23:53करूंगा। ठीक है? इसको हटा देते हैं इस
  12562. 8:23:55तरीके से। और यहां पर लिख देंगे
  12563. 8:23:59रिक्वायर्ड आस्क कंस्ट्रक्टर। ठीक है? तो
  12564. 8:24:00ये कंस्ट्रक्टर इंजेक्शन हो गया। अब यहां
  12565. 8:24:02पर आ जाते हैं और यहां पर मैं लिखूंगा अ
  12566. 8:24:05यहां पर लोड बाय यूजरनेम है। ठीक है? तो
  12567. 8:24:07देखिए लोड बाय यूजरनेम जो मेथड है ना
  12568. 8:24:10देखिए आप यूजर डिटेल्स सर्विस में आते हो
  12569. 8:24:11ना यहां पर यूजर डिटेल्स सर्विस एक हिसाब
  12570. 8:24:14से कोर इंटरफेस है जो लोड करता है यूजर
  12571. 8:24:16स्पेसिफिक डेटा। अब आप इनबिल्ट यूजर का
  12572. 8:24:20इस्तेमाल करते हो जो स्प्रिंग सिक्योरिटी
  12573. 8:24:22का कोर यूजर है इनबिल्ट तो उसे पता है कि
  12574. 8:24:24यूजर को कैसे रिट्रीव करना है। लेकिन अगर
  12575. 8:24:26आप एक कस्टम यूजर मॉडल बनाते हो तो आपको
  12576. 8:24:29इंप्लीमेंटेशन देनी है कि कैसे यूजर को
  12577. 8:24:32लोड करना है और वो आपको करना है इसको
  12578. 8:24:34इंप्लीमेंट करके एक सर्विस बनाकर। ठीक है?
  12579. 8:24:36और यहां पर ये लिख देना है लोड यूजर बाय
  12580. 8:24:39यूजरनेम। ये ऑटोमेटिकली आ जाएगा क्योंकि
  12581. 8:24:40ये ओवरडन मेथड है। ठीक है? और यहां पर मैं
  12582. 8:24:42क्या करने वाला हूं? यहां पर यूजर का एक
  12583. 8:24:44ऑब्जेक्ट बनाने वाला हूं। ठीक है? यूजर
  12584. 8:24:46मॉडल का एक ऑब्जेक्ट। ठीक है? और यहां पर
  12585. 8:24:49कहूंगा अ यूजर रिपॉज़िटरी डॉट फाइंड बाय
  12586. 8:24:53ईमेल इस तरीके से। और यहां पर यूजरनेम को
  12587. 8:24:56पास कर दूंगा। एक्चुअली यूजरनेम नहीं है।
  12588. 8:24:58ये ईमेल ही है। ठीक है? ये ऐसे पास कर
  12589. 8:25:00दूंगा मैं। अच्छा यहां पर क्या हो रहा है?
  12590. 8:25:02अब ये आ रहा है। अच्छा यहां पर दिक्कत हो
  12591. 8:25:05गई। तो ये वाला जो यूजर है ये स्ट्रिंग
  12592. 8:25:06सिक्योरिटी का यूजर नहीं है। ये हमारा
  12593. 8:25:08यूजर है। ठीक है? स्प्रिंग सिक्योरिटी
  12594. 8:25:11वाले इंपोर्ट को हटा देते हैं। हम हमारा
  12595. 8:25:12यूजर इस्तेमाल कर रहे हैं यहां पर। ठीक
  12596. 8:25:14है? स्प्रिंग सिक्योरिटी वाला यूजर नहीं
  12597. 8:25:16इंपोर्ट कर लेना। यह हमारा यूजर है। ठीक
  12598. 8:25:18है? ये मैंने ले लिया। अब मैं यहां पर
  12599. 8:25:20लिखूंगा इफ यूजर इज़ इक्वल टू नल। ठीक है?
  12600. 8:25:24तो यहां पर आएगा अ थ्रो
  12601. 8:25:28अ न्यू रन टाइम एक्सेप्शन
  12602. 8:25:32या रन टाइम एक्सेप्शन या कुछ भी कर कुछ भी
  12603. 8:25:35थ्रो कर सकते हो। आप यूजर नॉट फाउंड और
  12604. 8:25:37यहां पर लिख सकते हो प्लस यूजर नेम। ठीक
  12605. 8:25:40है? यह यूजरनेम एक्चुअली थोड़ा कंफ्यूजन
  12606. 8:25:42दे रहा है। तो यहां पर इसको ईमेल कर दूंगा
  12607. 8:25:44मैं ईमेल और यह सारी जगह पर ईमेल रख
  12608. 8:25:48दूंगा। ठीक है? तो ईमेल का हम एक्सेप्शन
  12609. 8:25:50थ्रो कर रहे हैं कि अगर यह यूजर मिलता
  12610. 8:25:51नहीं है तो और अगर मिलता है तो मैं क्या
  12611. 8:25:54करूंगा? मैं यहां पर आ जाऊंगा और यहां पर
  12612. 8:25:57यूजर डिटेल्स की यूजर का इनबिल्ट स्प्रिंग
  12613. 8:26:01सिक्योरिटी का जो यूजर है उसको बिल्ड
  12614. 8:26:02करूंगा। तो देखिए इनबिल्ट स्प्रिंग
  12615. 8:26:04सिक्योरिटी का यूजर को लूंगा। उसमें
  12616. 8:26:06बिल्डर है वो बिल्डर का इस्तेमाल करूंगा
  12617. 8:26:09और यहां पर बिल्ड करूंगा और बिल्ड करने से
  12618. 8:26:12पहले मैं सारी जो वैल्यू्यूज है उसे सेट
  12619. 8:26:14कर दूंगा तो मैं कहूंगा यूजर यूजर नेम
  12620. 8:26:16यूजरनेम क्या है यूजर डॉट गेट ईमेल ठीक है
  12621. 8:26:20फिर मैं कहूंगा डॉट पासवर्ड पासवर्ड क्या
  12622. 8:26:23है यूजर डॉट गेट पासवर्ड ठीक है गेट
  12623. 8:26:27पासवर्ड और क्या है दूसरी चीज़ डॉट रोल्स
  12624. 8:26:30तो रोल्स क्या है आपको जो भी रोल्स है
  12625. 8:26:33आपके पास यूजर डॉट गेट
  12626. 8:26:35रोल उसको सेट कर देना है आपको और यहां पर
  12627. 8:26:38लिस्ट में सेट कर देना है लिस्ट क्योंकि
  12628. 8:26:40लिस्ट ले रहा है लिस्ट ऑफ इस तरीके से
  12629. 8:26:43आपको सेट कर देना है ठीक है इतना आपने कर
  12630. 8:26:46दिया अब ये काम बन जाएगा ठीक है अच्छा
  12631. 8:26:50यहां पर क्या हो गया रैप यूजिंग स्ट्रिंग
  12632. 8:26:52वैल्यू ऑफ
  12633. 8:26:55अच्छा यह रोल्स ले रहा है 1 मिनट दिक्कत
  12634. 8:27:00क्या हुई है यहां पर इसको होवर करें अगर
  12635. 8:27:03तो यह ले रहा है स्ट्रिंग ले रहा है रोल्स
  12636. 8:27:06की। ठीक है? तो ये पहले क्यों नहीं काम
  12637. 8:27:08किया इसने? ये अगर ऐसे लगा लेते हैं हम तो
  12638. 8:27:12ये तो चलना चाहिए था। ये क्यों नहीं चल
  12639. 8:27:14रहा है? अच्छा गेट रोल डॉट नेम डॉट नेम
  12640. 8:27:20लेना है क्योंकि इनम है। ठीक है? गेट रोल
  12641. 8:27:22हमें रिटर्न कर रहा है इनम। तो गलती हो
  12642. 8:27:24गई। गेट रोल रिटर्न कर रहा है इनम। और
  12643. 8:27:26यहां पर ये एक्सपेक्ट कर रहा है स्ट्रिंग।
  12644. 8:27:28तो यहां पर मैंने नेम डाल दिया। ठीक है?
  12645. 8:27:29तो इतना हो गया। तो हम क्या कर रहे हैं?
  12646. 8:27:31देखिए हमारा जो यूजर है उसको लोड करके
  12647. 8:27:33स्प्रिंग सिक्योरिटी का जो यूजर है उसमें
  12648. 8:27:36हम रिटर्न कर रहे हैं। बस इतना करना है
  12649. 8:27:38हमको तो ये एक हिसाब से जो ब्रिज है
  12650. 8:27:40स्प्रिंग सिक्योरिटी का और हमारे बीच में
  12651. 8:27:42वो फुलफिल हो जाएगा और इसको एप्लीकेशन को
  12652. 8:27:44मैं रन कर दूंगा यहां पर। ठीक है? रन करके
  12653. 8:27:46देखते हैं होता क्या है। ठीक है? तो ये रन
  12654. 8:27:50हो रहा है। ठीक है? कुछ समय के लिए रुक
  12655. 8:27:51जाएंगे हम। यहां पर आ जाते हैं। ठीक है?
  12656. 8:27:54ये एंड पॉइंट तो अभी चल नहीं रही है। ठीक
  12657. 8:27:57है?
  12658. 8:27:59पहले चल नहीं रही 403 दे रहा था। तो ये
  12659. 8:28:01थोड़ा रुक जाते हैं हम।
  12660. 8:28:07अच्छा ये एरर हो गया यहां पर। एरर क्या हो
  12661. 8:28:11गया? तो ज़ीरो पैरामीटर ऑफ कंस्ट्रक्टर।
  12662. 8:28:16अच्छा ये कहां पे एरर आ रही है?
  12663. 8:28:20ठीक है तो ये एरर आई है
  12664. 8:28:24से
  12665. 8:28:28जेडब्ल्यूटी ऑथेंटिकेशन फ़िल्टर तो इसको
  12666. 8:28:31हमने कंपोनेंट तो मार्क किया हुआ है ठीक
  12667. 8:28:34है अच्छा मुझे प्रॉब्लम समझ में आ गई तो
  12668. 8:28:36यहां पर हमने ये दूसरे प्रोजेक्ट से कॉपी
  12669. 8:28:38पेस्ट किया था ये वाला तो यहां पर पैकेज
  12670. 8:28:40नेम जो है वो दूसरे प्रोजेक्ट का रह गया
  12671. 8:28:42था तो इसको सेट पैकेज नेम कर देता हूं और
  12672. 8:28:44यहां पर देखिए फिर ये हट जाता है ठीक है
  12673. 8:28:47तो यहां पर आप आपको याद रहेगा कि यहां पर
  12674. 8:28:49जब ये मैं इसे इंपोर्ट कर रहा था तो यह
  12675. 8:28:51पूरा अ लिखेला आ गया था। तो ये एक्चुअली
  12676. 8:28:54इसीलिए आ रहा था। ठीक है? तो आप जब भी
  12677. 8:28:55कॉपी पेस्ट करते हो तो ये पैकेज नेम जो
  12678. 8:28:57पहली क्लास होती है ठीक है? जो पहली लाइन
  12679. 8:29:00होती है उसे आप एक बार देख लीजिएगा। ठीक
  12680. 8:29:02है? अब यहां पर इसको हटा देता हूं रिमूव
  12681. 8:29:04ऑन यूज़्ड इंपोर्ट। ठीक है? अब ये चल जाना
  12682. 8:29:06चाहिए। यहां पर आता हूं मैं और इसे रन
  12683. 8:29:08करके देखता हूं। अच्छा
  12684. 8:29:11तो ये सर्वर ही स्टार्ट नहीं हुआ है। ठीक
  12685. 8:29:14है? ठीक है? तो देखिए अब ये जो एंड पॉइंट
  12686. 8:29:16है ये चल रही है प्रॉपर्ली। ठीक है? यहां
  12687. 8:29:18पर देखिए ये वैलिडेशन चल रहा है जो टोकन
  12688. 8:29:21हमने भेजा है उसका। अब दूसरी अगर आप एंड
  12689. 8:29:24पॉइंट पे अ भेजते हो रिक्वेस्ट जैसे जनरेट
  12690. 8:29:27रेकमेंडेशन। ठीक है? तो ये वाली भी
  12691. 8:29:29रेकमेंड ये वाली भी पहले जैसी है। लेकिन
  12692. 8:29:31इसमें मुझे एक हिसाब से यहां पर ऑथराइजेशन
  12693. 8:29:36हेडर भेजना पड़ेगा। तो यहां पर अगर मैं आ
  12694. 8:29:38जाता हूं तो यहां पर ऑथोराइजेशन हेडर। अगर
  12695. 8:29:40मैं ऐसे ही कॉल करता हूं इसे बिना
  12696. 8:29:42ऑथराइजेशन हेडर के तो मुझे 403 आ जाएगा।
  12697. 8:29:45देखिए अलाउड नहीं है। ऑथराइजेशन हेडर के
  12698. 8:29:47साथ मैं अगर टोकन बेचता हूं यहां पर बेर
  12699. 8:29:50टोकन तो अच्छा फिर भी 403 आ रहा है। क्यों
  12700. 8:29:53आ रहा है ये? 403 फोरपिडन आइडली आना नहीं
  12701. 8:29:56चाहिए। ठीक है? ये आ रहा है 403 फोरपिडन
  12702. 8:30:00और यहां पर दिया जा रहा है। अच्छा यूजर
  12703. 8:30:02आईडी या कुछ गलत होगा यहां पर। इसीलिए यह
  12704. 8:30:04एरर आई है। एक्चुअली एरर आई है। तो, यहां
  12705. 8:30:06पर जो यूजर आईडी के अगेंस्ट मैं एक्टिविटी
  12706. 8:30:10रिकॉर्ड कर रहा हूं, वह सही नहीं है। यूजर
  12707. 8:30:12आईडी और एक्टिविटी आईडी सही होनी चाहिए।
  12708. 8:30:14तो, देखिए, यह यूजर आईडी है मेरी। ठीक है?
  12709. 8:30:17यह रिक्वेस्ट चली थी। तो, यह है मेरी यूजर
  12710. 8:30:20आईडी। और एक्टिविटी आईडी कौन सी है?
  12711. 8:30:22एक्टिविटी आईडी है यह वाली। तो, इसको भी
  12712. 8:30:25कॉपी करना होगा। और यहां पर आना होगा। और
  12713. 8:30:27यह एक्टिविटी के अगेंस्ट मैं रेकमेंडेशन
  12714. 8:30:29ऐड कर रहा हूं। इसको सेंड कर देता हूं। तो
  12715. 8:30:32देखिए यह जनरेट अब होना तो चाहिए। देखिए
  12716. 8:30:34जनरेट हो गया। ठीक है? उम्मीद करता हूं यह
  12717. 8:30:37हेल्पफुल रहा। आपको समझ में आया कि हमने
  12718. 8:30:40ये जो फ़िल्टर है ये एक्चुअली में किस लिए
  12719. 8:30:43क्रिएट किया। जो कस्टम यूजर डिटेल्स की जो
  12720. 8:30:45क्लास है वो हमने क्यों क्रिएट की? सिंपल
  12721. 8:30:48सा प्रोसेस था बट समझना काफी जरूरी है।
  12722. 8:30:50उम्मीद करता हूं ये हेल्पफुल रहा।
  12723. 8:30:58तो चलिए दोस्तों बात करते हैं वैलिडेशंस
  12724. 8:31:00के बारे में। ठीक है? तो देखिए अब हमारे
  12725. 8:31:02पास एपीआई है। यह एंड पॉइंट है। बहुत सारी
  12726. 8:31:06एपीआई होगी। अगर आप प्रोडक्शन लेवल
  12727. 8:31:08एप्लीकेशन पर काम करते हो। बहुत सारे एंड
  12728. 8:31:09पॉइंट्स हो गए। बहुत सारे कंट्रोलर्स हो
  12729. 8:31:11गए। ठीक है? अब इन एंड पॉइंट्स पर डेटा
  12730. 8:31:15आएगा और ये डेटा यूज़र्स या जो भी
  12731. 8:31:18क्लाइंट्स जहां पर भी आपकी जो एप्लीकेशन
  12732. 8:31:19है वो इस्तेमाल हो रही है वो डेटा सेंड
  12733. 8:31:21करेगी। ठीक है? तो देखिए डाटा अब बैक एंड
  12734. 8:31:24में आ रहा है एक हिसाब से एपीआई के थ्रू।
  12735. 8:31:26तो वैलिडेशंस डालना यह थोड़ा मैंडेटरी हो
  12736. 8:31:29जाता है। ठीक है? वैलिडेशंस का मतलब यह है
  12737. 8:31:32कि डाटा जो आ रहा है आपके एप्लीकेशन में
  12738. 8:31:34जिन जिन्हें वैलिडेशन का मतलब नहीं पता
  12739. 8:31:36मैं उन्हें बता दूं डेटा जो आ रहा है
  12740. 8:31:37एप्लीकेशन में वो सही डेटा है या नहीं।
  12741. 8:31:41ठीक है? यानी प्रोसेस करने लायक डेटा है
  12742. 8:31:43या नहीं। जैसे कि मैं आपको एक एग्जांपल दे
  12743. 8:31:44देता हूं। ठीक है? यहां पर हम आ जाते हैं।
  12744. 8:31:46ठीक है? तो मान लीजिए आपके पास एक एंड
  12745. 8:31:48पॉइंट है। ठीक है? तो ये एंड पॉइंट है
  12746. 8:31:51रजिस्टर की एंड पॉइंट। ठीक है? अब इस एंड
  12747. 8:31:53पॉइंट में जरूरी है ईमेल और पासवर्ड।
  12748. 8:31:59ठीक है? तो अब आपकी ये रिक्वायरमेंट होगी
  12749. 8:32:03जो ईमेल जो है वो पहली बात तो प्रेजेंट
  12750. 8:32:06होना चाहिए। ठीक है? ये पहली रिक्वायरमेंट
  12751. 8:32:08हो गई। दूसरी रिक्वायरमेंट है देखिए ईमेल
  12752. 8:32:10और पासवर्ड होगा तभी तो आप यूजर को
  12753. 8:32:12रजिस्टर करोगे या लॉग इन करोगे। लॉग इन
  12754. 8:32:14एंड पॉइंट में भी यही रिक्वायरमेंट होगी।
  12755. 8:32:15करेक्ट? तो रजिस्टर की बात कर लेते हैं।
  12756. 8:32:17रजिस्टर में ईमेल सबसे पहले तो प्रेजेंट
  12757. 8:32:19होना चाहिए। सबसे पहली बात। दूसरी बात हो
  12758. 8:32:22गई ईमेल का फॉर्मेट सही होना चाहिए। ईमेल
  12759. 8:32:25फॉर्मेट ठीक है या वैलिड ईमेल लिख देता
  12760. 8:32:27हूं। वैलिड ईमेल होनी चाहिए। वैलिड ईमेल
  12761. 8:32:29का मतलब ये है कि @ [email protected]@
  12762. 8:32:34yahoo.com जो भी है। ठीक है? प्रॉपर
  12763. 8:32:36फॉर्मेट जो है ईमेल का उस फॉर्मेट में
  12764. 8:32:39होना चाहिए। ठीक है? अ दूसरी चीज़ है आप
  12765. 8:32:41कुछ साइज़ प्रोबब्ली डालना चाहो लेकिन मैं
  12766. 8:32:45साइज़ यहां पर डालना नहीं चाहता। ठीक है?
  12767. 8:32:46क्योंकि ईमेल में बस ये दो चीज़ इनफ है।
  12768. 8:32:49ठीक है? ठीक है? तो पहले तो प्रेजेंट होनी
  12769. 8:32:50चाहिए ईमेल और वैलिड ईमेल होनी चाहिए। अब
  12770. 8:32:53पासवर्ड की बात करते हैं। ठीक है? पासवर्ड
  12771. 8:32:55सबसे पहले तो प्रेजेंट होना चाहिए। ठीक
  12772. 8:32:57है? पासवर्ड ब्लैंक नहीं हो सकता अगर आपको
  12773. 8:32:59यूजर क्रिएट करना है तो। और दूसरी चीज़
  12774. 8:33:02पासवर्ड की एक मिनिमम लेंथ होनी चाहिए। तो
  12775. 8:33:04फॉर एग्जांपल मिनिमम सिक्स सिक्स की लेंथ
  12776. 8:33:07होनी चाहिए सिक्स कैरेक्टर की। ठीक है? इस
  12777. 8:33:09हिसाब से आप वैलिडेशन सेट कर सकते हो। और
  12778. 8:33:11भी कॉम्प्लेक्स वैलिडेशंस रह सकती है। ठीक
  12779. 8:33:13है? लेकिन मैं सिंपल एग्जांपल कंसीडर कर
  12780. 8:33:15रहा हूं यहां पर। ठीक है? तो देखिए ये
  12781. 8:33:17दोनों चीजें प्रेजेंट और यहां पर ईमेल की
  12782. 8:33:20एक ईमेल स्पेसिफिक वैलिडेशन होनी चाहिए और
  12783. 8:33:22यहां पर पासवर्ड की एक लेंथ स्पेसिफिक
  12784. 8:33:23वैलिडेशन होनी चाहिए। ठीक है? तो अब ये हम
  12785. 8:33:28इंप्लीमेंट कैसे करेंगे? ये वैलिडेशंस
  12786. 8:33:29इंप्लीमेंट कैसे करेंगे? ठीक है? देखिए
  12787. 8:33:31वैलिडेशन जरूरी होती है क्योंकि जो डेटा आ
  12788. 8:33:33रहा है आपको ये मेक श्योर करना है कि डेटा
  12789. 8:33:36प्रोसेस होने से पहले वो डेटा वैलिड है या
  12790. 8:33:38नहीं ये मालूम होना चाहिए। ठीक है? अब
  12791. 8:33:42वैलिड होना जरूरी है डेटा का। ठीक है? और
  12792. 8:33:45इसीलिए हम वैलिडेशंस लिखेंगे। तो मैं यहां
  12793. 8:33:46पर आ जाता हूं अगर। ठीक है? तो पहले क्या
  12794. 8:33:49होता था? रजिस्टर रिक्वेस्ट में आपको सब
  12795. 8:33:50डेट आ रहा है। यहां पर आप एक हिसाब से कुछ
  12796. 8:33:53कोड लिखोगे। ठीक है? वैलिडेशन कोड जिसका
  12797. 8:33:56काम यह होगा कि वो चेक करेगा कि सारी जो
  12798. 8:33:59चीजें हैं इस रिक्वेस्ट में आ रही है वो
  12799. 8:34:01सही है या नहीं। तो यहां पर एक
  12800. 8:34:02कॉम्प्लेक्स ब्लॉक ऑफ कोड लिखा जाएगा। ठीक
  12801. 8:34:05है? आई थिंक कुछ पांच छह लाइन ऑफ कोड का
  12802. 8:34:08और फिर उसे इस्तेमाल करके रिक्वेस्ट को
  12803. 8:34:11वैलिडेट किया जाएगा। और अगर वैलिड नहीं है
  12804. 8:34:12तो रिस्पांस भी चला जाएगा एरर के साथ। ठीक
  12805. 8:34:16है? लेकिन अब यहां पर स्प्रिंग फ्रेमवर्क
  12806. 8:34:18जो है, स्प्रिंग बूट जो है, स्प्रिंग
  12807. 8:34:20बोर्ड हमारी लाइफ बहुत आसान बना देता है।
  12808. 8:34:22आपको यहां पर कुछ कॉम्प्लेक्स वैलिडेशन
  12809. 8:34:24कोड सबसे पहले तो लिखने की जरूरत है नहीं।
  12810. 8:34:26आपको इस्तेमाल करना है सिंपल एनोटेशंस का।
  12811. 8:34:29ठीक है? सिंपल एनोटेशंस का आप इस्तेमाल
  12812. 8:34:30करते हो और एक डिपेंडेंसी आपको ऐड करनी
  12813. 8:34:33है। बस वैलिडेशंस डिपेंडेंसी और उसकी मदद
  12814. 8:34:36से सारे के सारे वैलिडेशंस ऑटोमेटिकली काम
  12815. 8:34:38करते हैं। देखिए, मैं आपको एक चीज़ बता
  12816. 8:34:40देता हूं। यह जो ईमेल वैलिड ईमेल है या
  12817. 8:34:43नहीं यह चेक करना। चीज प्रेजेंट है या
  12818. 8:34:46नहीं? कोई फील्ड प्रेजेंट है या नहीं?
  12819. 8:34:47फील्ड की मिनिमम लेंथ ये सारी जो चीजें
  12820. 8:34:50हैं जो हम लिख रहे हैं यहां पर। ठीक है?
  12821. 8:34:52ये सारी जो चीजें हम लिख रहे हैं यहां पर।
  12822. 8:34:54ठीक है? वो काफी कॉमन है। ठीक है? अगर आप
  12823. 8:34:58लॉग इन एंड पॉइंट बनाते हो और उसमें आप
  12824. 8:35:01ईमेल एक्सेप्ट कर रहे हो तो आपको ये तो
  12825. 8:35:02चेक करना ही होगा वहां पर कि ईमेल वैलिड
  12826. 8:35:04है या नहीं। ठीक है? ईमेल प्रेजेंट है या
  12827. 8:35:06नहीं? पासवर्ड प्रेजेंट है या नहीं। ये जो
  12828. 8:35:08सारी चीजें हैं मिनिमम लेंथ की वैलिडेशन
  12829. 8:35:09ये सारी चीजें ना कॉमन है और हर एप्लीकेशन
  12830. 8:35:12में लिखी जाती ही है। तो यहां पर क्या
  12831. 8:35:15किया गया है स्प्रिंग स्प्रिंग बूट के साथ
  12832. 8:35:18यहां पर एक इसका जो प्रीडफाइंड कोड है वो
  12833. 8:35:21दिया गया है और आपको सिर्फ एनोटेशन
  12834. 8:35:22इस्तेमाल करना है और अ बस वो वैलिडेशन लग
  12835. 8:35:25जाएगी। ठीक है? आपको खुद से कोड नहीं
  12836. 8:35:27लिखना है। आपको सिर्फ बिनेस लॉजिक पर फोकस
  12837. 8:35:29करना है। यही बढ़िया चीज है। ठीक है? तो
  12838. 8:35:31देखिए मैं आपको बता देता हूं इसकी शुरुआत
  12839. 8:35:33कैसे करनी है। आपको सबसे पहले तो स्टार
  12840. 8:35:35डॉटstring. पर आ जाना है क्योंकि यहां से
  12841. 8:35:38आपको डिपेंडेंसी मिलेगी। यहां पर जो भी आप
  12842. 8:35:40इस्तेमाल कर रहे हो लाइक ग्रेड ग्रेडल
  12843. 8:35:42इस्तेमाल कर रहे हो ग्रेडल सेलेक्ट कर
  12844. 8:35:43लीजिए या मेवन। मैं मेवन इस्तेमाल कर रहा
  12845. 8:35:45हूं। यहां पर आ जाइए ऐड डिपेंडेंसी में और
  12846. 8:35:47यहां पर सेलेक्ट कीजिए वैलिडेशन। तो देखिए
  12847. 8:35:50बीन वैलिडेशन वि हाइबनेट वैलिडेटर। ठीक
  12848. 8:35:53है? तो इसे सेलेक्ट करना है। यहां पर आ
  12849. 8:35:55जाइए। ठीक है? ठीक है? यहां पर जैसे ही आप
  12850. 8:35:57आते हो तो देखिए आपको यहां पर अ
  12851. 8:35:59डिपेंडेंसी दिखाई देगी जो ऐड हुई है ये
  12852. 8:36:01डिपेंडेंसी। तो ये स्प्रिंग बूट स्टार्टर
  12853. 8:36:04वैलिडेशन ये जो डिपेंडेंसी है ये आपको
  12854. 8:36:06कॉपी करनी है। ठीक है? और फिर यहां पर आ
  12855. 8:36:09जाना है स्प्रिंग बूट स्टार्टर वैलिडेशन
  12856. 8:36:11को लेकर और यहां पर इस प्रोजेक्ट में मैं
  12857. 8:36:14ओपन करूंगा। सबसे पहले तो मैं सब कुछ
  12858. 8:36:16क्लोज कर लेता हूं। और यहां पर pmxl में
  12859. 8:36:18आऊंगा और यहां पर कहीं पर भी इस
  12860. 8:36:20डिपेंडेंसी को ऐड कर देना है। अब जैसे ही
  12861. 8:36:22आप डिपेंडेंसी को ऐड कर देते हो, यहां पर
  12862. 8:36:24आपने pm.xml फाइल में चेंज किया है। तो
  12863. 8:36:27यहां पर आपको मेवन रीलोड करने की जरूरत
  12864. 8:36:28है। देखिए मेवन रीलोड का आइकॉन तो मुझे
  12865. 8:36:30दिखाई नहीं दे रहा है। एक हिसाब से यहां
  12866. 8:36:32पर दिखाई नहीं दे रहा है। ऑटोमेटिकली आ
  12867. 8:36:34जाना चाहिए था। लेकिन यहां पर मैं मेवन
  12868. 8:36:36रिफ्रेश कर दूंगा मेवन रीलोड। ठीक है? तो
  12869. 8:36:38मेवन एक हिसाब से रीलोड हो गया और ये
  12870. 8:36:40डिपेंडेंसी फैच हो जाएगी। ठीक है? तो ये
  12871. 8:36:43एक हिसाब से ये डिपेंडेंसी जो है ना इसके
  12872. 8:36:45जरिए आप वैलिडेशन रिलेटेड जो भी एनोटेशंस
  12873. 8:36:49है उसका इस्तेमाल कर सकते हो अपने कोड में
  12874. 8:36:51अपने कोड लेवल पर। ठीक है? और मैं आपको
  12875. 8:36:54बताता हूं यह चीजों को कितना आसान कर देता
  12876. 8:36:56है और अगर यह चीज होती नहीं तो आपको और
  12877. 8:36:59कितना कोड लिखना पड़ता इसका भी अंदाजा
  12878. 8:37:01आपको आ जाएगा। तो मैं आ जाता हूं ऑथ
  12879. 8:37:02कंट्रोलर में। देखिए यहां पर वैलिडेशन कोड
  12880. 8:37:04लिखने की बात की थी मैंने। इसको हटा देते
  12881. 8:37:06हैं क्योंकि इसकी जरूरत नहीं है। अब सबसे
  12882. 8:37:08पहले मैं रजिस्टर रिक्वेस्ट में जाता हूं
  12883. 8:37:09क्योंकि हम रजिस्टर रिक्वेस्ट एक डीटीओ है
  12884. 8:37:11हमारा। ठीक है? और रजिस्टर रिक्वेस्ट की
  12885. 8:37:15मदद से हम लोग क्या कर रहे हैं? अह जो
  12886. 8:37:18डेटा है उसको कलेक्ट कर रहे हैं। ठीक है?
  12887. 8:37:20अब रजिस्टर रिक्वेस्ट जो है ये एक हिसाब
  12888. 8:37:23से बीन है। ठीक है? एक हिसाब से बीन है।
  12889. 8:37:26करेक्ट। स्प्रिंग मैनेज्ड कंपोनेंट है।
  12890. 8:37:28अच्छा सॉरी एक हिसाब से बीन नहीं है। ये
  12891. 8:37:29इसको हमने कंपोनेंट मार्क नहीं किया है।
  12892. 8:37:31सॉरी कंपोनेंट मार्क नहीं किया है। लेकिन
  12893. 8:37:34ये एक हिसाब से एक क्लास है। ठीक है? और
  12894. 8:37:35यहां पर हमें क्या हम क्या करेंगे? देखिए
  12895. 8:37:37ईमेल पर हमें वैलिडेशन लगाना है और
  12896. 8:37:39पासवर्ड पर लगाना है। रजिस्टर रिक्वेस्ट
  12897. 8:37:41में। तो मैं क्या करूंगा? यहां पर लिख
  12898. 8:37:42दूंगा। ठीक है? नॉट ब्लैंक। ठीक है? नॉट
  12899. 8:37:46ब्लैंक। अच्छा नॉट प्लैंक यहां पर आ नहीं
  12900. 8:37:50रहा है। यह क्यों नहीं आ रहा है? आइडली तो
  12901. 8:37:52आना चाहिए था इसे लेकिन आ नहीं रहा है।
  12902. 8:37:55लगता है कुछ गड़बड़ हुई है। एक मिनट मुझे
  12903. 8:37:58पोम एक्सml देख लेनी चाहिए। स्टार्टर
  12904. 8:38:00वैलिडेशन हमने ऐड किया है। मेवन रीलोड
  12905. 8:38:02किया है। रीलोड और मेवन प्रोजेक्ट्स।
  12906. 8:38:05ठीक है? डिपेंडेंसी सारी रेल्व हो रही है।
  12907. 8:38:07अगर आप देखोगे यहां पर थोड़ा डिपेंडेंसी
  12908. 8:38:09को फिर से रिॉल्व होने देते हैं क्योंकि
  12909. 8:38:11ये आइडली आ जाना चाहिए था। ठीक है? यहां
  12910. 8:38:13पर आता हूं और अच्छा देखिए अब आ गया ये।
  12911. 8:38:16लगता है मुझे मेवन की जो रीलोड है उसमें
  12912. 8:38:18कुछ दिक्कत हुई थी शायद क्योंकि यहां पर
  12913. 8:38:21जब मैंने डिपेंडेंसी ऐड की तो यहां पर
  12914. 8:38:23मुझे जो ऑटोमेटिक मेवन रीलोड का आइकॉन आता
  12915. 8:38:25है वो भी नहीं आया तो ऐसा हो सकता है तो
  12916. 8:38:27आप प्रोजेक्ट को जरा क्लीन करके रीलोड ऑल
  12917. 8:38:29मेन प्रोजेक्ट्स कर लीजिएगा यहां पर मेन
  12918. 8:38:31के आइकॉन से ठीक है टेंपरेरी इशू होता है
  12919. 8:38:33आईडी का ग्लिच है तो यहां पर देखिए नॉट
  12920. 8:38:36ब्लैंक लिखना है यह देखिए ये आपको आ जाता
  12921. 8:38:38है जकार्ता वैलिडेशन कंस्ट्रेंट्स ये आपने
  12922. 8:38:40डाल दिया है ठीक है और यहां पर इतना डालने
  12923. 8:38:44के बाद ना आप यहां पर पर आ सकते हो। अच्छा
  12924. 8:38:46ये नॉट ब्लैंक है और फिर मैं यहां पर लिख
  12925. 8:38:48दूंगा यहां पर एक और चीज लिख दूंगा अ यहां
  12926. 8:38:52पर लिख दूंगा ईमेल
  12927. 8:38:55ईमेल इस तरीके से। ठीक है? और यहां पर मैं
  12928. 8:38:58मैसेज भी पास कर सकता हूं। तो जैसे कि
  12929. 8:39:00मैसेज इनवैलिड ईमेल। ठीक है? और यहां पर
  12930. 8:39:04मैं लिख सकता हूं मैसेज और यहां पर लिख
  12931. 8:39:06दूंगा ईमेल अह इज़ रिक्वायर्ड ऐसे। इस
  12932. 8:39:10तरीके से। ठीक है? तो ये दोनों चीजें हो
  12933. 8:39:12चुकी है और ये देखिए इन दोनों को मैंने
  12934. 8:39:14इंपोर्ट लगाया हुआ है यहां पर। ठीक है?
  12935. 8:39:16इतना हो गया। अब मैं है ना पहले तो इसको अ
  12936. 8:39:20रन करता हूं। ठीक है? इसको इसका आउटपुट
  12937. 8:39:23देखते हैं हम लोग कि क्या आता है आउटपुट।
  12938. 8:39:25ठीक है? तो एप्लीकेशन रन हो रही है। मैं
  12939. 8:39:27यहां पर आ जाता हूं। और यहां पर मेरे पास
  12940. 8:39:29एक थी यूजर रजिस्ट्रेशन की एंड पॉइंट। तो
  12941. 8:39:31देखिए ये यूजर रजिस्ट्रेशन की जो एंड
  12942. 8:39:33पॉइंट है वह थी। ठीक है? अब इसमें मैं
  12943. 8:39:36क्या करूंगा? यहां पर ईमेल और पासवर्ड है।
  12944. 8:39:38इन दोनों को कमेंट कर देता हूं इस तरीके
  12945. 8:39:39से। ठीक है? ऐसे और यह हो चुका है। यहां
  12946. 8:39:45पर इसको सेंड करता हूं। तो देखिए अब यह
  12947. 8:39:47रिक्वेस्ट तो थ्रू चली गई। अब यहां पर ये
  12948. 8:39:50वैलिडेशन अप्लाई नहीं हुई है। ठीक है?
  12949. 8:39:51ईमेल भी नल है, पासवर्ड भी नल है। ये
  12950. 8:39:53वैलिडेशन अप्लाई नहीं हुई। क्यों नहीं
  12951. 8:39:54हुई? तो अक्सर बिगिनर्स जो है यहां पर एक
  12952. 8:39:57गलती कर देते हैं। जनरली वैलिडेशंस डीटीओ
  12953. 8:39:59में डालते हैं। और फिर इनको इनेबल करने के
  12954. 8:40:01लिए एक और एनोटेशन की जरूरत होती है जो
  12955. 8:40:03आपको समझना जरूरी है। ठीक है? जस्ट आप
  12956. 8:40:05एनोटेशन यहां पर डाल दोगे डीटीओ में तो
  12957. 8:40:08काम नहीं बनने वाला। आपको यहां पर आना है
  12958. 8:40:10और यहां पर जब आप रिक्वेस्ट को एक्सेप्ट
  12959. 8:40:13कर रहे हो यहां पर आपको लिखना है वैलिड
  12960. 8:40:15ऐसे वैलिड। तो देखिए वैलिड लिखना है और
  12961. 8:40:17यहां पर वैलिड लिखने के बाद आपको प्रेस
  12962. 8:40:20करना है एंटर। तो देखिए ये वैलिड कहां से
  12963. 8:40:22आ रहा है? जकार्ता वैलिडेशन से आ रहा है
  12964. 8:40:24ये। ठीक है? तो यहां पर ऐसे करेंगे। तो इस
  12965. 8:40:28ये करने से क्या होगा? आपने जो वैलिडेशन
  12966. 8:40:30लिखी हुई है डीटीओ में ये वैलिडेशन के जो
  12967. 8:40:32एनोटेशंस लिखे हुए हैं डीटीओ में ये इनेबल
  12968. 8:40:36हो जाएंगे। तो एक हिसाब से आप वैलिडेशन को
  12969. 8:40:38इनेबल कर रहे हो। यह वैलिडेशन इनेबल्ड
  12970. 8:40:40नहीं थे। ठीक है? तो देखिए यहां पर यह
  12971. 8:40:43एप्लीकेशन रन हो गई। और अब मैं दोबारा ये
  12972. 8:40:46डेटा पास करूंगा ऐसे ही। और जैसे ही डेटा
  12973. 8:40:48पास करूंगा तो देखिए मुझे फॉरबिडन आ गया
  12974. 8:40:50यहां पर। अच्छा फॉरबिडन क्यों आ गया?
  12975. 8:40:52एक्सेस टू रिसोर्सेज प्रोहिबिटेड। तो
  12976. 8:40:54देखिए यहां पर जो कंसोल है वहां पर एरर
  12977. 8:40:57थ्रो हो गई। आप देख पा रहे हो यहां पर एरर
  12978. 8:41:01थ्रो हो गई। तो यह एरर बोल रही है मेथड
  12979. 8:41:04आर्गुमेंट नॉट वैलिड एक्सेप्शन और यहां पर
  12980. 8:41:07जो आपने मैसेज दिया हुआ था वो मैसेज यहां
  12981. 8:41:09पर आपको दिखाई देना चाहिए मैसेज यहां पर
  12982. 8:41:12दिखाई देना चाहिए डिफॉल्ट मैसेज देखिए
  12983. 8:41:14ईमेल इज़ रिक्वायर्ड ठीक है ये मैसेज है तो
  12984. 8:41:17बेसिकली ईमेल नहीं है इसके लिए ये फेल हो
  12985. 8:41:19रहा है आप देख पा रहे हो तो ये जो एरर है
  12986. 8:41:23वो आपको कंसोल पर दिखाई देगी ठीक है तो
  12987. 8:41:26कंसोल पर हैंडल्ड है ये और ये कौन सा
  12988. 8:41:28एक्सेप्शन थ्रो हो रहा है इसको भी नोट कर
  12989. 8:41:30लीजिएगा आप मेथड थड आर्गुमेंट वैलिड
  12990. 8:41:32एक्सेप्शन
  12991. 8:41:34ठीक है मेथड आर्गुमेंट नॉट वैलिड
  12992. 8:41:35एक्सेप्शन सॉरी तो ये एक्सेप्शन थ्रो हो
  12993. 8:41:38रहा है वैलिडेशन अगर फेल होती है तो ठीक
  12994. 8:41:40है तो अब मैं अगर ईमेल पास करता हूं एक
  12995. 8:41:42वैलिड ईमेल ठीक है और इसको सेंड करता हूं
  12996. 8:41:44तो भी एरर आएगी बिकॉज़ पासवर्ड मैंने पास
  12997. 8:41:46नहीं किया है तो देखिए यहां पर अगर आप आते
  12998. 8:41:48हो यहां पर तो ये फिर से एरर आएगी अच्छा
  12999. 8:41:51एसक्यूएल इंटीग्रिटी कंस्ट्रेंट
  13000. 8:41:54ये क्या हो गया यहां पर
  13001. 8:41:57ठीक है अब से इसको क्लियर करता हूं मैं और
  13002. 8:42:00इसको एक के सेंड करता हूं। ठीक है? तो ये
  13003. 8:42:03पासवर्ड पर एरर क्यों आ रहा है? पासवर्ड
  13004. 8:42:05पर एरर नहीं आना चाहिए था आईडियली। यहां
  13005. 8:42:07पर ऊपर अगर आप जाते हो तो हो क्या रहा है
  13006. 8:42:10यहां पर? अच्छा ये कुछ और एरर आ रहा है।
  13007. 8:42:13इंसर्ट इंटू यूजर डुप्लीकेट एंट्री। अच्छा
  13008. 8:42:16ये डुप्लीकेट एंट्री क्रिएट करने जा रहा
  13009. 8:42:18है। [email protected]
  13010. 8:42:21तो मैं यहां पर
  13011. 8:42:23मैं कुछ रैंडम स्ट्रिंग दे देता हूं। ठीक
  13012. 8:42:25है? और फिर यहां पर इसको क्लियर कर देता
  13013. 8:42:27हूं। ठीक है? अब मैं फिर से सेंड करता
  13014. 8:42:30हूं। अच्छा तो यह तो थ्रू हो गया। तो
  13015. 8:42:32पासवर्ड की वैलिडेशन सक्सेसफुल नहीं हुई।
  13016. 8:42:35ईमेल पासवर्ड अच्छा सॉरी मैंने पासवर्ड पर
  13017. 8:42:37लगाया ही नहीं है एनोटेशन। सॉरी तो
  13018. 8:42:40पासवर्ड पर लगाया नहीं थोड़ा सा कंफ्यूजन
  13019. 8:42:41हो गया था। और जो पहले एरर आ रही थी वो
  13020. 8:42:44यूनिक कंस्ट्रेंट की एरर आ रही थी। तो वो
  13021. 8:42:47एरर इसलिए आ रही थी क्योंकि यह जो ईमेल था
  13022. 8:42:49[email protected]
  13023. 8:42:51उस ईमेल से एक यूजर ऑलरेडी बना हुआ था
  13024. 8:42:54डेटाबेस में। ठीक है? है तो मैं डुप्लीकेट
  13025. 8:42:55यूजर बनाने जा रहा था और अगर आप मॉडल चेक
  13026. 8:42:57करोगे मॉडल यूजर की ठीक है यहां पर आके
  13027. 8:43:01यूजर की मॉडल ऐसे तो यहां पर आप देखोगे तो
  13028. 8:43:05ईमेल को हमने ट्रू मार्क कर रखा है ईमेल
  13029. 8:43:07इज़ ईमेल शुड बी यूनिक ठीक है तो वो एरर
  13030. 8:43:09इसलिए आ रही थी और यहां पर पासवर्ड के लिए
  13031. 8:43:12हमने एक्चुअली वैलिडेशन लगाई नहीं है तो
  13032. 8:43:14इसके लिए पासवर्ड के लिए एरर नहीं आई। ठीक
  13033. 8:43:16है? तो पासवर्ड को तो मैं वैसे भी इनेबल
  13034. 8:43:18कर देता हूं। पासवर्ड के लिए वैलिडेशन लगी
  13035. 8:43:20नहीं है। लेकिन अब मैं जो है ना ईमेल एक
  13036. 8:43:22इनवैलिड फॉर्मेट में भेजता हूं। तो मैं @
  13037. 8:43:24हटा देता हूं। ठीक है? @ हटा दिया है
  13038. 8:43:26मैंने ईमेल में से। अब इसको सेंड करता
  13039. 8:43:28हूं। तो देखिए फिर से एरर आ गई। और यहां
  13040. 8:43:30पर अब एरर का मैसेज देखोगे तो ये बोलेगा
  13041. 8:43:32इनवैलिड ईमेल। ठीक है? वैलिड इनवैलिड ईमेल
  13042. 8:43:36है ये क्योंकि फॉर्मेट ही सही नहीं है।
  13043. 8:43:38करेक्ट? तो ये फेल हो गया। तो देखिए एक
  13044. 8:43:40हिसाब से कितना टाइम आपका बचा रहा है।
  13045. 8:43:42आपको ईमेल वैलिडेशन के लिए कॉम्प्लेक्स
  13046. 8:43:44लॉजिक लिखना पड़ता। अच्छा वो पैटर्न
  13047. 8:43:46मैचिंग वो सब करना पड़ता। आपको आपको ईमेल
  13048. 8:43:50प्रेजेंट है या नहीं उसके लिए इफ कंडीशंस
  13049. 8:43:51लिखनी पड़ती। ठीक है? अब आपने किया ही
  13050. 8:43:54क्या है? अब आपने एक डिपेंडेंसी ऐड की है
  13051. 8:43:57और आपने एनोटेशंस का इस्तेमाल किया है।
  13052. 8:43:59ठीक है? एनोटेशंस के इस्तेमाल से आपको ये
  13053. 8:44:02भी प्रोविज़ मिल जाता है कि आप इसमें मैसेज
  13054. 8:44:05अपना खुद का डिफाइन कर पाओ। ठीक है? और
  13055. 8:44:07देखिए वो मैसेज इस्तेमाल भी हो रहा है। और
  13056. 8:44:09यहां पर सेम एक्सेप्शन थ्रो हुआ है मेथड
  13057. 8:44:11आर्गुमेंट नॉट वैलिड एक्सेप्शन।
  13058. 8:44:14ठीक है? तो आप देख पा रहे हैं कैसे ये एक
  13059. 8:44:17हिसाब से मैनेज हो रहा है। ठीक है? तो
  13060. 8:44:20उम्मीद करता हूं यह आपको क्लियर हो रहा
  13061. 8:44:22है। ठीक है? देखिए दो स्टेप तीन स्टेप
  13062. 8:44:24प्रोसेस है वैलिडेशन इनेबल करना। एक तो
  13063. 8:44:26सबसे पहले आपको यहां पर ये स्टार्टर
  13064. 8:44:29वैलिडेशन की जो डिपेंडेंसी है उसको ऐड
  13065. 8:44:31करना है। सबसे पहली चीज़ ठीक है? दूसरी चीज़
  13066. 8:44:34आपको यहां पर अ ये एनोटेशंस ऐड करने हैं
  13067. 8:44:38डीटीओ में। ठीक है? और फिर यहां पर हमने
  13068. 8:44:40आया और यहां पर हमने यह वैलिड एनोटेशन को
  13069. 8:44:42इनेबल किया। वैलिड एनोटेशन को अगर आप नहीं
  13070. 8:44:44लिखते हो तो वैलिडेशंस अप्लाई नहीं होते।
  13071. 8:44:47तो वैलिडेशंस को इनेबल करने के लिए आपको
  13072. 8:44:49ये वैलिड एनोटेशन का इस्तेमाल जरूर करना
  13073. 8:44:52है। ठीक है? अब देखिए यहां पर हो क्या रहा
  13074. 8:44:54है ना मैं आपको एक चीज बता देता हूं। ठीक
  13075. 8:44:56है? अ यहां पर हो ये रहा है कि यहां पर ये
  13076. 8:44:59जो एरर आपको दिखाई दे रहा है ये एरर आपको
  13077. 8:45:02कंसोल पर दिखाई दे रहा है। यहां पर 403
  13078. 8:45:04फॉरबिडन आ रहा है। क्या ये हैंडल्ड है
  13079. 8:45:07प्रॉपर्ली? जी नहीं। यह प्रॉपर्ली हैंडल्ड
  13080. 8:45:09नहीं है। तो आप क्या कर सकते हो? यहां पर
  13081. 8:45:10ना आप एक ग्लोबल एक्सेप्शन हैंडलर भी लिख
  13082. 8:45:13सकते हो। ठीक है? एक ग्लोबल एक्सेप्शन
  13083. 8:45:15हैंडलर जिसकी मदद से एक्सेप्शनंस को आप
  13084. 8:45:17हैंडल करोगे। ठीक है? तो मैं देखिए यहां
  13085. 8:45:20पर आ जाता हूं और यहां पर वो एक्सेप्शन
  13086. 8:45:22थ्रो हो रहा है। करेक्ट मेथड क्या था? अ
  13087. 8:45:26एक्सेप्शन का नाम मेथड आर्गुमेंट नॉट
  13088. 8:45:28वैलिड एक्सेप्शन। ठीक है? तो आप यहां पर आ
  13089. 8:45:29सकते हो और उसको बढ़िया तरीके से आप हैंडल
  13090. 8:45:31भी कर सकते हो जो हिसाब से। तो आप यहां पर
  13091. 8:45:33लिख सकते हो एक्सेप्शनंस डॉट ग्लोबल
  13092. 8:45:37एक्सेप्शन हैंडलर। ठीक है? इस तरीके से
  13093. 8:45:41आपने ये एक ग्लोबल एक्सेप्शन हैंडलर आपने
  13094. 8:45:43डिफाइन कर दिया। रेस्ट कंट्रोलर एडवाइस
  13095. 8:45:45लिखोगे यहां पर रेस्ट कंट्रोलर एडवाइस।
  13096. 8:45:48ठीक है? इस पर अगर आप ओवर करोगे तो देखिए
  13097. 8:45:50शॉर्टकट एनोटेशन है। ठीक है? ये रेस्ट
  13098. 8:45:53कंट्रोलर एडवाइस के लिए। ठीक है? तो मैंने
  13099. 8:45:55वो लिख दिया यहां पर। और यहां पर मैं
  13100. 8:45:57लिखूंगा कि ये है एक्सेप्शन हैंडलर। ठीक
  13101. 8:46:00है? और यहां पर लिखूंगा पब्लिक रिस्पांस
  13102. 8:46:03एंटिटी
  13103. 8:46:06और फिर यहां पर लिखूंगा मैप। ठीक है? मैप
  13104. 8:46:09इसलिए क्योंकि मैं कुछ भी डेटा भेज सकता
  13105. 8:46:10हूं मैप के फॉर्म में। तो फ्लैक्सिबिलिटी
  13106. 8:46:12के स्टैंड पॉइंट से मैंने मैप लिखा है।
  13107. 8:46:14अच्छा मैप को इंपोर्ट भी करना होगा।
  13108. 8:46:16इंपोर्ट करने की जरूरत है। ये मैंने कर
  13109. 8:46:18दिया यहां पर। और यहां पर मैं लिख सकता
  13110. 8:46:20हूं हैंडल वैलिडेशन एर्स। ठीक है? इस
  13111. 8:46:24हिसाब से। और यहां पर मैं लिखूंगा कौन सा
  13112. 8:46:27अ एक्सेप्शन मैं हैंडल करना चाह रहा हूं?
  13113. 8:46:29मेथड आर्गुमेंट नॉट वैलिड एक्सेप्शन और
  13114. 8:46:32यहां पर ईएक्स। ठीक है? और यहां पर ये
  13115. 8:46:34मेथड को ओपन कर दूंगा। और मुझे एक्सेप्शन
  13116. 8:46:36हैंडलर में भी ये जो एक्सेप्शन है इसका
  13117. 8:46:38नाम लिखना पड़ेगा। तो ये मैं लिखूंगा मेथड
  13118. 8:46:40आर्गुमेंट नॉट वैलिड एक्सेप्शन डॉट क्लास।
  13119. 8:46:43ठीक है? यहां पर आ जाते हैं। यहां पर मैप
  13120. 8:46:45लिखूंगा और फिर यहां पर लिखूंगा स्ट्रिंग
  13121. 8:46:48कॉमा स्ट्रिंग और एक हिसाब से यहां पर
  13122. 8:46:51लिखूंगा एरर्स इज़ इक्वल टू न्यू#श मैप। तो
  13123. 8:46:55मैं एरर्स की एक हैश मैप बना रहा हूं। और
  13124. 8:46:56जो भी मुझे एरर मैसेज आ रहा है, मैं उसको
  13125. 8:46:58पास करना चाह रहा हूं इस एरर के मैप में।
  13126. 8:47:01ठीक है? तो मैं यहां पर कहूंगा exइंडिंग
  13127. 8:47:05रिजल्ट डॉट गेट फील्ड एरर। तो देखिए आपको
  13128. 8:47:09यहां पर अ यहां पर आपको गेट फील्ड एरर तो
  13129. 8:47:12गेट फील्ड एरर की मदद से आपको सारे
  13130. 8:47:14फील्ड्स के एरर मिल जाएंगे। ठीक है? और
  13131. 8:47:16फिर आपको लिखना है डॉट फॉर ईच। अच्छा ये
  13132. 8:47:20क्या गड़बड़ हो गई? गेट फील्ड एरर्स आपको
  13133. 8:47:23लेना है। एरर नहीं एरर्स लेना है। तो
  13134. 8:47:24इसमें सारे एरर्स मिलेंगे। और फिर आपको ये
  13135. 8:47:26फॉर ईच लेना है। ठीक है? और फिर यहां पर
  13136. 8:47:29एरर्स और ऐसे और फिर एर्स डॉट पुट ओके
  13137. 8:47:36क्या गड़बड़ हो गई एर्स
  13138. 8:47:40ओके एरर लेना है एरर लेना है और फिर एरर
  13139. 8:47:43डॉट
  13140. 8:47:48अच्छा एरर्स डॉट पुट एक के हिसाब से और
  13141. 8:47:51यहां पर लेना है अ एरर डॉट गेट फील्ड कॉमा
  13142. 8:47:56एरर डॉट गेट डिफॉल्ट ऑल्ट मैसेज ऐसे लिख
  13143. 8:47:59देना है। ठीक है? तो आप एक हिसाब से क्या
  13144. 8:48:01कर रहे हो? उस मैप में सारे एरर्स को ऐड
  13145. 8:48:04कर रहे हो और फिर रिटर्न कर रहे हो
  13146. 8:48:06रिस्पांस एंटिटी डॉट बैड रिक्वेस्ट।
  13147. 8:48:08क्योंकि ये बैड रिक्वेस्ट हो गई और बॉडी
  13148. 8:48:11में आप डाल रहे हो। बॉडी में आप डाल रहे
  13149. 8:48:14हो एरर्स।
  13150. 8:48:16इस तरीके से।
  13151. 8:48:20ठीक है?
  13152. 8:48:22डन। एक हिसाब से। तो यहां पर आप देख रहे
  13153. 8:48:24हो ग्लोबल एक्सेप्शन हैंडलर डिफाइन किया
  13154. 8:48:26है क्योंकि एक्सेप्शन कहां से भी आ सकती
  13155. 8:48:28है। ठीक है? मेथड आर्गुमेंट नॉट वैलिड
  13156. 8:48:30एक्सेप्शन ये एक्सेप्शन को हम हैंडल कर
  13157. 8:48:32रहे हैं। क्यों? क्योंकि आप देख रहे हो
  13158. 8:48:34क्लियरली कि ये वैलिडेशन एरर मेथड
  13159. 8:48:36आर्गुमेंट नॉट वैलिड एक्सेप्शन थ्रो कर
  13160. 8:48:38रहा है। और ये एरर का जो डिटेल है उसको
  13161. 8:48:40पास भी कर रहा है। तो यहां पर मैं क्या
  13162. 8:48:42करूंगा? एक रिस्पांस एंटिटी रिटर्न कर रहा
  13163. 8:48:44हूं। मैप के फॉर्म में स्ट्रिंग स्ट्रिंग
  13164. 8:48:46क्योंकि मुझे फ्लेक्सिबिलिटी चाहिए। एक
  13165. 8:48:48हैश मैप को बना लिया मैंने। और यह जो एरर
  13166. 8:48:49का ऑब्जेक्ट है इसमें मैं देखिए पुट कर
  13167. 8:48:51रहा हूं चीजों को। तो फील्ड फील्ड का नाम
  13168. 8:48:54और फिर एरर का डिफॉल्ट मैसेज। उसको मैं ऐड
  13169. 8:48:57करते जा रहा हूं। और फिर यह मैप को रिटर्न
  13170. 8:48:59कर रहा हूं। तो, यह फील्ड का नाम देगा
  13171. 8:49:00यहां पर एरर डॉट गेट फील्ड और गेट डिफ़ॉल्ट
  13172. 8:49:03मैसेज डिफ़ॉल्ट मैसेज देगा जो आपको दी आपने
  13173. 8:49:05सेट किया हुआ है यहां पर मॉडल में। आपने
  13174. 8:49:09जो भी मैसेज सेट किया हुआ है वो यहां पर
  13175. 8:49:11से ऐड होगा। ठीक है? और फिर आप बैड
  13176. 8:49:15रिक्वेस्ट भेज रहे हो यहां पर रिस्पांस
  13177. 8:49:18एंटिटी में और बॉडी में एरर्स भेज रहे हो।
  13178. 8:49:20इसको रन करके एक बार देख लेते हैं। देखिए
  13179. 8:49:22ये किस तरीके से काम करेगा। आप देख सकते
  13180. 8:49:23हो। ठीक है? तो यहां पर देखिए मैं मैं फिर
  13181. 8:49:26से ईमेल जो है उसको इनवैलिड कर देता हूं
  13182. 8:49:29और यहां पर देखता हूं ये स्टार्ट हुआ है
  13183. 8:49:30या नहीं एप्लीकेशन। स्टार्ट तो हो गई। अब
  13184. 8:49:32इसको सेंड करके देखते हैं। तो देखिए 400
  13185. 8:49:34बैड रिक्वेस्ट। पहले 403 आ रहा था। क्या आ
  13186. 8:49:37रहा था पहले? पहले आ रहा था 403 एरर। 403
  13187. 8:49:41इसलिए आ रहा था क्योंकि हैंडल नहीं था
  13188. 8:49:43प्रॉब्ली। ठीक है? अब मैं हैंडल कर रहा
  13189. 8:49:45हूं इसको और यहां पर मैनुअली मैं 400 बैड
  13190. 8:49:47रिक्वेस्ट भेज रहा हूं। बैड रिक्वेस्ट का
  13191. 8:49:49मतलब यह है कि आपने जो रिक्वेस्ट भेजी है
  13192. 8:49:51वो सही नहीं है तो आप रिक्वेस्ट चेक
  13193. 8:49:53कीजिए। तो अब होगा क्या जो भी मोबाइल
  13194. 8:49:55एप्लीकेशन, वेब एप्लीकेशन या कोई भी इस
  13195. 8:49:58एपीआई को यूज़ कर रहे हो उसको समझ जाएगा
  13196. 8:50:00अच्छा रिक्वेस्ट में कुछ गड़बड़ है और यहां
  13197. 8:50:02पर बॉडी में आप पूरी डिटेल डिटेल्स भेज भी
  13198. 8:50:03रहे हो कि ईमेल में इनवैलिड ईमेल है। ठीक
  13199. 8:50:06है? तो देखिए मैं @ लगाऊंगा। और अगर ईमेल
  13200. 8:50:09को अगर मैं स्किप ही कर देता हूं पूरी
  13201. 8:50:11तरीके से। यहां पर मैंने स्किप कर लिया
  13202. 8:50:12ईमेल को सेंड करता हूं। तो देखिए ईमेल इज़
  13203. 8:50:14रिक्वायर्ड। ठीक है? यह सब करने के लिए
  13204. 8:50:17आपने कोड ही कितना लिखा है? यह सारा
  13205. 8:50:19फ्रेमवर्क का कमाल है। सारी जो
  13206. 8:50:21डिपेंडेंसीज हमने ऐड की है, उसका कमाल है।
  13207. 8:50:23दोस्तों, काफी जबरदस्त चीज है ये। एक टाइम
  13208. 8:50:27था जब जब ये फ्रेमवर्क्स नहीं होते थे, तब
  13209. 8:50:28डेवलपर्स को ये सारे कोड है ना खुद से
  13210. 8:50:30लिखने पड़ते थे कि अच्छा ईमेल को चेक करो।
  13211. 8:50:32ईमेल नहीं है तो ये पास कर दो। ठीक है? तो
  13212. 8:50:35आप एक ग्लोबल क्लास बनाते थे जहां पे ईमेल
  13213. 8:50:37का वैलिडेशन का कोड लिखते थे। और फिर आप
  13214. 8:50:40वहां पर कोई फील्ड आती है तो फील्ड को
  13215. 8:50:43फील्ड में अगर वैल्यू नहीं है तो क्या
  13216. 8:50:46रिटर्न करना है वो सारी एक ऐसी क्लास
  13217. 8:50:47बनाते थे और फिर वो क्लास में से जो
  13218. 8:50:49मेथड्स आपने डिफाइन किए पब्लिक स्टैटिक
  13219. 8:50:51उनको सब जगह कॉल करते थे। तो ये काफी
  13220. 8:50:53रिपीिटेटिव टास्क होता था। ठीक है? और
  13221. 8:50:55मतलब करने के अलावा और कोई सशन नहीं होता
  13222. 8:50:58था। लेकिन आजकल के जो फ्रेमवर्क्स हैं
  13223. 8:51:00यानी कि जो फ्रेमवर्क्स जिस तरीके से
  13224. 8:51:01बिल्ड हुए, डेवलप हुए ये सारी चीजें देखिए
  13225. 8:51:04कितनी ऑटोमेट हो जाती है। एक हिसाब से
  13226. 8:51:05ऑटोमेशन ही कहूंगा मैं। आप सिर्फ बता रहे
  13227. 8:51:08हो। देखिए यहां पर कंसोल पे अभी कुछ
  13228. 8:51:10प्रिंट नहीं हुआ है। क्यों प्रिंट नहीं
  13229. 8:51:11हुआ है? क्योंकि आपने इसको हैंडल कर लिया
  13230. 8:51:12है। आपने इसको हैंडल कर लिया है ग्लोबल
  13231. 8:51:14एक्सेप्शन हैंडलर में। ठीक है? तो कंसोल
  13232. 8:51:16इज़ क्लीन। कंसोल क्लीन है लेकिन एरर यहां
  13233. 8:51:19पर आ रही है। अब यूजर को दिखाई दे रही है
  13234. 8:51:21कि भाई तूने गलत डेटा भेजा है। अब तू
  13235. 8:51:23फिक्स कर इसे। ठीक है? और यहां पर देखिए
  13236. 8:51:26हमने किया ही क्या है? तो मैं मैं बता रहा
  13237. 8:51:28था आपको कि हमने क्या किया है? तो यहां पर
  13238. 8:51:29देखिए सबसे पहले तो एक डिपेंडेंसी ऐड की
  13239. 8:51:31है। ठीक है? डीटीओ में हमने लिख दिया है
  13240. 8:51:34क्या-क्या वैलिड होना चाहिए, क्या नहीं
  13241. 8:51:36होना चाहिए। ठीक है? फिर ग्लोबल एक्सेप्शन
  13242. 8:51:38हैंडलर सॉरी नहीं ये लिखने के बाद फिर
  13243. 8:51:40हमने वैलिडेशन को इनेबल किया हुआ है यहां
  13244. 8:51:43कि भाई यहां पर वैलिडेशंस लिखे हुए हैं और
  13245. 8:51:45वैलिडेशन करने के बाद ही ये जो ऑब्जेक्ट
  13246. 8:51:48है उसे एक्सेप्ट करना है। ये इसीलिए लिखते
  13247. 8:51:49हैं हम लोग वैलिडेशंस को पहले अप्लाई करना
  13248. 8:51:52जो रिक्वेस्ट बॉडी में लिखे गए हैं अ सॉरी
  13249. 8:51:54रजिस्टर रिक्वेस्ट में लिखे गए हैं और फिर
  13250. 8:51:56ही ऑब्जेक्ट क्रिएट करना नहीं तो नहीं
  13251. 8:51:58करना। यहीं पर रिजेक्ट कर देना। यहीं पर
  13252. 8:52:01रिजेक्ट हो जाता है। अगर तो ग्लोबल
  13253. 8:52:03एक्सेप्शन हैंडलर क्लास है जहां पर यह
  13254. 8:52:05एक्सेप्शन को हमने हैंडल कर रखा है। और जो
  13255. 8:52:07भी फील्ड के नाम आते हैं देखिए यह फील्ड
  13256. 8:52:09का नाम यहां पर ईमेल था। तो हमें आउटपुट
  13257. 8:52:11में भी ईमेल दिख रहा है। अगर मैं यूजर
  13258. 8:52:13ईमेल कर दूं उसे तो आउटपुट में भी यूजर
  13259. 8:52:15ईमेल दिखेगा। तो जो भी फील्ड का नाम है वो
  13260. 8:52:17यहां पर दिखाई देगा। तो कैसे सारी चीजें
  13261. 8:52:19कनेक्ट हो जाती है। अब ये सेम वैलिडेशन हम
  13262. 8:52:22डाल सकते हैं पासवर्ड के लिए भी। तो मैं
  13263. 8:52:24डालूंगा नॉट ब्लैंक
  13264. 8:52:27इस तरीके से और फिर लिख दूंगा मैसेज ऐसा
  13265. 8:52:31और फिर लिख दूंगा अ पासवर्ड
  13266. 8:52:35इज़ रिक्वायर्ड
  13267. 8:52:37ऐसे। ठीक है? और अब आप इसको रन करोगे तो
  13268. 8:52:40ये जो वैलिडेशंस थी ये सारी वैलिडेशंस
  13269. 8:52:42अप्लाई हो जाएगी अ यहां पर पासवर्ड के लिए
  13270. 8:52:46भी। ठीक है? तो ईमेल को ऐसा अनकमेंट
  13271. 8:52:49करेंगे और फिर आप अगर इसको भेजते हो तो
  13272. 8:52:51देखिए पासवर्ड इज़ रिक्वायर्ड। ईमेल भी
  13273. 8:52:53नहीं भेजोगे आप। तो देखते हैं क्या आउटपुट
  13274. 8:52:54आता है। देखिए ईमेल इज रिक्वायर्ड,
  13275. 8:52:57पासवर्ड इज रिक्वायर्ड। दोनों के लिए
  13276. 8:52:58वैलिडेशंस चल रही है। अगर आप अब ईमेल
  13277. 8:53:01भेजते हो लेकिन ईमेल गलत भेजते हो तो वो
  13278. 8:53:04फील्ड के लिए जो भी वैलिडेशंस है लाइक
  13279. 8:53:05ईमेल नॉट वैलिड वो भी दिखाई देगी। देखिए
  13280. 8:53:07इनवैलिड ईमेल पासवर्ड इज़ रिक्वायर्ड। ठीक
  13281. 8:53:09है? देख पा रहे हो? ठीक है? और अब इसको
  13282. 8:53:13मैं अगर सेंड करता हूं। ठीक है? इसको सेंड
  13283. 8:53:16करता हूं तो देखिए यूजर क्रिएट भी हो गया।
  13284. 8:53:18ठीक है? उम्मीद करता हूं यह काफी क्लियर
  13285. 8:53:21रहा आपको। और वैलिडेशंस कितने तगड़े हैं।
  13286. 8:53:24यानी कितने कितनी बढ़िया चीज है। स्प्रिंग
  13287. 8:53:28बूट में अगर आप काम कर रहे हो तो यह इसका
  13288. 8:53:30आपको अंदाजा भी लग गया। इसकी
  13289. 8:53:34ये उम्मीद करता हूं मैं। ठीक है? तो जी
  13290. 8:53:37हां, मुझे बताइए कि कैसा लगा आपको ये पूरा
  13291. 8:53:39का पूरा जो वैलिडेशन का मैजिक है वो और
  13292. 8:53:43उम्मीद करता हूं यह हेल्पफुल रहा।
  13293. 8:53:51तो देखिए दोस्तों, हमने एप्लीकेशन तो
  13294. 8:53:53बढ़िया बना लिए है। ठीक है? हम एप्लीकेशन
  13295. 8:53:55अक्सर बढ़िया बनाते हैं। लेकिन होता क्या
  13296. 8:53:57है? देखिए, ये बैक एंड एप्लीकेशन है। ठीक
  13297. 8:54:00है? रेस्ट एपीआई आपने बनाई है। अब रेस्ट
  13298. 8:54:02एपीआई बनाने के बाद ठीक है? नेक्स्ट काम
  13299. 8:54:05ये होता है। देखिए आपने ये बैक एंड
  13300. 8:54:07एप्लीकेशन बना दी। इसमें है एपीआई। ठीक
  13301. 8:54:10है? अब एपीआई कौन इस्तेमाल करने वाला है?
  13302. 8:54:12ये इस्तेमाल करने वाला है या तो मोबाइल
  13303. 8:54:15एप्लीकेशन होगा आपके पास। ठीक है? या तो
  13304. 8:54:18आपके पास होगा वेब ऐप होगा वेब ऐप
  13305. 8:54:23ठीक है या तो आपके पास होगा कोई क्लाइंट
  13306. 8:54:25जैसे कि पोस्टमैन ठीक है अच्छा पोस्टमैन
  13307. 8:54:30ठीक है तो इनमें से कोई भी हो सकता है जो
  13308. 8:54:33एपीआई को इस्तेमाल कर रहा है और यहां से
  13309. 8:54:35आपको सारी की सारी जो रिक्वेस्ट है वो
  13310. 8:54:37आएगी अब यहां पर दिक्कत क्या है देखिए
  13311. 8:54:40एपीआई तो आपने बना दी अब आप इनको बोल दोगे
  13312. 8:54:42अच्छा अच्छा एपीआई बन चुकी है अब ऐप की
  13313. 8:54:46टीम वेब वेब की टीम पोस्टमैन या ये सारी
  13314. 8:54:49टीम्स जो भी इस्तेमाल करना चाह रही है।
  13315. 8:54:51ठीक है? जिनके पास पोस्टमैन है, कोई
  13316. 8:54:53क्लाइंट है, कोई प्रोडक्ट मैनेजर है जो
  13317. 8:54:54पोस्टमैन की मदद से आपकी एपीआई चेक कर रहा
  13318. 8:54:56है। तो इन सारी टीम्स को आपको बताना होगा
  13319. 8:54:59कि कौन सी कौन सी एंड पॉइंट्स रेडीमेड है
  13320. 8:55:02अवेलेबल। और इनको कैसे एक्सेस करना है,
  13321. 8:55:05क्या-क्या पैरामीटर्स किन फॉर्मेट में
  13322. 8:55:07प्रोवाइड करना है और रिस्पांस कोड्स
  13323. 8:55:09क्या-क्या हैं या एरर्स क्या-क्या आएंगी
  13324. 8:55:11या आपको रिस्पांस किस फॉर्मेट में आएगा।
  13325. 8:55:14ये सारी चीजें आपको इनको बताना होगा। तो
  13326. 8:55:16एक हिसाब से एंड पॉइंट की डिटेल्स
  13327. 8:55:18रिक्वेस्ट किस रिक्वेस्ट में क्या-क्या
  13328. 8:55:20पैरामीटर्स और क्या-क्या डिटेल्स एडिशनल
  13329. 8:55:22डिटेल्स जैसे कि रिक्वेस्ट बॉडी क्या होनी
  13330. 8:55:24चाहिए ये सारी डिटेल्स आपको भेजनी है और
  13331. 8:55:27आपको जो रिस्पांस एक्सपेक्टेड है वो क्या
  13332. 8:55:29एक्सपेक्टेड है वो भी दिखाना है इनको तो
  13333. 8:55:31देखिए मैं बता देता हूं एंड पॉइंट डिटेल्स
  13334. 8:55:33एंड पॉइंट डिटेल्स ठीक है फिर आप अ जो
  13335. 8:55:38एडिशनल
  13336. 8:55:40डेटा जैसे कि एडिशनल डेटा का मतलब है
  13337. 8:55:43रिक्वेस्ट बॉडी और पैराम्स वग़ैरह जो भी
  13338. 8:55:46पास करना है, वह सब आपको बताना होगा। और
  13339. 8:55:48फिर यहां पर आपको बताना होगा रिस्पांस
  13340. 8:55:51फ़ॉर्मेट। ठीक है? रिस्पांस फ़ॉर्मेट क्यों
  13341. 8:55:54ज़रूरी है? देखिए, एंड पॉइंट डिटेल्स तो
  13342. 8:55:56चलो वो कॉल करने के लिए जरूरी है। एडिशनल
  13343. 8:55:58डेटा भी कॉल करने के लिए जरूरी है कि मुझे
  13344. 8:55:59क्या-क्या डेटा भेजना चाहिए। वो सारी कॉल
  13345. 8:56:01करने के लिए जरूरी है। लेकिन रिस्पांस
  13346. 8:56:03आपको किस फॉर्मेट में आएगा ये भी जानना इन
  13347. 8:56:05टीम्स को जरूरी है। क्योंकि देखिए
  13348. 8:56:07रिस्पांस अक्सर JSN में आता है। तो ऐप टीम
  13349. 8:56:10उसके लिए एक पार्सलर लिखेगी। लाइक जसन को
  13350. 8:56:12पास करेगी और कौन सी कौन सी-कौ डेटा आ रहा
  13351. 8:56:14है जैसे कि यूजर आईडी कहां पर आ रही है
  13352. 8:56:16क्या की है यूजर आईडी की ये सारा पास करके
  13353. 8:56:19फ्रंट एंड पर अगर उनको जैसे भी डेटा
  13354. 8:56:21इस्तेमाल करना है उसके लिए रिस्पांस
  13355. 8:56:23फॉर्मेट जरूरी हो जाता है इनके लिए ठीक है
  13356. 8:56:25तो ऐप वेब ऐप और पोस्टमैन टीम के लिए सारी
  13357. 8:56:28चीजें जरूरी है पोस्टमैन जो भी यूज़ कर
  13358. 8:56:29रहा है ठीक है पोस्टमैन की टीम नहीं होगी
  13359. 8:56:30पोस्टमैन जो भी इस्तेमाल कर रहा है आपकी
  13360. 8:56:32कंपनी में ठीक है तो आपको ये सारी चीजें
  13361. 8:56:34इनको भेजनी पड़ेगी अब ये बताने की दो
  13362. 8:56:37चीजें हैं एक तो दो चीजें नहीं एक एक चीज
  13363. 8:56:41है आप इनको डॉक्यूमेंटेशन एक बना के दे दो
  13364. 8:56:43या तो फिर इनफॉर्मली आप बता दो क्या ये
  13365. 8:56:46एंड पॉइंट है और ऐसे आपको डेटा भेजना है
  13366. 8:56:49लेकिन प्रॉब्लम क्या है ये वर्बल
  13367. 8:56:50कम्युनिकेशन है ना आप कितनी एंड पॉइंट्स
  13368. 8:56:51की करोगे करेक्ट ये सही अप्रोच नहीं है और
  13369. 8:56:54अगर बड़ी टीम है तो आपको डॉक्यूमेंट बनाना
  13370. 8:56:56होगा डॉक्यूमेंट भेजना होगा कि अच्छा ये
  13371. 8:56:58ऐसा-ऐसा है अब आप कोई भी अपडेट कर देते हो
  13372. 8:57:00एंड पॉइंट में कोड में कोई भी चेंज कर
  13373. 8:57:02देते हो तो डॉक्यूमेंट भी जाके अपडेट करो
  13374. 8:57:04काफी काम पड़ जाता है डेवलपर के लिए ठीक
  13375. 8:57:06है और हम डेवलपर्स हैं कोड लिखना पसंद
  13376. 8:57:10हमें डॉक्यूमेंटेशन वॉक्यूमेंटेशन वैसे भी
  13377. 8:57:13बोरिंग लगता है काफी। ठीक है? तो मैं एक
  13378. 8:57:16ऐसा टूल आपको बताऊंगा जिसे कहते हैं
  13379. 8:57:18स्वैगर। और इस टूल की मदद से आप अगर इस
  13380. 8:57:21टूल को इंटीग्रेट करते हो आपकी एप्लीकेशन
  13381. 8:57:24में तो आपके एप्लीकेशन की जितने भी एंड
  13382. 8:57:26पॉइंट्स हैं स्वैगर टूल उसको बेहतर तरीके
  13383. 8:57:29से समझ जाएगा। रिक्वेस्ट रिस्पांस जो भी
  13384. 8:57:31है उसको समझ जाएगा और आपको एक
  13385. 8:57:33डॉक्यूमेंटेशन ऑटोमेटिकली बना के दे देगा।
  13386. 8:57:36जी हां, ऑटोमेटिकली आप जब भी कोड में कोई
  13387. 8:57:38एपीआई चेंज करते हो, तो वह डॉक्यूमेंटेशन
  13388. 8:57:40में रिफ्लेक्ट करेगा। तो, यह एक लाइव एंड
  13389. 8:57:43पॉइंट है जिसको आप अपनी टीम के साथ शेयर
  13390. 8:57:46कर सकते हो और आपकी टीम इसको इस्तेमाल भी
  13391. 8:57:49कर सकती है। ठीक है? तो देखिए, पहले आप
  13392. 8:57:52डॉक्यूमेंटेशन बना के देते थे। Google
  13393. 8:57:53डॉक्स या वर्ड फाइल बना के दोगे। आप
  13394. 8:57:56रिक्वेस्ट रिस्पांस मैनुअली डिफाइन करोगे
  13395. 8:57:58और शेयर करोगे। ईमेल पर सेंड करोगे। अब
  13396. 8:58:00अगर एपीआई में चेंज होता है तो आप
  13397. 8:58:02डॉक्यूमेंटेशन अपडेट करोगे और फिर वर्जन
  13398. 8:58:03टू भेजोगे डॉक्यूमेंटेशन का। और चेंज होता
  13399. 8:58:06है तो वर्जन 3 भेजोगे तो यह वर्जनंस बनते
  13400. 8:58:08ही रहेंगे। फाइनल V3 फाइनल V2 ये फाइनल V3
  13401. 8:58:12और वर्जन नेम आप डालते ही रहोगे। ठीक है?
  13402. 8:58:14और आपके लिए भी काफी मैनुअल एफर्ट है। अगर
  13403. 8:58:16कुछ गलती हो जाती है तो इसकी
  13404. 8:58:17रिस्पांसिबिलिटी कौन लेगा? अगर आपने कुछ
  13405. 8:58:19एक पैरामीटर मिस कर दिया। करेक्ट? टूल का
  13406. 8:58:23बेनिफिट क्या है? स्वैगर का बेनिफिट क्या
  13407. 8:58:24है? वो आपकी एपीआई को देखकर खुद से ही एक
  13408. 8:58:28स्टैंडर्ड फॉर्मेट में डॉक्यूमेंटेशन बना
  13409. 8:58:30देता है। और इस डॉक्यूमेंटेशन को हर कोई
  13410. 8:58:32इस्तेमाल कर सकता है। ठीक है? तो ये काफी
  13411. 8:58:35आसान हो जाता है और आप इसको शेयर कर सकते
  13412. 8:58:37हो आपकी टीम्स के साथ और अगर आप कोई
  13413. 8:58:39चेंजेस करते हो जैसे कि मैंने बताया ये
  13414. 8:58:41लाइव होता है तो चेंजेस आप अगर कोई करोगे
  13415. 8:58:43तो टीम को भी दिखाई देगा। ठीक है? और आपको
  13416. 8:58:45बार-बार डॉक्यूमेंटेशन पे जाने की जरूरत
  13417. 8:58:46नहीं है। आप बेझिझक चेंजेस कर सकते हो।
  13418. 8:58:49ठीक है? तो देखिए अब मैं यहां पर आ जाता
  13419. 8:58:51हूं और आपको बताता हूं कि स्वैगर को कैसे
  13420. 8:58:54एक्सेस करना है। तो स्वैगर सर्च कर लीजिए
  13421. 8:58:56आप। यहां पर आपको स्वैगर आईo करके ये
  13422. 8:58:58वेबसाइट मिल जाएगी। ठीक है? तो यह देखिए
  13423. 8:59:01यह बोलेगा स्वैगर इनेबल्स डिजाइन गवर्नेंस
  13424. 8:59:04एंड टेस्टिंग अक्रॉस फुल्ली एआई जनरेटेड
  13425. 8:59:06ईपीआई लाइफ साइकिल इंश्योरिंग क्वालिटी एट
  13426. 8:59:08एव्री स्टेप। ठीक है? तो हम इसका इस्तेमाल
  13427. 8:59:10करने वाले हैं डॉक्यूमेंटेशन के लिए। तो
  13428. 8:59:12देखिए डिज़ाइन, डॉक्यूमेंट, फंक्शनल टेस्ट
  13429. 8:59:13और कॉन्ट्रैक्ट टेस्ट। लेकिन, हम
  13430. 8:59:15डॉक्यूमेंट के लिए इस्तेमाल करने वाले
  13431. 8:59:16हैं। ठीक है? और यहां पर मैं क्लिक करता
  13432. 8:59:19हूं। अच्छा, क्रिएट योर ओन ईपीआई
  13433. 8:59:21डॉक्यूमेंट। अच्छा, यह तो डॉक्यूमेंट बना
  13434. 8:59:24रहा है। उसके लिए ईपीआई का डॉक्यूमेंट ऐसे
  13435. 8:59:25दिखेगा कुछ। देखिए इस तरीके से दिखेगा।
  13436. 8:59:28पोस्ट रिक्वेस्ट पेट स पेट इज द एंड पॉइंट
  13437. 8:59:32स्लैश पेट एंड पॉइंट है। पेट आईडी पास
  13438. 8:59:34करनी है और अपलोड इमेज। और यह करता क्या
  13439. 8:59:36है? एक इमेज अपलोड करता है। आप इस पे
  13440. 8:59:38क्लिक करोगे एरो पे तो इसकी डिटेल्स ओपन
  13441. 8:59:40हो जाएगी। ठीक है? इस तरीके से काम करता
  13442. 8:59:42है ये। तो मैं क्या करूंगा? यहां पर आपको
  13443. 8:59:45थोड़ी चीजें बता दूंगा। तो देखिए यहां पर
  13444. 8:59:47अगर आप आते हो प्रोडक्ट्स प्रोडक्ट्स तो
  13445. 8:59:50चलिए ठीक है। अ आप
  13446. 8:59:53लर्न पर रिसोर्सेज में आ जाते हो। डॉक्स
  13447. 8:59:56में जाते हो स्वैगर का डॉक्यूमेंटेशन और
  13448. 8:59:58देखिए ओपन एपीआई स्पेसिफिकेशन तो ओपन
  13449. 9:00:01एपीआई एक ऐसा स्पेसिफिकेशन है जो कि एक
  13450. 9:00:02स्टैंडर्ड फॉर्मेट है। ये एक स्टैंडर्ड है
  13451. 9:00:05एपीआई डिज़ाइन करने के लिए। ठीक है? तो जो
  13452. 9:00:08डॉक्यूमेंटेशन जनरेट होता है वो इस
  13453. 9:00:10स्पेसिफिकेशन को ध्यान में रखकर होता है।
  13454. 9:00:13ठीक है? और इसके लिए आपको क्या करना है?
  13455. 9:00:15आपकी एक आपको एक डिपेंडेंसी बस ऐड कर देनी
  13456. 9:00:18है। और थोड़ा बहुत कॉन्फ़िगरेशन कर देना है
  13457. 9:00:20अपने एप्लीकेशन में। तो मैं क्या करूंगा?
  13458. 9:00:21मैं यहां पर आ जाता हूं। और यहां पर मेन
  13459. 9:00:24रिपॉज़िटरी पर चले जाता हूं। मेवन
  13460. 9:00:26रिपॉज़िटरी तो देखिए mvn रिपॉज़िटरी.com
  13461. 9:00:29यहां पर आप मेवन की रिपॉज़िटरीज़ को सर्च कर
  13462. 9:00:31सकते हो। ठीक है? स्प्रिंग इनिशलाइज़र में
  13463. 9:00:33अगर आप आते हो तो यहां पर स्वैगर अगर आप
  13464. 9:00:35सर्च करोगे तो आपको दिखाई नहीं देगा यहां
  13465. 9:00:37पर स्वैगर। ठीक है? तो इसीलिए हम मेन
  13466. 9:00:38रिपोज़िटरी पर आ रहे हैं। इसकी मेवन
  13467. 9:00:40डिपेंडेंसी जो है उसको हम ले लेंगे। और
  13468. 9:00:42यहां पर मैं सर्च करूंगा स्वैगर WVC।
  13469. 9:00:47ठीक है? स्वैगर वेब एमbसी को अगर मैं सर्च
  13470. 9:00:49करता हूं तो यहां पर देखिए यह है स्वैगर
  13471. 9:00:52ओपन एपीआई अच्छा वेब एमवीसी कहां है? वेब
  13472. 9:00:56एमवीसी तो यही होना चाहिए एक स्वैगर
  13473. 9:00:58एनोटेशंस बोल रहा है यह स्वैगर वेब एमवीसी
  13474. 9:01:01यूआई ऐसे सर्च करता हूं
  13475. 9:01:05स्वैगर यूआई ये तो स्प्रिंग फॉक्स है एक
  13476. 9:01:08हिसाब से
  13477. 9:01:10एक मिनट जी हां स्प्रिंग ओपन एपीआई
  13478. 9:01:14स्टार्टर वेब एमबीसी यूआई तो यह वाली जो
  13479. 9:01:17एपीआई है। इसको आपको क्लिक करना है। ठीक
  13480. 9:01:20है? यह वाली एंड पॉइंट है स्प्रिंग डॉक
  13481. 9:01:23की। ठीक है? आप देख पा रहे हो यह। और यहां
  13482. 9:01:25पर जो लेटेस्ट वर्जन है उस पे क्लिक कर
  13483. 9:01:27देना है। ठीक है? ऐसे। तो ये देखिए आपको
  13484. 9:01:30मिल जाएगा। ठीक है? इसको कॉपी कर लेना है।
  13485. 9:01:34ठीक है? तो देखिए दोस्तों, आप कहोगे कि ये
  13486. 9:01:36स्प्रिंग डॉक क्या है? पहले तो मैं ये
  13487. 9:01:37इसको कॉपी कर लेता हूं। इंक्लूड बैकलिंक्स
  13488. 9:01:39को अनचेक कर देता हूं। तो मुझे बैकलिंक्स
  13489. 9:01:41नहीं चाहिए और इसको कॉपी कर लिया मैंने।
  13490. 9:01:43यहां पर आके फॉर्मxml में इसको ऐड कर देता
  13491. 9:01:45हूं। ठीक है? यहां पर मैंने ऐड कर दिया और
  13492. 9:01:47इसको मेवन रीलोड भी कर लेता हूं। ठीक है?
  13493. 9:01:50अब आप कहोगे स्प्रिंग क्या है? तो यहां पर
  13494. 9:01:52इसकी वेबसाइट भी आपको दिखाई देगी। अच्छा
  13495. 9:01:55यहां पर तो नहीं है वेबसाइट। तो यहां पर
  13496. 9:01:56एक स्टेप बैक जाओगे तो spring.org
  13497. 9:02:00इस पे अगर आप चले जाते हो तो देखिए यह एक
  13498. 9:02:02स्प्रिंग का प्रोजेक्ट है जिसके जरिए आप
  13499. 9:02:05ऑटोमेट कर सकते हो जनरेशन ऑफ एपीआई
  13500. 9:02:08डॉक्यूमेंटेशन यूजिंग स्प्रिंग
  13501. 9:02:10प्रोजेक्ट्स। ठीक है? तो यह स्वैगर का
  13502. 9:02:12इस्तेमाल करता है और देखिए ये स्वैगर uआई
  13503. 9:02:15हम कॉन्फिगर कर सकते हैं इसमें और स्वैगर
  13504. 9:02:17uआई है क्या आप यहां पर देख सकते हो यहां
  13505. 9:02:19पर अगर आप आते हो प्रोडक्ट्स पर अ तो यहां
  13506. 9:02:23पर व्यू डॉक्स नहीं करना चाहूंगा मैं यहां
  13507. 9:02:25पर आ जाता हूं ठीक है और यहां पर
  13508. 9:02:27प्रोडक्ट्स पर स्वैकर यूआई तो नहीं दिखाई
  13509. 9:02:31दे रहा है। अच्छा स्वैकर को क्लिक करता
  13510. 9:02:33हूं।
  13511. 9:02:34स्टूडियो पोर्टल कॉन्ट्रैक्ट टेस्टिंग
  13512. 9:02:38अच्छा यूआई का ऐसा कुछ दिखाई नहीं दे रहा
  13513. 9:02:40है यहां पर तो
  13514. 9:02:44swकरio
  13515. 9:02:45कम्युनिटी
  13516. 9:02:48ठीक है यहां पर यूआई का ऐसा कुछ दिखाई
  13517. 9:02:49नहीं दे रहा बस ये स्क्रीनशॉट दिखाई दे
  13518. 9:02:51रहा है तो मैं क्या करूंगा मैंने
  13519. 9:02:52डिपेंडेंसी तो ऐड कर दी है मैं इसको
  13520. 9:02:54सीधे-सीधे आपको इनेबल करके ही दिखाता हूं
  13521. 9:02:56ठीक है अब डिपेंडेंसी देखिए ऐड हो चुकी है
  13522. 9:02:59और डिपेंडेंसी इज डन अब इसको रन करेंगे ना
  13523. 9:03:02हम रन करेंगे ना तो मैं यहां पर आ जाता
  13524. 9:03:05हूं और यहां पर लोकल होस्ट कोन एटीईटी
  13525. 9:03:09सैगर
  13526. 9:03:12यूआई डॉटhml ये एंड पॉइंट पर आपको आ जाना
  13527. 9:03:16है। ठीक है? ये एंड पॉइंट ऑटोमेटिकली
  13528. 9:03:18इनेबल हो जाएगा जब भी आप स्वैगर की
  13529. 9:03:21डिपेंडेंसी ऐड करते हो। ठीक है? लेकिन
  13530. 9:03:23मेरे हिसाब से ये एक्सेसबल नहीं रहेगा
  13531. 9:03:24क्योंकि स्प्रिंग सिक्योरिटी हमने
  13532. 9:03:26कॉन्फ़िगर कर रखा है। अच्छा तो देखिए
  13533. 9:03:27एक्सेस टू लोकल होज़ वर्ज़ डिनाइड 403 एरर आ
  13534. 9:03:30गई। इसका मतलब ये जो है स्प्रिंग
  13535. 9:03:32सिक्योरिटी इसको इनेबल नहीं कर रहा है।
  13536. 9:03:34ठीक है? तो हमें क्या करना होगा? हमें
  13537. 9:03:36एक्चुअली अ स्प्रिंग सिक्योरिटी को बायपास
  13538. 9:03:38करना होगा यहां पर। तो मैं क्या करूंगा?
  13539. 9:03:40यहां पर आ जाता हूं। अच्छा यहां पर और
  13540. 9:03:43यहां पर हमारी जो सिक्योरिटी कॉन्फ़िगरेशन
  13541. 9:03:45है, वहां पर आ जाते हैं सिक्योरिटी और
  13542. 9:03:49यहां पर चले जाएंगे। और यहां पर मैं लिख
  13543. 9:03:52दूंगा इसको
  13544. 9:03:56डुप्लीकेट और यहां पर लिख दूंगा
  13545. 9:03:59स्वैगर।
  13546. 9:04:00यूआई इस तरीके से ठीक है। स्वगर यूआई लिख
  13547. 9:04:04दिया मैंने और इसको मैं एक हिसाब से रीरन
  13548. 9:04:07कर देता हूं। ठीक है? देखते हैं यहां पर
  13549. 9:04:09क्या होता है। स्वैगर यूआई। ठीक है? ये रन
  13550. 9:04:14हो रहा है। मैंने एंड में HTML हटा दिया
  13551. 9:04:16है। वहां से यूआरएल में से। एंड में HTML
  13552. 9:04:18हटा दिया। स्वैगर Hन UI को रन करता हूं।
  13553. 9:04:21अच्छा यह अभी भी नॉट डिनाइड आ रहा है। ओके
  13554. 9:04:25एक हिसाब से
  13555. 9:04:28स्वगर हफन जुई।
  13556. 9:04:36ठीक है? तो ये कॉन्फ़िगरेशन को थोड़ा
  13557. 9:04:38इंप्रूव करना चाहिए। ये इशू को सॉल्व करने
  13558. 9:04:40के लिए। तो स्वैगर UI को तो आपने ऐड कर
  13559. 9:04:43दिया है। लेकिन मैं और एक दो चीज़ ऐड
  13560. 9:04:45करूंगा यहां पर। तो इसको कॉपी कर लेता हूं
  13561. 9:04:46मैं सबसे पहले तो। ठीक है? यहां पर इसको
  13562. 9:04:50रिपीट कर देता हूं। ठीक है? तीन बार मैंने
  13563. 9:04:52ऐड कर दिया इसको। ठीक है? तो यहां पर ऐसे
  13564. 9:04:55लिखूंगा। सो दैट आप लोगों को दिखाई भी दे
  13565. 9:04:57कि मैं लिख क्या रहा हूं। ठीक है? तो
  13566. 9:04:59स्वैगर यूआई है और फॉरवर्ड स्लैश डाला है।
  13567. 9:05:02यहां पर मैं HTML लिख देता हूं। ठीक है?
  13568. 9:05:04तो HTML को अगर आप एक्सेस करते हो तो वो
  13569. 9:05:06इनेबल्ड रहेगा। वहां पे कोई सिक्योरिटी
  13570. 9:05:09नहीं है। ठीक है? और स्लैश स्वैगर UI और
  13571. 9:05:12उसके आगे आप कोई पाथ डालते हो तो वो भी
  13572. 9:05:14इनेबल्ड है। ठीक है? एक और चीज को हमें
  13573. 9:05:16इनेबल करना चाहिए जो कि अ एक प्रैक्टिस
  13574. 9:05:20है। तो मैं ऐड करूंगा ईपीआई वी3 टॉक्स।
  13575. 9:05:24ठीक है? तो V3
  13576. 9:05:26ईपीआई टॉक्स ऐसे ठीक है? इसको भी इनेबल कर
  13577. 9:05:30दिया है। आई थिंक इससे चल जाना चाहिए। ठीक
  13578. 9:05:32है? तो तीन पैटर्न्स तो ये जो पहले का
  13579. 9:05:34पैटर्न था मैंने उसको इंप्रूव किया है।
  13580. 9:05:36तीन पैटर्न्स ऐड किए। स्वैगर UI HTML
  13581. 9:05:38स्वैगर UI स्टारstar और P3 API DX ठीक है?
  13582. 9:05:42अब यहां पर अगर मैं आ जाता हूं, यहां पर
  13583. 9:05:44इसको रीलोड करता हूं। तो देखिए ये यूआई
  13584. 9:05:46जनरेट हो गया। ठीक है? अब इसके थ्रू हम
  13585. 9:05:49लोग जाएंगे। लेकिन मैं सबसे पहले तो यहां
  13586. 9:05:50पर आ जाता हूं। यहां पर आपको एक चीज बता
  13587. 9:05:53दूं। देखिए यहां पर आपको यहां पर लॉग्स
  13588. 9:05:55में आपको काफी सारी चीजें दिख जाएगी। यहां
  13589. 9:05:57पर आप देख सकते हो। देखिए पहले तो
  13590. 9:05:59एप्लीकेशन स्टार्ट हो गई थी यहां तक। ठीक
  13591. 9:06:02है? फिर यहां पर आप देखोगे स्प्रिंग डॉक्स
  13592. 9:06:04से एक अ ये लॉक जनरेट हुआ है। क्योंकि v3
  13593. 9:06:08एपीआई डॉक्स एंड पॉइंट इज़ इनेबल्ड बाय
  13594. 9:06:11डिफ़ॉल्ट। यह इनेबल्ड है और डिसेबल करने के
  13595. 9:06:14लिए आपको यह प्रॉपर्टी का इस्तेमाल करना
  13596. 9:06:16है। यह आप अगर आप एप्लीकेशन प्रॉपर्टीज़
  13597. 9:06:18में ऐड कर देते हो प्रोडक्शन के लिए। ठीक
  13598. 9:06:21है? तो देखिए प्रोडक्शन के लिए क्यों बोल
  13599. 9:06:23रहा है? क्योंकि जनरली प्रोडक्शन ग्रेड
  13600. 9:06:24एप्लीकेशनेशंस में ना जनरली एपीआई डॉक्स
  13601. 9:06:26डिसेबल रखते हैं। ठीक है? डेवलपमेंट मोड
  13602. 9:06:29ये सब जगह पर इनेबल रखते हैं। लेकिन
  13603. 9:06:31प्रोडक्शन में आप अगर इनेबल कर रहे हो तो
  13604. 9:06:33इसको प्रॉपर सिक्योरिटी के साथ इनेबल करना
  13605. 9:06:35है। तो हर कोई देख पाएगा। करेक्ट? तो इसको
  13606. 9:06:38डिसेबल करने के लिए आपको ये प्रॉपर्टी का
  13607. 9:06:39इस्तेमाल करना है और स्वैगर uआई भी जनरेट
  13608. 9:06:42हो चुका है। देखिए ये यहां पर बोल रहा है
  13609. 9:06:44स्लैश swagगर ui.html और अगर इसको ये
  13610. 9:06:47डिसेबल करना है तो आपको ये प्रॉपर्टी ऐड
  13611. 9:06:49करनी है एप्लीकेशन प्रॉपर्टीज में। तो ये
  13612. 9:06:50आपको ये दो डॉक्स दे रहा है और इसको
  13613. 9:06:52डिसेबल कैसे करना है वो भी आपको बोल रहा
  13614. 9:06:54है। V3 डॉट एपीआई डॉक्स पर अगर आप जाते हो
  13615. 9:06:58यहां पर ठीक है? ऐसे
  13616. 9:07:01तो यह देखिए आपको इस तरीके से चेसन
  13617. 9:07:03फॉर्मेट में सारी एंड पॉइंट्स का यह मिल
  13618. 9:07:06जाएगा। सारी एंड पॉइंट्स और यहां पर देखिए
  13619. 9:07:09अभी फॉर एग्जांपल यहां पर अगर आप आते हो
  13620. 9:07:11तो रजिस्टर रिक्वेस्ट में क्या-क्या है?
  13621. 9:07:13ये पूरी पूरा जो डीटीओ है उसमें क्या-क्या
  13622. 9:07:15है? ये सारी चीजें आपको यहां पर दिख
  13623. 9:07:16जाएगी। एक हिसाब से यू नो jसन फॉर्मेट में
  13624. 9:07:19उसने दे दिया है सब कुछ आपको। ठीक है? तो
  13625. 9:07:22ये है। अब मैं बैक आ जाता हूं स्वैगर यूआई
  13626. 9:07:25पे। तो देखिए स्वैगर uआई है। यहां पर आप
  13627. 9:07:27देख सकते हो। तो देखिए यहां पर स्कीमाज़
  13628. 9:07:29हैं। यह सारे स्कीमाज़ हैं। यहां पर आपको
  13629. 9:07:32देखने मिल जाएगा। रिकमेंडेशन रिक्वेस्ट
  13630. 9:07:33में क्या-क्या चाहिए? रिकमेंडेशन के लिए
  13631. 9:07:35आप अगर कोई रिक्वेस्ट भेजते हो तो इस
  13632. 9:07:37तरीके से आपको डाटा भेजना है। ठीक है? मैं
  13633. 9:07:39आपको एक डेमो दे देता हूं यहां पर रजिस्टर
  13634. 9:07:41का। रजिस्टर में आप देख सकते हो। देखिए
  13635. 9:07:42मैंने इसको ओपन किया। तो यहां पर काफी
  13636. 9:07:44सारी डिटेल्स आपको दिखाई देगी। जैसे कि
  13637. 9:07:46पैरामीटर्स। ठीक है? तो यहां पर
  13638. 9:07:48पैरामीटर्स क्या-क्या है आपको? ठीक है? तो
  13639. 9:07:50पैरामीटर्स तो कोई भी नहीं है। फिलहाल
  13640. 9:07:52पैरामीटर्स मतलब यूआरएल पैरामीटर्स। तो
  13641. 9:07:54देखिए जैसे यहां पर यूजर आईडी पास कर रहे
  13642. 9:07:55हो आप ये एंड पॉइंट में। तो देखिए यहां पर
  13643. 9:07:58पैराटर्स यूजर आईडी ठीक है लेकिन रजिस्टर
  13644. 9:08:01में कोई पैरामीटर है नहीं यूआरएल
  13645. 9:08:02पैरामीटर्स तो यहां पर नो पैरामीटर्स
  13646. 9:08:04रिक्वेस्ट बॉडी में इतनी चीजें बताई गई है
  13647. 9:08:06आपको ठीक है और यहां पर देखिए एग्जांपल भी
  13648. 9:08:08आपको दिया गया है यूजर @ examplecom
  13649. 9:08:11पासवर्ड में स्ट्रिंग फर्स्ट नेम में
  13650. 9:08:12स्ट्रिंग लास्ट नेम में स्ट्रिंग और रोल
  13651. 9:08:14में यूजर यूजर डिफॉल्ट ठीक है और ये आपको
  13652. 9:08:19बताया गया है यहां पर और आपको
  13653. 9:08:21रिस्पॉन्ससेस 200 ओके आएगा और जो आउटपुट
  13654. 9:08:24है वह इस फॉर्मेट में आएगा आप देख सकते
  13655. 9:08:27ठीक है? लॉग इन भी आपको यहां पर दिखाई
  13656. 9:08:29देगा। देखिए सारे एंड पॉइंट्स के जो डाटा
  13657. 9:08:31है वह आप देख सकते हो। देखिए लॉग इन में
  13658. 9:08:33आप अगर सक्सेसफुली लॉग इन करते हो टोकन
  13659. 9:08:35मिलेगा और फिर यूजर की इनेशन इस तरीके से
  13660. 9:08:38सारी जो एंड पॉइंट्स है उसका डेटा आपको इस
  13661. 9:08:40तरीके से मिलेगा और आप इसको टीम्स के साथ
  13662. 9:08:43शेयर कर सकते हो। किसी के साथ भी शेयर कर
  13663. 9:08:45सकते हो। ठीक है? तो यह देखिए यहां पर V3
  13664. 9:08:47एपीआई डॉक्स का भी लिंक है यहां पर। ठीक
  13665. 9:08:50है? तो ये सारी इनेशन आपको प्रोवाइड कर दी
  13666. 9:08:54गई है यहां पर। ठीक है? तो उम्मीद करता
  13667. 9:08:57हूं यह हेल्पफुल रहा। आप है ना इसको थोड़ा
  13668. 9:09:00कस्टमाइज भी कर सकते हो अगर आपको चाहिए
  13669. 9:09:02तो। तो यहां पर ओपन एपीआई डॉक डेफिनेशन आ
  13670. 9:09:05रहा है। ठीक है? मुझे यहां पर कुछ कस्टम
  13671. 9:09:07नेम डालना है। मैं वो भी कर सकता हूं। तो
  13672. 9:09:09उसके लिए क्या करना है? आप यहां पर आ सकते
  13673. 9:09:12हो और एक सेंट्रलाइज़्ड कॉन्फ़िगरेशन डिफाइन
  13674. 9:09:14कर सकते हो। तो, यहां पर देखिए, मैं एक
  13675. 9:09:15जावा क्लास बना लेता हूं। और यहां पर
  13676. 9:09:17लिखता हूं कॉन्फ़िग डॉट ओपन एपीआई कॉन्फ़िग
  13677. 9:09:22ऐसे। ठीक है? ठीक है? अब ये ओपन एपीआई
  13678. 9:09:24कॉन्फ़िग है और यहां पर इसको सबसे पहले
  13679. 9:09:26कॉन्फ़िगरेशन मार्क कर देता हूं। इस तरीके
  13680. 9:09:28से और यहां पर मैं लिखूंगा एक बीन। ठीक
  13681. 9:09:32है? और यहां पर बोलूंगा पब्लिक ओपन एपीआई
  13682. 9:09:36देखिए ओपन एपीआई और ये स्वैगर से आ रही
  13683. 9:09:38है। देखिए iO स्वैगर V3 OS डॉट मॉडल्स ये
  13684. 9:09:41लेना है आपको फिर कस्टम एपीआई इस तरीके
  13685. 9:09:44से।
  13686. 9:09:46ठीक है? और यहां पर अ आपको रिटर्न करना है
  13687. 9:09:50न्यू ओपन एपीआई। अच्छा सॉरी ओपन ईपीआई ऐसे
  13688. 9:09:55और यहां पर आपको लिखना है डॉट इनफो ऐसे और
  13689. 9:10:00यहां पर न्यू इनफो का ऑब्जेक्ट पास करना
  13690. 9:10:01है आपको इनफो ठीक है ऐसे और यहां पर लिखना
  13691. 9:10:06है डॉट टाइटल टाइटल में आपको लिखना है
  13692. 9:10:09फिटनेस ट्रैकिंग एपीआई जो भी आपको देना है
  13693. 9:10:14लाइक टाइटल वो आप दे ही सकते हो यहां पर
  13694. 9:10:15और सेमी कॉललन ऐड कर दीजिए ठीक है इतना हो
  13695. 9:10:18गया तो
  13696. 9:10:21अब मैं अच्छा इसको एंटर कर देता हूं। अब
  13697. 9:10:23इसको रन करके देखते हैं कि ये एक्चुअली
  13698. 9:10:25में पिक होता है या नहीं। ठीक है? इसको रन
  13699. 9:10:28करके देखेंगे। तो आउटपुट में आइडियली आना
  13700. 9:10:31तो चाहिए। ठीक है? तो यहां पर देखिए ये रन
  13701. 9:10:35हो गई है। अब यहां पर ओपन एपीआई डेफिनेशन
  13702. 9:10:37लिखी हुई है। देखते हैं टाइटल क्या होता
  13703. 9:10:38है। देखिए फिटनेस ट्रैकिंग एपीआई। देखिए
  13704. 9:10:41टाइटल हमने चेंज कर दिया। करेक्ट? अब यहां
  13705. 9:10:43पर वर्जनंस वगैरह सब कुछ डिफाइन कर सकते
  13706. 9:10:45हो। तो यहां पर देखिए इनफो में आइएगा। यह
  13707. 9:10:47जो इनफो वाली जो हमने ऑब्जेक्ट बनाई है
  13708. 9:10:50यहां पर इस इनफो के ऑब्जेक्ट में आप कुछ
  13709. 9:10:53भी ऐड कर सकते हो। तो देखिए यहां पर मैं
  13710. 9:10:54कहता हूं डॉट तो देखिए यहां पर कितनी सारी
  13711. 9:10:57चीजें हैं। आप देख पा रहे हो डॉट अगर करते
  13712. 9:10:59हो तो यहां पर वर्जन है सबसे पहले तो मैं
  13713. 9:11:01वर्जन लिख सकता हूं वर्जन 1.0। ठीक है?
  13714. 9:11:05यहां पर मैं डॉट डाल के टाइटल मैंने ऐड कर
  13715. 9:11:07दिया। डिस्क्रिप्शन दे सकता हूं यहां पर
  13716. 9:11:09ऐसे। ठीक है? तो यहां पर लिख दूंगा
  13717. 9:11:11प्रोडक्शन क्रिएट
  13718. 9:11:13ईपीआई ऐसे करके। कोई भी डिस्क्रिप्शन आप
  13719. 9:11:16दे सकते हो। आपको कांटेक्ट इनेशन कुछ देनी
  13720. 9:11:19है तो वह भी आप दे सकते हो। ठीक है? डॉट
  13721. 9:11:20कांटेक्ट देखिए कांटेक्ट आप बना सकते हो।
  13722. 9:11:23यहां पर कांटेक्ट आप बनाइए न्यू कांटेक्ट
  13723. 9:11:26और जो भी सपोर्ट प्रोवाइड कर रहा है उसका
  13724. 9:11:29आप नाम दे सकते हो इस एपीआई के लिए जो भी
  13725. 9:11:31सपोर्ट प्रोवाइड कर रहा है। तो डॉट नेम तो
  13726. 9:11:34नेम क्या होगा? आप लिख दीजिए। अह नेम आप
  13727. 9:11:38लिख सकते हैं कुछ भी। तो मैं लिखता हूं
  13728. 9:11:39एमbarkx। ठीक है? ये मेरी कंपनी का नाम
  13729. 9:11:42है। और यहां पर यूआरएल लिख दीजिए। तो
  13730. 9:11:44यूआरएल में मैं लिख सकता हूं markx.com
  13731. 9:11:48ऐसे पूरा का पूरा यूआरएल https
  13732. 9:11:52ठीक है ये हो गया मेरा कांटेक्ट ईमेल भी
  13733. 9:11:54आप लिख सकते हो ईमेल तो [email protected]
  13734. 9:11:59ऐसे ठीक है इतनी चीजें आ गई। लाइसेंस
  13735. 9:12:02वगैरह भी आप लिख सकते हो। यहां पर लाइसेंस
  13736. 9:12:04की भी इनेशन आप दे सकते हो। देखिए लाइसेंस
  13737. 9:12:06और अगर आप चाहते हो तो यहां पर न्यू
  13738. 9:12:08लाइसेंस ऐसे लिख दीजिए। ठीक है? और यहां
  13739. 9:12:10पर नेम आ जाएगा लाइसेंस का। लाइसेंस का
  13740. 9:12:13नेम क्या है? अपाचे। फॉर एग्जांपल मैं
  13741. 9:12:15Apache का लाइसेंस लिख रहा हूं 2.0 का।
  13742. 9:12:17ठीक है? और जो भी यूआरएल है वह आप ऐड कर
  13743. 9:12:20सकते हो। डॉट urlल लाइसेंस का। तो यहां पर
  13744. 9:12:22urlल लिख दीजिए https google.com
  13745. 9:12:26या mbkgx.com खुद की वेबसाइट लगा देंगे
  13746. 9:12:29हम। ठीक है? इसको रन कर देते हैं। ठीक है?
  13747. 9:12:33और यह रन हो रही है। रन हो चुकी है। और
  13748. 9:12:38यहां पर अगर आप आते हो तो देखिए यह सारी
  13749. 9:12:40चीजें जो हमने ऐड की है वो यहां पर दिखाई
  13750. 9:12:42देगी आपको। देखिए प्रोडक्शन ग्रेड एपीआई
  13751. 9:12:44ये डिस्क्रिप्शन है। डिस्क्रिप्शन मैंने
  13752. 9:12:46काफी छोटा लिखा है एक लाइन का लाइक तीन ही
  13753. 9:12:47वर्ड्स लिखे हैं। आपको चाहिए पैरा लिख
  13754. 9:12:49दीजिए। कुछ बड़ा बड़ी चीज लिख दीजिए।
  13755. 9:12:51mbarkx वेबसाइट देखिए mbx.com सेंड ईमेल
  13756. 9:12:55टू mbarkx ठीक है? जो भी आपको लिखना है
  13757. 9:12:58लाइसेंस की इनेशन यहां पर मिल जाएगी। और
  13758. 9:13:00ये क्लिक करोगे तो एक्चुअली ये वेबसाइट पर
  13759. 9:13:01जाएगा। ठीक है? देखिए। ठीक है? तो ये सारी
  13760. 9:13:05की सारी चीजें यहां पर आपको दिख सकती है।
  13761. 9:13:06अब आप फ्यूचर में कोई एंड पॉइंट ऐड करोगे
  13762. 9:13:08तो यह डॉक्यूमेंट जो है ये जो यूआई है ये
  13763. 9:13:11ऑटो जनरेट हो रखा है। ठीक है? हमने जनरेट
  13764. 9:13:14नहीं कर रखा है। ये ये ऑटो जनरेट हो चुका
  13765. 9:13:16है। तो ये बेसिकली ऑटो जनरेट होगा और सारी
  13766. 9:13:20की सारी चीजें खुद से मैनेज होगी। आपको
  13767. 9:13:22मैनेज करने की जरूरत ही नहीं है। उम्मीद
  13768. 9:13:24करता हूं यह हेल्पफुल रहा और मुझे बताइए
  13769. 9:13:27यह आपको कैसा लगा यह वाला फीचर अ स्प्रिंग
  13770. 9:13:30की मदद से। स्प्रिंग स्प्रिंग बूट की मदद
  13771. 9:13:32से और स्वैगर की मदद से कैसा लगा यह आपको?
  13772. 9:13:40तो दोस्तों, अब बात करना चाहूंगा
  13773. 9:13:42कंटेनराइजेशन
  13774. 9:13:44यानी कि डॉकर के बारे में। ठीक है? तो
  13775. 9:13:46यहां पर लिख देता हूं डॉकर। तो डॉकर
  13776. 9:13:49समझेंगे कि क्या है और क्या प्रॉब्लम
  13777. 9:13:51सॉल्व करता है। ठीक है? तो देखिए अगर आपने
  13778. 9:13:56डेवलपमेंट की किया है अपने करियर में तो
  13779. 9:14:00आपने यह प्रॉब्लम के बारे में जरूर सुनना
  13780. 9:14:02होगा। देखिए प्रॉब्लम क्या होती है? एक
  13781. 9:14:03डेवलपर अपने मशीन पर तो यह मशीन वन है या
  13782. 9:14:06डेव वन है। ठीक है? डेवलपर इसने अपने मशीन
  13783. 9:14:09पर एक एप्लीकेशन बनाई और उसने यही
  13784. 9:14:11एप्लीकेशन दूसरे डेवलपर को भेजी। ठीक है?
  13785. 9:14:14अब दूसरा डेवलपर बोल रहा है अच्छा मेरे
  13786. 9:14:17मशीन पे तो नहीं चल रही है भाई। ठीक है?
  13787. 9:14:19तो फिर क्या होता है? दोनों डेवलपर्स क्या
  13788. 9:14:22करते हैं? देखते हैं अच्छा क्या ब्रेक हो
  13789. 9:14:24रहा है। तो डेवलपर वन बोलेगा अच्छा मेरे
  13790. 9:14:26मशीन पे तो jवा 17 इंस्टॉल्ड है और डेव टू
  13791. 9:14:30बोलेगा अच्छा मेरे पास तो जावा 25
  13792. 9:14:31इंस्टॉल्ड है जो लेटेस्ट वर्जन है। मेरे
  13793. 9:14:34पास ये वाली डिपेंडेंसी ये वर्जन की है और
  13794. 9:14:36ये बोलेगा मेरे पास ये वर्जन की है। ये
  13795. 9:14:38वाला बोलेगा मेरे पास ये डिपेंडेंसी
  13796. 9:14:39इंस्टॉल्ड है। ये बोलेगा मेरे पास ये
  13797. 9:14:41इंस्टॉल्ड नहीं है। तो यहां पर समझ रहे हो
  13798. 9:14:43प्रॉब्लम क्या हो रहा है? सबसे पहले तो
  13799. 9:14:46देखिए सेम एप्लीकेशन है लेकिन वो रन नहीं
  13800. 9:14:48कर पा रहा दूसरे के सिस्टम पर।
  13801. 9:14:50एक ही सिस्टम पर रन कर पा रहा है। क्यों?
  13802. 9:14:52क्योंकि जो पैकेजेस है यानी कि जो
  13803. 9:14:55डिपेंडेंसी है उसका वर्जन मिसमैच हो रहा
  13804. 9:14:57है। पहले तो मिसमैच या तो फिर दूसरा एक
  13805. 9:15:01इशू हो सकता है जो कि है जो डिपेंडेंसी है
  13806. 9:15:04यानी कि जो डिपेंडेंसी
  13807. 9:15:08नॉट प्रेजेंट।
  13808. 9:15:10ठीक है? तो एक है वर्जन मिसमैच और दूसरा
  13809. 9:15:13है डिपेंडेंसी प्रेजेंट है नहीं। ठीक है?
  13810. 9:15:16तो डेफ टू के पास या तो वर्जन मिसमैच है
  13811. 9:15:19या तो डिपेंडेंसी प्रेजेंट नहीं है। ठीक
  13812. 9:15:21है? तो इन दोनों में से कोई एक रीज़न हो
  13813. 9:15:23होता है जनरली और फिर क्या होता है? ये
  13814. 9:15:25लोग एक दूसरे की कंपैरिजन करते हैं और फिर
  13815. 9:15:27डेव टू को वर्जन चेंज करना होगा अपने
  13816. 9:15:29सिस्टम पर ताकि वो एप्लीकेशन रन कर पाए।
  13817. 9:15:32ठीक है? तो ऐसा काम चलता चलता है जनरली अ
  13818. 9:15:36यू नो सॉफ्टवेयर वर्ल्ड में। लेकिन अभी
  13819. 9:15:38रिसेंटली ऐसा काम नहीं चलता है। ठीक है?
  13820. 9:15:40डॉकर की मदद से। ठीक है? तो डॉकर क्या है?
  13821. 9:15:43डॉकर एक ऐसा सॉफ्टवेयर है जो हमें
  13822. 9:15:46कंटेनर्स बनाने में मदद करता है। कंटेनर्स
  13823. 9:15:49अब कंटेनर्स का मतलब क्या होता है? ठीक
  13824. 9:15:51है? तो देखिए ये जो एप्लीकेशन डेव वन ने
  13825. 9:15:53डेव टू को भेजी डेव वन क्या करेगा? डेव वन
  13826. 9:15:57अपनी एप तो अपनी एक एप्लीकेशन को लेगा
  13827. 9:16:00ऐसे। ये हो गई उसकी ऐप यहां पर। ठीक है?
  13828. 9:16:04ऐप। तो ऐप का कोड वो लेगा और उसको पैकेज
  13829. 9:16:09करेगा एक डॉकर अ एक कंटेनर में बेसिकली।
  13830. 9:16:13ठीक है? अब कंटेनर क्या है? कंटेनर में
  13831. 9:16:15एप्लीकेशन का सोर्स कोड होगा। एप्लीकेशन
  13832. 9:16:17के डिपेंडेंसीज़ होगी विद राइट वर्शन। ठीक
  13833. 9:16:20है? ठीक है? राइट वर्जन नहीं लिखता हूं
  13834. 9:16:22ज्यादा बड़ा हो रहा है। लेकिन डिपेंडेंसीज़
  13835. 9:16:23होगी और सारे रिक्वायर्ड चीज़ होंगे।
  13836. 9:16:26रिक्वायर्ड थिंग्स। ठीक है? और वो भी सही
  13837. 9:16:28वर्जन के साथ। तो ये क्या करेगा? एक ऐसा
  13838. 9:16:31पैकेज बना के फिर वो भेजेगा डेव टू को और
  13839. 9:16:35डेव टू को कुछ नहीं करना है। डेव टू को बस
  13840. 9:16:36रन करना है क्योंकि ये जो कंटेनर है इसमें
  13841. 9:16:39एप्लीकेशन भी है। एप्लीकेशन को जो भी
  13842. 9:16:41डिपेंडेंसीज चाहिए ठीक है? तो डिपेंडेंसी
  13843. 9:16:45ठीक है?
  13844. 9:16:51ठीक है? जो डिपेंडेंसीज चाहिए वो सारी
  13845. 9:16:53चीजें इस कंटेनर में ही है। तो उसको बस रन
  13846. 9:16:56करना है बस और कुछ नहीं। ठीक है? तो अब
  13847. 9:16:58देखिए अगर एप्लीकेशन है java 17 डिपेंडेंट
  13848. 9:17:01और डेव 2 के पास है java 25 इंस्टॉल्ड
  13849. 9:17:04उसके सिस्टम पर तो कुछ लेना देना ही नहीं
  13850. 9:17:06है क्योंकि ये कंटेनर में रन हो रहा है और
  13851. 9:17:08कंटेनर में ऑलरेडी जावा 17 प्रोवाइड किया
  13852. 9:17:10होगा भले ही इसके सिस्टम पर java 25 है
  13853. 9:17:13लेकिन एप्लीकेशन कंटेनर से ही लेगा
  13854. 9:17:16क्योंकि वो एक कंटेनर में रन हो रहा है और
  13855. 9:17:17यह एक सेपरेट सिस्टम की तरह है ठीक है
  13856. 9:17:20लाइट वेट सिस्टम मैं पूरा के पूरा सिस्टम
  13857. 9:17:22नहीं कहूंगा लाइट वेट सिस्टम की तरह
  13858. 9:17:24आइसोलेटेड वे में वह रन हो रहा है ऑन
  13859. 9:17:26डेवटस मशीन
  13860. 9:17:28ठीक है? तो ये हो गया कंटेनराइजेशन। अब
  13861. 9:17:30कंटेनराइजेशन क्या प्रॉब्लम सॉल्व करता
  13862. 9:17:32है? कंटेनराइजेशन सॉल्व करता है। इट
  13863. 9:17:34वर्क्स ऑन माय मशीन का प्रॉब्लम। तो मेरे
  13864. 9:17:36मशीन पे चल रहा है। क्यों? तो फिर देख
  13865. 9:17:39लीजिए वर्जन मिसमैच है। वर्जन अपडेट्स करो
  13866. 9:17:41अ जिसके मशीन पर नहीं चल रहा है और ये
  13867. 9:17:43वर्जन पे आओ क्योंकि सॉफ्टवेयर को वो
  13868. 9:17:44वर्जन चाहिए और फिर एप्लीकेशन को रन करो।
  13869. 9:17:47तो कंटेनराइज़ेशन ये प्रॉब्लम एक्चुअली में
  13870. 9:17:49सॉल्व करता है। ठीक है? तो अब यहां पर कुछ
  13871. 9:17:52टर्मिनोलॉजीस समझ लेते हैं हम। तो ये जो
  13872. 9:17:54कंटेनराइजेशन की जो टेक्नोलॉजी है ये हमें
  13873. 9:17:57मदद करती है डॉकर। डॉकर मदद करती है हमें
  13874. 9:18:00ये कंटेनराइजेशन की जो टेक्नोलॉजी है उसको
  13875. 9:18:02इस्तेमाल करने में। ठीक है? और यहां पर
  13876. 9:18:04कुछ टर्मिनोलॉजीस हैं। तो सबसे पहली
  13877. 9:18:06टर्मिनोलॉजी तो है अ सबसे पहली जो
  13878. 9:18:09टर्मिनोलॉजी है जो वो है इमेजेस।
  13879. 9:18:12तो देखिए आप जभी भी एप्लीकेशन को अलोंग
  13880. 9:18:15विद डिपेंडेंसीज़ इस तरीके से पैकेज करना
  13881. 9:18:17चाहते हो। कंटेनर की तरह फॉर्म में रन
  13882. 9:18:19करना चाहते हो तो आप डायरेक्टली कंटेनर के
  13883. 9:18:21फॉर्म में रन नहीं कर सकते हो। आपको पहले
  13884. 9:18:23उसकी इमेजज़ बनानी है। इमेज क्या है? इमेज
  13885. 9:18:26एक हिसाब से मैं कहूंगा रेसिपी है फॉर
  13886. 9:18:30कंटेनर्स। ठीक है? तो रेसिपी है फॉर
  13887. 9:18:33कंटेनर्स। इसका मतलब क्या हुआ? कि इमेज
  13888. 9:18:35में इमेज एक हिसाब से एक टेंपलेट है और उस
  13889. 9:18:39टेंपलेट का इस्तेमाल करके जो कंटेनर्स हैं
  13890. 9:18:42वो क्रिएट होंगे। ठीक है? और कंटेनर्स
  13891. 9:18:45क्या है? कंटेनर्स
  13892. 9:18:48रनिंग इंस्टेंस है।
  13893. 9:18:51ठीक है? अगर आप किसी इमेज अगर आप कोई ऐप
  13894. 9:18:55को रन करते हो विद इन द कंटेनर्स तो उसे
  13895. 9:18:57कहते हैं कंटेनर्स। ठीक है? वो आप किसी तो
  13896. 9:19:00इस तरीके से सेल्फ डिपेंडेंट तरीके से रन
  13897. 9:19:02करते हो। ठीक है? एक आइसोलेटेड एनवायरमेंट
  13898. 9:19:04में उसे कहते हैं कंटेनर्स और वो रनिंग
  13899. 9:19:06इंस्टेंस है एप्लीकेशन का। कंटेनर को कैसे
  13900. 9:19:08बनाया जाता है? कंटेनर को बनाया जाता है
  13901. 9:19:09इमेजज़ से। ठीक है? तो ये दो टर्मिनोलॉजीस
  13902. 9:19:12हैं जो आपको समझने की जरूरत है यहां पर
  13903. 9:19:15क्योंकि हम डॉकर की बात कर रहे हैं और
  13904. 9:19:16डॉकर एक ऐसी टेक्नोलॉजी है जो हमें हेल्प
  13905. 9:19:19करता है इमेजेस कंटेनर्स ये सब बनाने और
  13906. 9:19:22रन करने में ठीक है तो यहां पर आ जाएंगे
  13907. 9:19:24हम और यहां पर हम सर्च करेंगे डॉकर को और
  13908. 9:19:28यहां पर आपको देखिए ये एक ऐसा वेबसाइट
  13909. 9:19:32दिखाई देगा dkercom आप डायरेक्टली भी इस
  13910. 9:19:33पर आ सकते हो ठीक है तो देखिए ये थोड़ा एi
  13911. 9:19:36रिलेटेड थोड़ा यहां पर आ चुका है ठीक है
  13912. 9:19:38लेकिन यहां पर अगर आप देखते हो तो आप इसके
  13913. 9:19:40बारे में पढ़ोगे अगर तो ये देखिए इमेजेस
  13914. 9:19:43एप्लीकेशनेशंस ये ये सारी चीजें आपको
  13915. 9:19:45देखने मिल जाएगी यहां पर। ठीक है? तो
  13916. 9:19:47अक्सर ये है ना वेबसाइट्स चेंज करते रहते
  13917. 9:19:49हैं। तो हो सकता है आपने जब विजिट किया है
  13918. 9:19:51ठीक है? आप आप जब विजिट करोगे ये वीडियो
  13919. 9:19:53देखकर हो सकता है यहां पर काफी सारे बदलाव
  13920. 9:19:56आ चुके हो। ठीक है? लेकिन ये होता है
  13921. 9:19:59कंटेनराइजेशन की टेक्नोलॉजी और डॉकर की
  13922. 9:20:01टेक्नोलॉजी मदद करती है हमें
  13923. 9:20:03एप्लीकेशनेशंस को शेयर करने में, रन करने
  13924. 9:20:05में, सब कुछ करने में। ठीक है? यहां पर
  13925. 9:20:07डार्क मोड है नहीं लेकिन लाइट मोड में ही
  13926. 9:20:10रखता हूं फिलहाल इसे। ठीक है? तो यहां पर
  13927. 9:20:11देखिए ये अगर इसको आपको इंस्टॉल करना है
  13928. 9:20:14यानी कि अगर आपको कंटेनर्स अपने लोकल मशीन
  13929. 9:20:16पर बनाना है तो आपको लगेगा डॉकर डेस्कटॉप।
  13930. 9:20:19डॉकर डेस्कटॉप अवेलेबल है Mac, Windows,
  13931. 9:20:22Linux सभी जगह पर। तो, आप इसे डाउनलोड कर
  13932. 9:20:25सकते हो। यह फ्री होता है। प्लान वगैरह
  13933. 9:20:26चूज़ नहीं करना। ठीक है? यह फ्री में
  13934. 9:20:28इस्तेमाल होता है। ठीक है? तो, यहां से
  13935. 9:20:30डाउनलोड कर लेना और बस यू आर ऑल गुड टू
  13936. 9:20:33गो। ठीक है? तो, यह हो गया डॉकर के बारे
  13937. 9:20:35में। अब डॉकर एक ऐसा सॉफ्टवेयर है जो आपको
  13938. 9:20:38कंटेनर्स इमेजज़ क्रिएट करने में मदद करता
  13939. 9:20:40है, रन करने में मदद करता है। ठीक है? अब
  13940. 9:20:43आप अगर यहां पर आते हो तो आपको यहां पर
  13941. 9:20:44दिखाई देगा Docker hub। तो Docker hub पे
  13942. 9:20:47अगर आप जाते हो तो देखिए अगर आप इमेजज़
  13943. 9:20:49बनाते हो तो आप उसे शेयर भी करना चाहोगे।
  13944. 9:20:52तो Dockerk hub एक ऐसा प्लेटफार्म है जहां
  13945. 9:20:55पर आप आपकी बनाई इमेजज़ को शेयर कर सकते हो
  13946. 9:20:58पब्लिकली। और दुनिया में कोई भी उसे
  13947. 9:20:59डाउनलोड कर सकता है और रन कर सकता है अपने
  13948. 9:21:01सिस्टम पर अगर उसके पास डॉकर इंस्टॉल्ड है
  13949. 9:21:05तो और अगर आपकी इमेज पब्लिक है तो ठीक है
  13950. 9:21:07तो ये जरूरी क्यों है देखिए मैंने मान
  13951. 9:21:09लीजिए एक एप्लीकेशन बनाया कुछ बढ़िया सी
  13952. 9:21:11ऐप बना दी और मैं चाहता हूं कि कोई भी उसे
  13953. 9:21:14डाउनलोड करके रन कर पाए तो मैं उसका एक
  13954. 9:21:17इमेज बनाकर डॉकर अप पे रख सकता हूं और
  13955. 9:21:19उसके इंस्ट्रक्शंस डाल सकता हूं कि अगर आप
  13956. 9:21:22इंटरेस्टेड हो तो आप उसे डाउनलोड करके रन
  13957. 9:21:24कर सकते हो। तो वर्ल्ड में कोई भी होगा वो
  13958. 9:21:26उसे डाउनलोड करेगा इमेज को और डॉकर उसके
  13959. 9:21:28सिस्टम पर भी होना चाहिए रन करने के लिए
  13960. 9:21:30और फिर उसे रन कर पाएगा। ठीक है? और डॉकर
  13961. 9:21:33hub एक ऐसा प्लेटफार्म है और यहां पर अगर
  13962. 9:21:35आप जाते हो तो यहां पर आपको सर्च करना है
  13963. 9:21:37डॉकर hub। ठीक है? और यहां पर आपको उसकी अ
  13964. 9:21:40जो ऑफिशियल रिपोज़िटरी है वो मिल जाएगी।
  13965. 9:21:43ऑफिशियल लिंक और यहां पर आप सर्च कर सकते
  13966. 9:21:45हो कोई भी इमेजज़ को। यहां पर टेंसर फ्लो
  13967. 9:21:47देख सकते हो। P टॉर्च है, लंग चेन है,
  13968. 9:21:49Python है। तो अगर आपके सिस्टम पर Python
  13969. 9:21:51इंस्टॉल्ड नहीं है तो आप यहां से Python
  13970. 9:21:53की इमेज लेकर Python को रन कर सकते हो इन
  13971. 9:21:55द कंटेनर्स ऑन योर लोकल मशीन और आप उसको
  13972. 9:21:58नॉर्मल सॉफ्टवेयर की तरह भी इस्तेमाल कर
  13973. 9:21:59सकते हो। तो जैसे Python आप अगर अपने
  13974. 9:22:01सिस्टम पर इस्तेमाल कर सकते हो, आप
  13975. 9:22:03इस्तेमाल करते हो, इंस्टॉल करते हो Python
  13976. 9:22:06को अपने सिस्टम पर तो आप Python रिलेटेड
  13977. 9:22:08कमांड्स रन कर सकते हो। करेक्ट? लेकिन
  13978. 9:22:10डॉकर भी अगर आप अपने सिस्टम पर Python की
  13979. 9:22:13इमेज रन करते हो। ठीक है? तो आप इस उसका
  13980. 9:22:18कमांड लाइन पर भी इस्तेमाल कर सकते हो।
  13981. 9:22:20लाइक Python रिलेटेड कमांड रन कर सकते हो।
  13982. 9:22:23तो यह कहना चाहता हूं यहां पर देखिए काफी
  13983. 9:22:25सारे इमेजज़ हैं। जैसे कि इंजेक्स, Mysquel
  13984. 9:22:28आप सब कुछ रन कर सकते हो अपने मशीन पर।
  13985. 9:22:30ठीक है? तो ये हिसाब से डॉकर hub है। आप
  13986. 9:22:32अपने इमेजज़ भी पब्लिश कर सकते हो। तो मैं
  13987. 9:22:34रिकमेंड करूंगा कि आप यहां पर साइन अप कर
  13988. 9:22:36लीजिए। ठीक है? फ्री अकाउंट है। ऐसा कुछ
  13989. 9:22:39पेड है नहीं। मैं पेड टूल नहीं सिखा रहा
  13990. 9:22:41आपको। साइन अप कर लीजिए। आपको एक डॉकर
  13991. 9:22:44यूजरनेम मिलेगा और फिर आप डॉकर डेस्कटॉप
  13992. 9:22:47को इंस्टॉल कर लीजिए अपने सिस्टम पर। डॉकर
  13993. 9:22:49डेस्कटॉप को आप जैसे ही इंस्टॉल कर सक
  13994. 9:22:51करते हो और स्टार्ट करते हो तो देखिए इस
  13995. 9:22:53तरीके से कुछ दिखाई देगा आपको डॉकर
  13996. 9:22:54डेस्कटॉप मैं डॉकर का काफी इस्तेमाल करता
  13997. 9:22:56हूं तो आपको दिखाई देगा कुछ इमेजेस मेरे
  13998. 9:22:59मशीन पर और कुछ कंटेनर्स यहां पर दिखाई
  13999. 9:23:02देगा अगर आप रन करते हो कंटेनर्स तो ये
  14000. 9:23:04डॉकर डेस्कटॉप का यूआई है। ठीक है? और
  14001. 9:23:06यहां पर देखिए ये अकाउंट है जिसमें आप
  14002. 9:23:08साइन इन कर सकते हो एक हिसाब से। ठीक है?
  14003. 9:23:11तो उम्मीद करता हूं आप इतना कर पाओगे और
  14004. 9:23:14इसको रन करने के लिए जैसे कि मैंने बताया
  14005. 9:23:16आप डॉकर डेस्कटॉप को यहां से डाउनलोड कर
  14006. 9:23:18लीजिए। ये रहा डॉकर डेस्कटॉप। ठीक है?
  14007. 9:23:20डिपेंडिंग ऑन जो भी प्लेटफार्म पे हो आप
  14008. 9:23:22आप डाउनलोड कर लीजिए। एक नॉर्मल सॉफ्टवेयर
  14009. 9:23:24की तरह इसका इंस्टॉलेशन है और फिर इसको रन
  14010. 9:23:26कर दीजिए। ठीक है? तो इतना करने के बाद और
  14011. 9:23:28अब आप डॉकर कमांड्स अगर रन करना चाहते हो
  14012. 9:23:31तो आपको ये मेक श्योर करना है कि डॉकर
  14013. 9:23:33डेस्कटॉप अप एंड रनिंग है हमेशा। ठीक है?
  14014. 9:23:35तो इतना हो गया। डॉकर डेस्कटॉप भी अप एंड
  14015. 9:23:37रनिंग है। अब मैं क्या करूंगा? देखिए ये
  14016. 9:23:39मैं एक एप्लीकेशन है मेरी वहां पर आ जाता
  14017. 9:23:41हूं। तो, यह मेरी एप्लीकेशन है जिसको मैं
  14018. 9:23:42कंटेनराइज़ करना चाहता हूं। यह एक फिटनेस
  14019. 9:23:45प्रोजेक्ट है। थोड़ी सी कॉन्फ़िगरेशन है
  14020. 9:23:47इसमें और यहां पर कंट्रोलर में आपको यहां
  14021. 9:23:49पे अ आपको यहां पर थोड़ी एंड पॉइंट्स दिखाई
  14022. 9:23:52देगी। अब देखिए, ये जो वीडियो है ना,
  14023. 9:23:54इसमें जो स्टेप्स बताने वाला हूं, ये
  14024. 9:23:56स्टेप्स आप कोई भी एप्लीकेशन के लिए कर
  14025. 9:23:58सकते हो। फॉलो अगर आपके पास कोई और
  14026. 9:24:00स्प्रिंग बूट प्रोजेक्ट है, तो आप उसके
  14027. 9:24:02लिए भी कर सकते हो। ठीक है? ऐसी कोई
  14028. 9:24:04दिक्कत होने वाली नहीं है आपको। ठीक है?
  14029. 9:24:06तो, इस तरीके से, ये जो स्टेप्स है, आप
  14030. 9:24:08फॉलो कर सकते हो। यहां पर सबसे पहले तो
  14031. 9:24:10कॉन्फ़िगरेशन फाइल देख लेनी है आपको। ठीक
  14032. 9:24:12है? ये सारी कॉन्फ़िगरेशन फाइल है। ठीक है?
  14033. 9:24:14तो देखिए, मैं क्या करूंगा? मैं क्या करना
  14034. 9:24:16चाहता हूं? सबसे पहले तो मैं मेरी जो
  14035. 9:24:19कॉन्फ़िगरेशन है, उसको एक्सटर्नलाइज़ करना
  14036. 9:24:21चाहता हूं। ठीक है? एक्सटर्नलाइज़। इसका
  14037. 9:24:23मतलब क्या है? यहां पर ये मैंने
  14038. 9:24:25हार्डकोडेड डेटाबेस यूआरएल लिखी है। ठीक
  14039. 9:24:27है? तो, मैं क्या करूंगा? इसको ऐसा कट कर
  14040. 9:24:29दूंगा और यहां पर लिख दूंगा डॉलर
  14041. 9:24:32डीबी अंडरस्कोर यूआरएल। ऐसे। ठीक है? फिर
  14042. 9:24:36यहां पर रूट है। तो देखिए ये अभी डीबी
  14043. 9:24:38यूआरएल मैंने यहां पर लिख दिया है। तो मैं
  14044. 9:24:40क्या करूंगा? अभी ये एक हिसाब से मैं
  14045. 9:24:42एनवायरमेंट वेरिएबल्स का इस्तेमाल कर रहा
  14046. 9:24:44हूं। क्या यूज़ कर रहा हूं? एनवायरमेंट
  14047. 9:24:45वेरिएबल्स। एनवायरमेंट वेरिएबल्स का मतलब
  14048. 9:24:48ये जो वैल्यू है ये रन टाइम पर इंजेक्ट
  14049. 9:24:50होगी यहां पर। ठीक है? ये क्यों कर रहे
  14050. 9:24:52हैं हम? इसका बेनिफिट क्या है? बेनिफिट ये
  14051. 9:24:54है कि अगर आप एप्लीकेशन को एक एनवायरमेंट
  14052. 9:24:57से दूसरे एनवायरमेंट में रन करते हो तो ये
  14053. 9:24:59वैल्यूज़ जो है आप डायनेमिकली चेंज कर सकते
  14054. 9:25:02हो। ठीक है? तो देखिए इसका बेटर एग्जांपल
  14055. 9:25:05मैं दूंगा। अगर आप यही सेम स्प्रिंग बूट
  14056. 9:25:07एप्लीकेशन को अगर QA सर्वर में रन करते हो
  14057. 9:25:10QA सर्वर में डेटाबेस का यूआरएल अलग होगा।
  14058. 9:25:12तो आप चाहोगे इसको यहां पर इंजेक्ट कर दो।
  14059. 9:25:15ठीक है? डायनेमिकली रन टाइम पर जब रन होता
  14060. 9:25:17है एप्लीकेशन। इंजेक्ट करोगे तो ये क्यूए
  14061. 9:25:19डेटाबेस को पॉइंट करेगा। फिर ये जब डेव
  14062. 9:25:21एनवायरमेंट में जाएगा या
  14063. 9:25:24अह डेव एनवायरमेंट में जाएगा। मान लीजिए
  14064. 9:25:25डेव एनवायरमेंट है तो वहां पर आप फिर से
  14065. 9:25:27यूआरएल डेव एनवायरमेंट का यहां पर इंजेक्ट
  14066. 9:25:29कर सकते हो रनिंग इंस्टेंस में। और फिर आप
  14067. 9:25:32क्या कर सकते हो? अगर प्रॉड एनवायरमेंट
  14068. 9:25:33में जाएगा तो प्रॉड एनवायरमेंट में इसको
  14069. 9:25:35लेके जाइए। एप्लीकेशन को प्रॉड सर्वर पर
  14070. 9:25:36रन कीजिए। और ये जो वैल्यू है ये आप
  14071. 9:25:39डायनेमिकली अ एप्लीकेशन के बाहर से
  14072. 9:25:41इंजेक्ट कीजिए। अगर आप ऐसे नहीं करते हो
  14073. 9:25:43फॉर एग्जांपल अगर आप हार्डकोडेड यूआरएल का
  14074. 9:25:45इस्तेमाल करते हो जैसे पहले था ये तो आपको
  14075. 9:25:47क्या है? हर यूआरएल चेंज के लिए प्रोजेक्ट
  14076. 9:25:50को कंपाइल करना पड़ेगा और जार फाइल बनानी
  14077. 9:25:52पड़ेगी। जो कि सही अप्रोच नहीं है। ठीक
  14078. 9:25:54है? अगर आप मल्टीपल एनवायरमेंट्स में काम
  14079. 9:25:57करते हो तो एनवायरमेंट वेरिएबल्स का
  14080. 9:25:59इस्तेमाल करना काफी कॉमन है। लेकिन अब
  14081. 9:26:01क्वेश्चन ये आता है देखिए मैं डेवलपमेंट
  14082. 9:26:02एनवायरमेंट में मेरे मशीन पर डेवलपमेंट कर
  14083. 9:26:04रहा हूं। ये वैल्यू अब मैं पास कैसे करूं
  14084. 9:26:06यहां पर? तो इंटेलिजेंट में एक काफी आसान
  14085. 9:26:09सा तरीका है। ठीक है? आप यहां पर आ जाइए।
  14086. 9:26:11ये आपकी रन कॉन्फ़िगरेशन है। ठीक है? यहां
  14087. 9:26:13पर जाइए। एडिट कॉन्फ़िगरेशन पे क्लिक कीजिए
  14088. 9:26:15इस तरीके से। ठीक है? और यहां पर
  14089. 9:26:18एनवायरमेंट वेरिएबल्स में जाइए और यहां पर
  14090. 9:26:20लिखिए DB अंडरs url इज़ इक्वल टू और यहां
  14091. 9:26:23पर ये यूआरएल को पेस्ट कर दीजिए। तो देखिए
  14092. 9:26:25यहां पर दिखाई देगा सेपरेट वेरिएबल्स विद
  14093. 9:26:27सेमी कॉललन वेरिएबल इज़ इक्वल टू वैल्यू।
  14094. 9:26:30और वेरिएबल 1 = वैल्यू इस तरीके से और
  14095. 9:26:33सेमी कॉललन से सेपरेटेड रखें इसे। तो यहां
  14096. 9:26:37पर आपने यह डाल दिया है। ठीक है? अब सेमी
  14097. 9:26:39कॉललन से सेपरेट कर सकते हो अगर आप
  14098. 9:26:40मल्टीपल ई एनवी वेरिएबल्स डालते हो। लेकिन
  14099. 9:26:43मैं अभी ऐसा नहीं करूंगा। हम लोग और ऐड
  14100. 9:26:44करेंगे यहां पर। लेकिन अभी फिलहाल के लिए
  14101. 9:26:46मैं क्या करूंगा? यहां पर अप्लाई बटन
  14102. 9:26:47क्लिक कर दूंगा। तो देखिए सेव करने के लिए
  14103. 9:26:49अप्लाई क्लिक करना जरूरी है और फिर ओके
  14104. 9:26:51करना है। ठीक है? अप्लाई अगर नहीं करोगे
  14105. 9:26:53तो हो सकता है ये जो आपने सेव किया है वो
  14106. 9:26:56अप्लाई ना हो। ठीक है? तो इतना कर लिया
  14107. 9:26:58आपने। अब मैं क्या करूंगा? मैं चाहता हूं
  14108. 9:27:00सब जगह पर जैसे कि डीबी यूआरएल
  14109. 9:27:04अ ये और फिर पासवर्ड तो ये डीबी यूआरएल के
  14110. 9:27:07बजाय डीबी यूजर लिख दूंगा और यहां पर अ
  14111. 9:27:10पीडब्ल्यू डी इस तरीके से। ठीक है? और फिर
  14112. 9:27:14यहां पर आ जाता हूं एडिट कॉन्फ़िगरेशंस
  14113. 9:27:17में। ठीक है? और यहां पर अएबी वेरिएबल्स।
  14114. 9:27:22तो यहां पर है यहां पर मेरे पास है डीबी
  14115. 9:27:25यूआरएल। नहीं मैं क्या करूंगा?
  14116. 9:27:27डीबी यूजर और यहां पर लिखूंगा रूट और फिर
  14117. 9:27:32यहां पर लिखूंगा अच्छा सेमी कॉललन चाहिए
  14118. 9:27:34सॉरी मैं देखिए कॉमा डाल रहा हूं गलती मैं
  14119. 9:27:36ही कर रहा हूं ठीक है और यहां पर लिखना है
  14120. 9:27:40डीबी अंडरs अ पासवर्ड ठीक है और यहां पर
  14121. 9:27:44लिखूंगा माय न्यू
  14122. 9:27:47पास @ 1 2 3 ठीक है इसको अप्लाई कर लेते
  14123. 9:27:50हैं ओके करते हैं और फिर रन करके देखते
  14124. 9:27:52हैं कि यह रन होता है या नहीं ठीक है
  14125. 9:27:54आइडियली रन होना चाहिए बिना किसी दिक्कत
  14126. 9:27:56के ठीक है? डेटाबेस को कनेक्ट होना चाहिए
  14127. 9:27:58और आइडली रन होना चाहिए। लेकिन अगर रन
  14128. 9:28:01नहीं हो रहा है और हार्ड कोडेड वैल्यूज़ रन
  14129. 9:28:02हो रही है तो जरूर आपने कोई कॉन्फ़िगरेशन
  14130. 9:28:04में गलती की होगी। ठीक है? तो देखिए ये
  14131. 9:28:06एप्लीकेशन बिल्कुल सही तरीके से रन हो रहा
  14132. 9:28:10है। ठीक है? बिना किसी दिक्कत के। ठीक है?
  14133. 9:28:13रन हो रहा है। ये अब अब इतनी चीज़ हो चुकी
  14134. 9:28:16है हमारे एंड पर। डेटाबेस कॉन्फ़िगरेशन
  14135. 9:28:19यहां पर आ चुका है। आपको चाहिए ना, तो आप
  14136. 9:28:21डायलेक्ट को भी ले सकते हो इस वेरिएबल के
  14137. 9:28:24तौर पे। देखिए आप चाहे तो कुछ भी ले सकते
  14138. 9:28:26हो। यहां पर हो सकता है आपके पास और
  14139. 9:28:28कॉम्प्लेक्स कॉन्फ़िगरेशन फाइल्स हो। ठीक
  14140. 9:28:30है? तो उस हिसाब से आप यहां पर चीजें
  14141. 9:28:32चीजों को ले सकते हो। ठीक है? अब मैं यहां
  14142. 9:28:34पर क्या करने वाला हूं ना? देखिए मैं लोकल
  14143. 9:28:36डेटाबेस को कनेक्ट कर रहा हूं लोकली। अब
  14144. 9:28:39मैं लोकल नहीं करना चाहता। मैं एक हिसाब
  14145. 9:28:41से रिमोट डेटाबेस को कनेक्ट करूंगा आगे
  14146. 9:28:44चलके। ठीक है? क्योंकि मेरी एप्लीकेशन अगर
  14147. 9:28:47क्लाउड पे डिप्लॉय होती है तो मैं आगे
  14148. 9:28:48चलकर रिमोट डेटाबेस को कनेक्ट कर सकता
  14149. 9:28:50हूं। लेकिन अभी के लिए फिलहाल मैं क्या कर
  14150. 9:28:52रहा हूं? देखिए ये जो वेरिएबल्स मैंने सेट
  14151. 9:28:54कर दिए। अब मैं इसकी इमेज बनाता हूं अगर
  14152. 9:28:56तो इमेज से कंटेनर बनेगा और कंटेनर आप
  14153. 9:28:58कहीं पर भी रन कर सकते हो। प्रोडक्शन
  14154. 9:29:00एनवायरमेंट पे कर सकते हो। लोकल
  14155. 9:29:01एनवायरमेंट पे कर सकते हो और यहां पर
  14156. 9:29:03चीजों को पास कर सकते हो। ठीक है? इतनी
  14157. 9:29:06चीज हो गई। अब हमें क्या करना है? अब हम आ
  14158. 9:29:10जाएंगे।
  14159. 9:29:12तो अब मैं यहां पर आ जाता हूं। ठीक है? तो
  14160. 9:29:15देखिए यहां पर मुझे कुछ चीजें आपको बतानी
  14161. 9:29:19है। ठीक है? तो देखिए यहां पर सबसे पहले
  14162. 9:29:21तो अ ये वाला कमांड है। मैंने कुछ कमांड्स
  14163. 9:29:23लिखे हैं। पहले तो Linux के लिए, Windows
  14164. 9:29:26के लिए और अ Windows में दो चीज़ हैं। एक
  14165. 9:29:29कमांड प्र्ट। ठीक है? जो नॉर्मल कमांड
  14166. 9:29:31प्र्ट है और दूसरा है पावर शेल। तो
  14167. 9:29:32डिपेंडिंग ऑन आप क्या इस्तेमाल करते हो
  14168. 9:29:34उसके बेसिस पर अ मैंने ये कमांड्स लिखे
  14169. 9:29:37हैं। ठीक है? तो अब देखिए ये कमांड्स का
  14170. 9:29:40मैं थोड़ा ओवरव्यू दे देता हूं आपको। ठीक
  14171. 9:29:41है? सबसे पहले तो देखिए Linux पर। Linux
  14172. 9:29:44पर नहीं सारे ऑपरेटिंग सिस्टम पर जितना
  14173. 9:29:45मैंने लिखा है Mac, Windows और Windows
  14174. 9:29:48में दो लिखे हैं मैंने। ठीक है? Linux और
  14175. 9:29:50Mac OS। तो यहां पर देखिए सबसे पहले तो
  14176. 9:29:52आपको करनी होती है एनवायरमेंट वेरिएबल
  14177. 9:29:54सेट। अगर आप कमांड लाइन से जार फाइल बना
  14178. 9:29:56रहे हो या एप्लीकेशन को पैकेज कर रहे हो।
  14179. 9:29:58ठीक है? देखिए मैं अगर कमांड लाइन से यहां
  14180. 9:30:01पर आ जाता हूं और यहां पर एप्लीकेशन को
  14181. 9:30:03अगर पैकेज करने की कमांड रन करता हूं।
  14182. 9:30:05पैकेज मैं क्यों करूंगा? सबसे पहले तो
  14183. 9:30:07पैकेज मैं क्यों करूंगा? ठीक है? ये भी
  14184. 9:30:09मैं आपको बता देता हूं। तो यहां पर देखिए
  14185. 9:30:11यहां पर पैकेजिंग का मतलब है जार फाइल
  14186. 9:30:12जनरेट करना। तो ये टारगेट फोल्डर जो है ये
  14187. 9:30:15ऑटो जनरेटेड होता है। ठीक है? तो अगर मैं
  14188. 9:30:19यहां पर आ जाऊं। ठीक है? तो देखिए एक होता
  14189. 9:30:22है आपके पास होती है जनरल प्रोसेस मैं
  14190. 9:30:25आपको बताता हूं। स्लैश टारगेट फोल्डर
  14191. 9:30:27इसमें होगी आपके पास जार फाइल। ठीक है?
  14192. 9:30:30जार फाइल ऐसे ठीक है? आपके पास होगी डॉट
  14193. 9:30:33जार फाइल। डॉट जार लिख देता हूं। ठीक है?
  14194. 9:30:37तो टारगेट फोल्डर में डॉट जार फाइल होगी।
  14195. 9:30:40और ये होगी पैकेज्ड वर्जन ऑफ योर
  14196. 9:30:42एप्लीकेशन। तो आपकी एप्लीकेशन जो है उसको
  14197. 9:30:44जार फाइल में एक हिसाब से कंपाइल कर कर।
  14198. 9:30:48तो जार फाइल बनाई जाती है jवा
  14199. 9:30:49एप्लीकेशनेशंस की और फिर उसे सर्वर पर
  14200. 9:30:51डिप्लॉय किया जाता है रन करने के लिए चार
  14201. 9:30:53फाइल्स को। ठीक है? जार फाइल्स का मतलब
  14202. 9:30:56क्या है? jवा आकाइव फाइल। ये एक हिसाब से
  14203. 9:30:58देखिए Windows पर exc होती है। ठीक है? वो
  14204. 9:31:01क्या होती है? वो एप्लीकेशन रन करने के
  14205. 9:31:03लिए होती है। exc फाइल। और तो जार फाइल
  14206. 9:31:05बेसिकली जावा में एक हिसाब से
  14207. 9:31:07एग्जीक्यूटेबल की तरह आप समझ लीजिए इसको।
  14208. 9:31:10ठीक है? तो जार फाइल हमें बनानी होगी। तो
  14209. 9:31:12हम क्या करेंगे? देखिए ये हमारी जार फाइल
  14210. 9:31:14है। ठीक है? ये जार फाइल। यह जार फाइल को
  14211. 9:31:18हम पैकेज करेंगे एक डॉकर इमेज में और यहां
  14212. 9:31:22पर जार फाइल के साथ होगी इसकी सारी की
  14213. 9:31:26सारी जो इसे चाहिए डिपेंडेंसी तो मैं
  14214. 9:31:28सिर्फ डी लिख देता हूं डिपेंडेंसीज और जो
  14215. 9:31:31भी एनवायरमेंट चाहिए डिपेंडेंसी के साथ जो
  14216. 9:31:34भी एनवायरमेंट चाहिए वो सब होगा यहां पे
  14217. 9:31:36ठीक है तो जैसे कि java चाहिए इसको रन
  14218. 9:31:39करने के लिए मेवन चाहिए जो भी चाहिए वो सब
  14219. 9:31:40कुछ इसके अंदर होगा ठीक है और इसी कंटेनर
  14220. 9:31:44के अंदर जार फाइल और यह होगी तो इसे पैकेज
  14221. 9:31:46करेंगे हम डॉकर इमेज के अंदर और फिर इसे
  14222. 9:31:49रन कर सकते हैं हम कंटेनर में। ठीक है? रन
  14223. 9:31:52इस तरीके से। तो यह हो गया कंटेनर। यह हो
  14224. 9:31:54गई इमेज। ठीक है? लेकिन पैकेज करने के लिए
  14225. 9:31:57आपको जार फाइल तो पहले चाहिए। करेक्ट? तभी
  14226. 9:31:59ही आप उसकी इमेज बना पाओगे और फिर उस इमेज
  14227. 9:32:01को रन कर पाओगे। तो कंटेनर के अंदर जो
  14228. 9:32:04रनिंग इंस्टेंस है कंटेनर उसके अंदर ये
  14229. 9:32:07जार फाइल ही रन होगी। करेक्ट? ये होगा
  14230. 9:32:09पूरा प्रोसेस। और फिर यह डॉकर का जो इमेज
  14231. 9:32:11है उसको आप कहीं पर उसकी उसकी रनिंग
  14232. 9:32:13इंस्टेंस क्रिएट करके आप कहीं पर भी
  14233. 9:32:15डिप्लॉय कर सकते हो। तो यही सेम इमेज को
  14234. 9:32:17आप डिप्लॉय कर सकते हो। प्रोडक्शन पर आप
  14235. 9:32:19डिप्लॉय कर सकते हो। टेस्ट एनवायरमेंट पर
  14236. 9:32:21सभी जगह पर। ठीक है? तो ये हम करने वाले
  14237. 9:32:24हैं। और इसे ही करने के लिए हमें जार फाइल
  14238. 9:32:27की जरूरत पड़ेगी। ठीक है? तो ये जो कमांड
  14239. 9:32:30है मैं सीधा-सीधा आपको बता दूं। ये जो
  14240. 9:32:32कमांड हम कर रहे हैं पैकेज। ये जार फाइल
  14241. 9:32:35में पैकेज करेगा हमारी एप्लीकेशन। पैकेज।
  14242. 9:32:37अब पैकेज करने के लिए ना एप्लीकेशन को वह
  14243. 9:32:40एक बार बिल्ड करता है और बिल्ड करते वक्त
  14244. 9:32:43उसको जो एनवायरमेंट वेरिएबल्स है वह चाहिए
  14245. 9:32:45होते हैं। तो जो भी एनवायरमेंट वेरिएबल्स
  14246. 9:32:47की जरूरत होती है यानी कि एप्लीकेशन
  14247. 9:32:48प्रॉपर्टीज में ये एक हिसाब से एप्लीकेशन
  14248. 9:32:50को स्टार्ट करता है पैकेज करते वक्त
  14249. 9:32:52एप्लीकेशन स्टार्ट होगी आपकी बैकग्राउंड
  14250. 9:32:54में आपको दिखाई देंगे सारे लॉग्स और तभी
  14251. 9:32:57उसको जरूरत पड़ेगी यह जो आपने वेरिएबल्स
  14252. 9:33:01डिफाइन किए उसकी पैकेज करने के लिए। ठीक
  14253. 9:33:04है? तो पैकेज हम करेंगे और फिर उसकी इमेज
  14254. 9:33:07बनाकर हम उसे कर देंगे डिप्लॉय प्रोडक्शन
  14255. 9:33:10पर। ठीक है? उम्मीद करता हूं आपको समझ में
  14256. 9:33:13आ रही है चीजें। तो मैं क्या करूंगा?
  14257. 9:33:15देखिए पैकेज करने के लिए मुझे इस्तेमाल
  14258. 9:33:17करना होगा माय सीक्वल का इस्तेमाल कर रहा
  14259. 9:33:19हूं मैं। ठीक है? लेकिन मैं जो हूं मैं
  14260. 9:33:22इस्तेमाल करूंगा पॉस्कस सीक्वल का। अ एक
  14261. 9:33:25मिनट मुझे देख लेने दीजिए किसका इस्तेमाल
  14262. 9:33:27करना चाहिए मुझे। ठीक है? अभी के लिए
  14263. 9:33:29सिंपल रखते हैं और इसे माय सीक्वल ही रखते
  14264. 9:33:31हैं। ठीक है? तो मैं क्या करूंगा? अभी
  14265. 9:33:34यहां पर आ जाऊंगा और ये क्योंकि मैं
  14266. 9:33:36Windows पर हूं और मैं पावर शेल का
  14267. 9:33:38इस्तेमाल करने वाला हूं तो मैं ये कमांड
  14268. 9:33:39कॉपी कर लेता हूं। ठीक है? ये वाली कमांड
  14269. 9:33:41देखिए मैं आपको बिना एनवायरमेंट वेरिएबल
  14270. 9:33:43सेट किए भी एक कमांड रन करके दिखाता हूं।
  14271. 9:33:44तो इस तरीके से होगी और ये यहां पर होगी
  14272. 9:33:47पीडब्ल्यू डी। ठीक है? क्लियर? और यहां पर
  14273. 9:33:50मैं रन करूंगा एमवीएन पैकेज। ठीक है? तो
  14274. 9:33:53जैसे ही मैं रन करता हूं तो देखिए एक
  14275. 9:33:54हिसाब से ऐप को स्टार्ट कर रहा है। और
  14276. 9:33:56यहां पर देखिए एरर दे दी इसने। ठीक है?
  14277. 9:33:58कैन नॉट फाइंड सिंबल। कैन नॉट फाइंड
  14278. 9:34:00सिंबल। तो यह एरर दे दी एक हिसाब से इसने।
  14279. 9:34:02ठीक है? यह एरर इसने काफी पहले दी है। तो
  14280. 9:34:06यहां पर अगर आप ऊपर आते हो, बहुत सारी
  14281. 9:34:08एरर्स आई है आपके एप्लीकेशन में। देखिए,
  14282. 9:34:11ठीक है? ये एप्लीकेशन स्टार्ट हुई और ये
  14283. 9:34:14कंपाइल नहीं हो पाया है। ठीक है? इज़ नॉट
  14284. 9:34:16इनिशियलाइज्ड। नॉट इनिशियलाइज़ ये सारी
  14285. 9:34:18एरर्स आई है। अच्छा, नॉट इनिशियलाइज़ कैन
  14286. 9:34:21नॉट फाइंड सिंबल। ठीक है दोस्तों? तो पहले
  14287. 9:34:23जो इशू आ रही थी, यह वाली जो इशू हम देख
  14288. 9:34:25रहे थे, यह लॉबक रिलेटेड इशज़ थी, इसका
  14289. 9:34:27मतलब यह है कि गेटर्स और सेटर्स कुछ वजह
  14290. 9:34:29से जनरेट नहीं हो रहे तो मैंने प्रोजेक्ट
  14291. 9:34:31को थोड़ा क्लीन करके रिबिल्ट किया और
  14292. 9:34:33मैंने फिर से यह कमांड चलाई। ठीक है? फिर
  14293. 9:34:36से यह कमांड चलाई। तो फिर से अगर कमांड
  14294. 9:34:38चलाते हो तो वो वाली इशू नहीं आ रही है।
  14295. 9:34:40अभी ये कुछ आईडी स्पेसिफिक इशू था जो आ
  14296. 9:34:42रही थी। लेकिन अभी ये इशू आ रही है। देखिए
  14297. 9:34:44कुछ डेटा सोर्स रिलेटेड कुछ फील्ड टू लोड
  14298. 9:34:48प्रॉपर्टीज चाहे काफी। देखिए जीडीबीसी
  14299. 9:34:50रिलेटेड कुछ एरर है। यूआरएल डेटा सोर्स।
  14300. 9:34:52तो इसका मतलब यह है उसे अह जो वैल्यू है
  14301. 9:34:56यह यूआरएल की वह मिल नहीं रही है। तो अब
  14302. 9:34:58हमारा हमारी जॉब है कि हम उसे सेट करें।
  14303. 9:35:01तो मैं क्या करूंगा यहां पर आ जाऊंगा। ये
  14304. 9:35:03टाइम पर ना देखिए आप जभी भी ये कर रहे हो
  14305. 9:35:05ना आप एक नोटपैड हैंडी रखिए और इसको मैं
  14306. 9:35:08कॉपी कर लूंगा। यहां पर आ जाऊंगा और
  14307. 9:35:10क्योंकि मैं Windows का इस्तेमाल कर रहा
  14308. 9:35:11हूं। देखिए अगर आप Linux का इस्तेमाल कर
  14309. 9:35:13रहे हो तो आपको ये इस तरीके से कमांड लाइन
  14310. 9:35:15पर सेट करने हैं। एनवायरमेंट वेरिएबल्स।
  14311. 9:35:18Windows में कमांड प्र्ट का तो इस्तेमाल
  14312. 9:35:20कर रहे हो तो इस तरीके से सेट करना है।
  14313. 9:35:21सेट कीवर्ड यूज़ करोगे और पावर शेल पर इस
  14314. 9:35:24तरीके से इस्तेमाल करोगे आप। ठीक है? तो
  14315. 9:35:27यहां पर पेस्ट कर दीजिए ऐसे और यहां पर
  14316. 9:35:30ऐसे कर दीजिए और यहां पर इसको ऐसे करूंगा
  14317. 9:35:34मैं। और फिर यह डॉलर ई एनवी को ऐड कर
  14318. 9:35:38दूंगा इस तरीके से। ठीक है? इतना मैंने कर
  14319. 9:35:40दिया। और यहां पर यह कॉपी कर लिया। और फिर
  14320. 9:35:45यहां पर आ जाइए। क्लियर कर दूंगा यह सब और
  14321. 9:35:48फिर इसको ऐसे पेस्ट कर। अच्छा यह फेल हो
  14322. 9:35:51रहा है। यह चल नहीं रहा है। ऐसा क्यों?
  14323. 9:35:54अच्छा यह पावर शेलफ पर तो चलना चाहिए था।
  14324. 9:35:57अच्छा पावर शेल पर चलना चाहिए लेकिन ये
  14325. 9:35:59देखिए डबल कोड्स में है। तो मैंने कोड्स
  14326. 9:36:01मिस कर दिया है मैंने। ठीक है? तो कोड्स
  14327. 9:36:03मिस नहीं कीजिएगा। कोड्स ज्यादा
  14328. 9:36:06इंपॉर्टेंट है। ठीक है? इस तरीके से सेट
  14329. 9:36:08कीजिए। नहीं तो फेल हो जाएगी। एग्जैक्ट
  14330. 9:36:10सिंटेक्स फॉलो कीजिएगा। ठीक है? ये यहां
  14331. 9:36:12पर एग्जैक्ट सिंटेक्स। यहां पर कोड्स नहीं
  14332. 9:36:13है। यहां पर कोड्स नहीं है। ठीक है? तो
  14333. 9:36:15मैंने कोड्स को सेट कर दिया यहां पर। ऐसे
  14334. 9:36:17आ जाइए और फिर से क्लियर कर देता हूं और
  14335. 9:36:20फिर रन कीजिए। यह सेट हो गया है। ठीक है?
  14336. 9:36:23तो देखिए मेरी जो इंस्टेंस है ना
  14337. 9:36:24इंटेलिजेंट टर्मिनल की वो पावर शेल की है।
  14338. 9:36:27यहां पर आप देख सकते हो पावर शेल कमांड
  14339. 9:36:28प्र्ट गेट बैश पावर शेल पे हूं मैं। पावर
  14340. 9:36:31शेल इस्तेमाल कर रहा हूं। इसके लिए चल
  14341. 9:36:32गया। ठीक है? इतना हो गया। अब मैं क्या
  14342. 9:36:34करूंगा? मैं यहां पर आ जाऊंगा और यहां पर
  14343. 9:36:36ये एमवीएनw पैकेज को रन करूंगा। अब देखते
  14344. 9:36:39हैं ये इसकी जार फाइल बनती है या नहीं।
  14345. 9:36:42ठीक है? तो टारगेट फोल्डर में हमने चेक
  14346. 9:36:44किया था जार फाइल थी नहीं। तो देखिए यह
  14347. 9:36:46एप्लीकेशन को स्टार्ट वगैरह कर रहा है और
  14348. 9:36:48एप्लीकेशन को इसने रन कर दिया। बिल्ड
  14349. 9:36:49सक्सेस आ गई। 8 सेकंड का टोटल टाइम लगा
  14350. 9:36:52यहां पर। ठीक है? तो आप देख देख सकते हो
  14351. 9:36:54पूरा सारी की सारी चीजें। और यहां पर आप
  14352. 9:36:56देखोगे देखिए इसने अ यहां पर टारगेट
  14353. 9:37:00फोल्डर में एक जार फाइल बनाई है इस नाम
  14354. 9:37:03से। ठीक है? देख पा रहे हो आप जार फाइल।
  14355. 9:37:06तो यहां पर आ जाना है आपको। और देखिए ये
  14356. 9:37:07जार फाइल यहां पर आपको दिखाई देंगी जार
  14357. 9:37:09फाइल। ठीक है? जार फाइल बन चुकी है।
  14358. 9:37:12करेक्ट। ठीक है? अब जार फाइल बनने के बाद
  14359. 9:37:15मैं क्या करूंगा? देखिए जार फाइल में तो
  14360. 9:37:17पैकेज कर दिया हमने। हम यहां पर आ जाएंगे
  14361. 9:37:18टर्मिनल पे। ठीक है? यहां पर आ जाऊंगा और
  14362. 9:37:21मैं फिर से एमवीएनw का इस्तेमाल करूंगा।
  14363. 9:37:23एमवीएनw। देखिए दोस्तों मैं एक चीज़
  14364. 9:37:26एक्सप्लेन करना भूल गया। ये MVNW है क्या?
  14365. 9:37:28तो ये MVNW आप इस्तेमाल कर रहे हो। यहां
  14366. 9:37:29पर MVNW इस्तेमाल कर रहे हो। आप MVNW
  14367. 9:37:32इस्तेमाल कर रहे हो। एमवीएन कमांड मेविन
  14368. 9:37:35का इस्तेमाल करने के लिए यूज़ होता है। अगर
  14369. 9:37:37आप मेवन का इस्तेमाल कर रहे हो तो एमवीएन
  14370. 9:37:38कमांड इस्तेमाल करते हो। लेकिन यहां पर हम
  14371. 9:37:41एमवीएंट डब्ल्यू इस्तेमाल कर रहे हैं जो
  14372. 9:37:42कि है मेवन रैपर जो कि आता है स्प्रिंग
  14373. 9:37:45बूट के साथ। ठीक है? तो अगर आप स्प्रिंग
  14374. 9:37:47बूट का प्रोजेक्ट डालते हो यहां पर तो
  14375. 9:37:49देखिए आपको यह मेवन रैपर दिखाई देगा यहां
  14376. 9:37:51पर mvven यह अगर आप स्प्रिंग बूट
  14377. 9:37:53प्रोजेक्ट बनाते हो तो इसके साथ आपको मेवन
  14378. 9:37:55रैपर मिलता है और mvnw की मदद से आप मेवन
  14379. 9:37:58रैपर को कॉल कर रहे हो। एक हिसाब से अगर
  14380. 9:38:00आपको चाहिए मेवन रैपर को कॉल नहीं करूं
  14381. 9:38:02मैं तो आप एमवीएन इस्तेमाल कर सकते हो
  14382. 9:38:04डायरेक्ट कमांड लेकिन उसके लिए आपके मशीन
  14383. 9:38:07पर मेन इंस्टॉल होनी जरूरी है। ठीक है? तो
  14384. 9:38:10मैं इस्तेमाल करूंगा एमवी एन डब्लू और फिर
  14385. 9:38:13मैं कहूंगा स्प्रिंग हफन बूट कोलन बिल्ड
  14386. 9:38:17हफन इमेज। ठीक है? अब इसको रन करने के लिए
  14387. 9:38:21ना हमें एक डिपेंडेंसी चाहिए। इसको रन
  14388. 9:38:23मैंने नहीं किया। एक डिपेंडेंसी यहां पर
  14389. 9:38:25ऐड होनी चाहिए। एक चीज़ कॉन्फ़िगर होनी
  14390. 9:38:26चाहिए जो कि है बिल्ड में मेवन प्लगइन। ये
  14391. 9:38:29ऐडेड होना चाहिए। तो मेवन प्लगइन की मदद
  14392. 9:38:32से हम एक डॉकर इमेज बना रहे हैं। यहां पर
  14393. 9:38:35देखिए। अब यहां पर वेट करते हैं और हां
  14394. 9:38:37आपको मेक श्योर करना है कि डॉकर डेस्कटॉप
  14395. 9:38:39भी अप एंड रनिंग हो। ठीक है? तो थोड़ा
  14396. 9:38:42इंतजार करेंगे। देखिए इमेज बनते जा रही
  14397. 9:38:45है। आप देख पा रहे हो बिल्डिंग इमेज। ठीक
  14398. 9:38:47है? और यह रहेगा इमेज का नाम देखिए आप
  14399. 9:38:50डॉकर. लाइब्रेरी फिटनेस मोनोलथ 01 hfन
  14400. 9:38:54snapshot। ठीक है? यह इमेज बनते जा रही
  14401. 9:38:57है। थोड़ी देर के बाद आपको इमेज दिखाई
  14402. 9:39:01देंगी और वो कहां दिखाई देगी? डॉकर
  14403. 9:39:03डेस्कटॉप में दिखाई देगी। तो यहां पर हमने
  14404. 9:39:04डॉकर डेस्कटॉप को इंस्टॉल करके ओपन कर रखा
  14405. 9:39:07है यहां पर। ठीक है? यहां पर अभी आई नहीं
  14406. 9:39:09है लेकिन यहां पर दूसरी इमेजज़ हैं जो आप
  14407. 9:39:10देख पा रहे हो। लेकिन यहां पर और इमेजज़
  14408. 9:39:12आएंगी। ठीक है? तो कुछ इंतज़ार करते हैं।
  14409. 9:39:15देखिए दोस्तों मैं तब तक ना कॉन्सेप्ट
  14410. 9:39:16एक्सप्लेन कर देता हूं जब तक ये प्रोसेस
  14411. 9:39:18कंप्लीट होता है। अच्छा यहां पर आ गई
  14412. 9:39:20बिल्ड फेलियर। अच्छा क्या हो गया बिल्ड
  14413. 9:39:22फेलियर? एग्जीक्यूशन डिफ़ॉल्ट एग्जीक्यूशन
  14414. 9:39:26सीएलआई ऑफ़ गोल इमेज फेल्ड नो आईओ।
  14415. 9:39:31अच्छा यह कुछ एरर आ गई है हमें इतनी ओके
  14416. 9:39:36ठीक है दोस्तों यह रन नहीं हो रहा है और
  14417. 9:39:38मैंने थोड़ी चीजें चेक की यहां पर यह
  14418. 9:39:40देखिए यह जो मेवन प्लगइन है ये लेटेस्ट
  14419. 9:39:42वर्जन का मेन प्लगइन है और मेरे हिसाब से
  14420. 9:39:45जो लेटेस्ट रिलीज़ आई है स्प्रिंग बूट की
  14421. 9:39:48उस पर यह मेरे यह सपोर्टेड अभी है नहीं
  14422. 9:39:51ऐसा मुझे लग रहा है मैंने रिसर्च भी की
  14423. 9:39:53थोड़ी सी वीडियो को पॉज करके और मुझे पता
  14424. 9:39:55चला कि यह सपोर्टेड पूरी तरीके से है नहीं
  14425. 9:39:57तो इसको अगर आपको यह कमांड वर्किंग चाहिए
  14426. 9:40:00तो आपको क्या करना होगा? आपको स्प्रिंग
  14427. 9:40:03बूट को थोड़ा सा डाउनग्रेड करना होगा।
  14428. 9:40:05यानी वर्जन थोड़ा डाउनग्रेड करना होगा जो
  14429. 9:40:07कि मैं नहीं करना चाहता। ठीक है? तो एक
  14430. 9:40:08दूसरा सशन है मेरे पास। ठीक है? तो देखिए
  14431. 9:40:11ये वाला जो हमने अप्रोच देखा ना इसके जरिए
  14432. 9:40:14आप इमेज बना सकते हो मेवन की मदद से। तो
  14433. 9:40:18देखिए आपके पास मेवन कॉन्फ़िगरर्ड है।
  14434. 9:40:20करेक्ट? मेवन कॉन्फ़िगरर्ड है। तो मैं मैं
  14435. 9:40:22आपको एक डायग्राम के तौर पे बता देता हूं।
  14436. 9:40:24अच्छा सॉरी ये क्या कर दिया मैंने। ठीक
  14437. 9:40:26है? तो देखिए दोस्तों, यहां पर मैं आ चुका
  14438. 9:40:28हूं ड्राइंग टूल पर और यहां पर मैं कुछ
  14439. 9:40:31चीजें कुछ कांसेप्ट्स आपको एक्सप्लेन कर
  14440. 9:40:33देता हूं। देखिए सबसे पहले तो मैं आपको ये
  14441. 9:40:35बताना चाहता हूं कि इमेज बनाने के दो
  14442. 9:40:37तरीके हैं। एक तो यूजिंग मेवन प्लगइन और
  14443. 9:40:39यूजिंग डॉकर फाइल। ये दोनों तरीकों के
  14444. 9:40:40बारे में मैं आपको बताता हूं। ठीक है?
  14445. 9:40:42लेकिन देखिए इमेज क्या होती है? इमेज के
  14446. 9:40:45अंदर आप डिफाइन करते हो जार फाइल और
  14447. 9:40:47डिपेंडेंसीज़। करेक्ट? और इमेज को ये ऐप जो
  14448. 9:40:50है इमेज के अंदर उसको कैसे रन करना है?
  14449. 9:40:52इसके इंस्ट्रक्शंस होते हैं और फिर वो
  14450. 9:40:54स्टैंड अलोन होती है। फिर उसका आप
  14451. 9:40:55इंस्टेंस बना लो तो एप्लीकेशन रन हो
  14452. 9:40:57जाएंगी और वो आइसोलेटेड वे में रन होगी।
  14453. 9:40:59तो डिपेंडेंसीज़ के साथ ही रन हो रही है।
  14454. 9:41:01आपको कुछ टेंशन नहीं है। ठीक है? अब मेवन
  14455. 9:41:04प्लगइन का इस्तेमाल और डॉकर फाइल का
  14456. 9:41:07इस्तेमाल क्यों होता है? तो ये दोनों
  14457. 9:41:09अप्रोचेस है जिसके जरिए आप एक डॉकर इमेज
  14458. 9:41:12बना सकते हो। पहले अप्रोच के बारे में बात
  14459. 9:41:15करते हैं। मेवन प्लगइन। तो देखिए स्प्रिंग
  14460. 9:41:16बूट के एप्लीकेशन में अगर आप pmsl फ़ाइल
  14461. 9:41:19में जाओगे आप देखोगे लास्ट में नीचे मेवन
  14462. 9:41:21प्लगइन करके कुछ ऐडेड है। तो मेवन प्लगइन
  14463. 9:41:24क्या करता है? मेन प्लगइन मेवन की मदद से
  14464. 9:41:27और आपकी एप्लीकेशन की जो इनेशन है,
  14465. 9:41:29प्रोजेक्ट की जो इनफेशन है, प्रोजेक्ट की
  14466. 9:41:30इनफार्मेशन कहां होगी? एक मेवन बेस्ड
  14467. 9:41:32प्रोजेक्ट की pmsl में होगी। एप्लीकेशन
  14468. 9:41:34डॉट प्रॉपर्टीज़ फाइल में उसकी कॉन्फ़िगरेशन
  14469. 9:41:37होगी और बाकी सारी चीजें तो आपको pm.XML
  14470. 9:41:41से ही मिल जाएगी। तो, एक हिसाब से pm.XML
  14471. 9:41:44अगर कोई एप्लीकेशन या कोई एक प्लगइन देख
  14472. 9:41:48लेता है उसको पूरी प्रोजेक्ट की
  14473. 9:41:49इंफॉर्मेशन मिल जाती है। अगर आपको pmsl पे
  14474. 9:41:52डाउट है कि कितनी पावरफुल फाइल है वह तो
  14475. 9:41:55मैं आपको एक चीज़ बता दूं अगर आप प्रोजेक्ट
  14476. 9:41:57को इंपोर्ट करते हो इंटेलिजेंट आईडिया में
  14477. 9:41:59आप प्रोजेक्ट का फोल्डर सेलेक्ट नहीं करते
  14478. 9:42:01हो आप pmsl सेलेक्ट करते हो क्योंकि pmxl
  14479. 9:42:05से उसको पूरा प्रोजेक्ट का स्ट्रक्चर मिल
  14480. 9:42:07जाता है और फिर वो प्रोजेक्ट एज अ
  14481. 9:42:08प्रोजेक्ट इंपोर्ट होता है इंटेलिजेंट तो
  14482. 9:42:10ये बेटर प्रैक्टिस है तो pmsl एक
  14483. 9:42:12इंपॉर्टेंट फाइल है उसमें आप देखिए pmsl
  14484. 9:42:15को खोल के देखिए अपने प्रोजेक्ट पर अपने
  14485. 9:42:16लोकल मशीन पर उसमें आपको java की वर्जनंस
  14486. 9:42:18मिलेगी पैकेज की इनेशन प्रोजेक्ट का नाम,
  14487. 9:42:21आर्टिफेक्ट
  14488. 9:42:22और स्प्रिंग के कौन से-कौ से डिपेंडेंसीज़
  14489. 9:42:25ऐड हो रखे हैं और क्या-क्या प्लगइिंस ऐड
  14490. 9:42:28हो रखे हैं। सारी इनेशन वो एक फाइल में
  14491. 9:42:30आपको मिलेगी। ठीक है? तो मेवन प्लगइन क्या
  14492. 9:42:32करता है? स्प्रिंग बूट में हम मेवन
  14493. 9:42:34इस्तेमाल कर रहे हैं। मेवन प्लगइन क्या
  14494. 9:42:36करता है? उस सारी इनेशन से खुद ब खुद ही
  14495. 9:42:38डॉकर इमेज बना लेता है। देखो उसे पता है
  14496. 9:42:40जार फाइल कहां पे है? जार फाइल होगी
  14497. 9:42:42टारगेट फोल्डर में। करेक्ट? क्योंकि
  14498. 9:42:44स्प्रिंग बूट प्रोजेक्ट है। डिपेंडेंसी
  14499. 9:42:46सारी पता है उसे। सारी pmxl में लिखी हुई
  14500. 9:42:49है। java का वर्जन भी लिखा हुआ है pm.xml
  14501. 9:42:51में तो फिर उसे इंस्ट्रक्शंस की जरूरत है
  14502. 9:42:53नहीं। तो वो क्या करता है? खुद से ही इमेज
  14503. 9:42:55बना लेता है। करेक्ट? और स्प्रिंग बूट
  14504. 9:42:57प्रोजेक्ट है तो उसे रन कैसे करना है वो
  14505. 9:42:58भी पता है। तो इमेज खुद से बना लेता है।
  14506. 9:43:00तो आप इमेज बना सकते हो यूजिंग मेवन
  14507. 9:43:02प्लगइन। ठीक है? और आपको कुछ एडिशनल करने
  14508. 9:43:05की जरूरत नहीं है। मैंने जो अभी कमांड रन
  14509. 9:43:07किया एमवीएन अ बिल्ड कोलन इमेज वो आपको रन
  14510. 9:43:10करना है। ठीक है? ठीक है? बिल्ड इमेज का
  14511. 9:43:12जो कमांड मैंने अभी रन किया वो आपको रन
  14512. 9:43:13करना है। लेकिन अभी दिक्कत ये हो रही है
  14513. 9:43:15कि वर्जन मिसमैच है। तो बेसिकली लेटेस्ट
  14514. 9:43:17वर्जन पर ये कमांड सपोर्ट नहीं कर रहा।
  14515. 9:43:19फिलहाल हो सकता है आप जब वीडियो देख रहे
  14516. 9:43:21हो वो सब सपोर्ट करने लग जाए। लेकिन दूसरा
  14517. 9:43:24तरीका मैं अपनाना चाहूंगा जो कि है डॉकर
  14518. 9:43:26फाइल का। तो डॉकर फाइल में क्या है? एक
  14519. 9:43:28डॉकर फाइल करके एक फाइल होती है जो आप ऐड
  14520. 9:43:30करते हो प्रोजेक्ट में और उसमें आप
  14521. 9:43:32इंस्ट्रक्शंस लिखते हो कि इस तरीके से
  14522. 9:43:34इमेज क्रिएट होनी चाहिए और रन होनी चाहिए।
  14523. 9:43:36ठीक है? इतना आप लिख देते हो। उसे डॉकर
  14524. 9:43:38फाइल कहते हैं। डॉकर की इंस्ट्रक्शंस फाइल
  14525. 9:43:40होती है ये टू क्रिएट द इमेज। ठीक है? तो
  14526. 9:43:43हम दूसरा अप्रोच देखेंगे। तो मैं यहां पर
  14527. 9:43:45आ जाता हूं। ठीक है? और यहां पर मैं एक
  14528. 9:43:47चीज आपको बता दूं यहां पर कि आप अगर चाहे
  14529. 9:43:52थोड़ा बेटर एक्सपीरियंस डॉकर के साथ तो
  14530. 9:43:54यहां पर सेटिंग्स में आकर प्लगइंस में आकर
  14531. 9:43:56ये डॉकर का प्लगइन इंस्टॉल कर लीजिएगा।
  14532. 9:43:58ठीक है? मैंने इंस्टॉल कर लिया क्योंकि
  14533. 9:44:00मैं डॉकर पर ऑलरेडी बहुत काम करता हूं।
  14534. 9:44:02ठीक है? तो मेरे पास यह जो प्लगइन है, यह
  14535. 9:44:04ऑलरेडी इंस्टॉल्ड है। लेकिन आप अगर चाहते
  14536. 9:44:06हो तो आप इंस्टॉल कर लीजिएगा। तो देखिए अब
  14537. 9:44:08प्रोजेक्ट में आ जाइए यहां पर और राइट
  14538. 9:44:10क्लिक कीजिए और यहां पर एक नई फाइल बना
  14539. 9:44:12लीजिए। अब यहां पर देखिए मुझे डॉकर फाइल
  14540. 9:44:14दिखाई दे रही है यहां पर क्योंकि मैंने वो
  14541. 9:44:16प्लगइन इंस्टॉल कर रखा है। लेकिन अगर आपको
  14542. 9:44:18नहीं दिखाई दे रही तो कोई दिक्कत नहीं है।
  14543. 9:44:19ऐसे फाइल बना लीजिए और यहां पर नाम दे
  14544. 9:44:21दीजिए डॉकर फाइल इस तरीके से तो ये फाइल
  14545. 9:44:24बन जाएगी। ठीक है? ऐसे फाइल लिख दिया। और
  14546. 9:44:26अभी ये आइकॉन वगैरह हो सकता है नहीं दिखे।
  14547. 9:44:28अगर आपने प्लगइन नहीं डाला है तो मेरे लिए
  14548. 9:44:30पूरा आइकॉन वगैरह सब हाईलाइटेड है। और
  14549. 9:44:33यहां पर ये जो कोड है ये आपको गेटअप से
  14550. 9:44:34मिल जाएगा। इसे आप देख लीजिए ये कोड। ठीक
  14551. 9:44:36है? यह सिंपल सी फाइल है। इंस्ट्रक्शंस
  14552. 9:44:39फाइल है। मैं आपको एक्सप्लेन कर देता हूं
  14553. 9:44:40यह फाइल कर क्या रही है। देखिए सबसे पहले
  14554. 9:44:43तो हमारी एप्लीकेशन को चाहिए जावा रन होने
  14555. 9:44:45के लिए। तो मैंने यहां पर जावा की एक इमेज
  14556. 9:44:48को इस्तेमाल किया है। एक्लिप्स ट्यूरिन 21
  14557. 9:44:51java 21 ये jडी के 21 है। JRE 21 ठीक है?
  14558. 9:44:54Java 21 वर्जन का हम इस्तेमाल कर रहे हैं
  14559. 9:44:57हमारी ऐप को रन करने के लिए। आप चाहे तो
  14560. 9:44:59दूसरा वर्जन भी ले सकते हो। अगर आप इसे
  14561. 9:45:02सर्च करोगे। ठीक है? Docker hub पे अगर
  14562. 9:45:05यहां पर आके अगर आप डॉकर पे इसे सर्च भी
  14563. 9:45:08करोगे तो आपको यह इमेज यह मैं क्या यूज कर
  14564. 9:45:10रहा हूं यह आपको दिख जाएगा। देखिए ओपन jdk
  14565. 9:45:12की ऑफिशियल लाइब्रेरीज है टेम्यूरिन आप
  14566. 9:45:14चाहे तो यहां पे कोई भी वर्जनंस ले सकते
  14567. 9:45:17हो कोई भी वर्जन 25 भी लेटेस्ट है अगर आप
  14568. 9:45:20चाहो तो ये टोटली आपके ऊपर है। मैंने 21
  14569. 9:45:23लिया हुआ है। ठीक है? क्योंकि ये मुझे
  14570. 9:45:24स्टेबल लगता है। अभी लेटेस्ट वर्ज़न्स
  14571. 9:45:26जनरली मैं प्रेफर नहीं करता अनलेस एंड
  14572. 9:45:28अंटिल मैंने उसको ट्राई किया हुआ। तो 25
  14573. 9:45:30वाला मैंने अभी ये जो इमेज है इमेज का 25
  14574. 9:45:33वर्ज़न मैंने ट्राई नहीं किया है। jवा
  14575. 9:45:35लोकली 25 ट्राई किया है लेकिन ये वाला
  14576. 9:45:36नहीं तो मैं अभी फिलहाल वो नहीं ले रहा।
  14577. 9:45:39आप ले सकते हो। वर्क डायरेक्टरी मैंने सेट
  14578. 9:45:41की है। तो विद इन द कंटेनर विद इन द इमेज
  14579. 9:45:43मैं चाहता हूं कि वर्क डायरेक्टरी स्लैश
  14580. 9:45:45ऐप हो। इसका मतलब है जो भी अब मैं कमांड्स
  14581. 9:45:47रन करूंगा वो स्लैश ऐप के अंदर रन होगी।
  14582. 9:45:50कंटेनर के अंदर हां कंटेनर एक अलग सा मशीन
  14583. 9:45:53यानी कि एक छोटा सा आइसोलेटेड एनवायरमेंट
  14584. 9:45:55या मशीन क्रिएट होता है। ठीक है? अब मैं
  14585. 9:45:57क्या लिख रहा हूं? मैं यहां पर लिख रहा
  14586. 9:45:58हूं टारगेट फोल्डर में जो भी जार फाइल है
  14587. 9:46:00उसको कॉपी करके कंटेनर के अंदर या इमेज के
  14588. 9:46:04अंदर ले लीजिए app डॉट जार नाम कर दीजिए
  14589. 9:46:06उसका। तो इसका मतलब क्या है? टारगेट
  14590. 9:46:08फोल्डर के अंदर जो भी जार फाइल है यहां पर
  14591. 9:46:10एक जार फाइल ये वाली इसको ले लीजिए स्टार
  14592. 9:46:13डॉट जार जो भी नाम है और उसको रीनेम कर
  14593. 9:46:15दीजिए ऐप डॉट जार इंसाइड द इमेज या इनसाइड
  14594. 9:46:17द कंटेनर जो भी होगा पोर्ट 880 को एक्सपोज़
  14595. 9:46:21कर दीजिए। यानी कि हमारी एप्लीकेशन रन
  14596. 9:46:22होगी पोर्ट 880 पे तो इसको एक्सपोज कर
  14597. 9:46:24दीजिए और यह वाली कमांड को रन कर दीजिए जब
  14598. 9:46:28कंटेनर स्टार्ट हो। तो java hन jar app ऐप
  14599. 9:46:30डॉट जार तो इससे एप्लीकेशन स्टार्ट हो
  14600. 9:46:32जाएगी। ठीक है? ये है हमारी डॉकर इमेज को
  14601. 9:46:35क्रिएट करने की रेसिपी। समझ रहे हैं आप?
  14602. 9:46:38ये क्या है? हमारी जो डॉकर इमेज है उसको
  14603. 9:46:42क्रिएट करने की एक हिसाब से हमने रेसिपी
  14604. 9:46:44डिफाइन कर रखी है और इस रेसिपी के बिहाफ
  14605. 9:46:47पर इस रेसिपी के बिहाफ पर हमारी जो
  14606. 9:46:50कंटेनर्स है वो रन होगी। अभी तो हम इमेज
  14607. 9:46:52बना रहे हैं जो कि है टेंपलेट। उसके बाद
  14608. 9:46:54वो कंटेनर्स में कन्वर्ट होगी। ठीक है? तो
  14609. 9:46:57मैं इसको स्टॉप कर देता हूं एप्लीकेशन जो
  14610. 9:46:59लोकल रनिंग है। ठीक है? यहां पर हम आ जाते
  14611. 9:47:01हैं। अब यहां पर अ मुझको क्या करना है?
  14612. 9:47:05मुझको जो है अ एक कमांड रन करना होगा। ठीक
  14613. 9:47:09है? तो मैं ऊपर आ जाता हूं। ठीक है?
  14614. 9:47:12क्लियर कर लेता हूं। ठीक है? अब देखिए
  14615. 9:47:14यहां पर मैं कहूंगा डॉकर बिल्ट हफन टी
  14616. 9:47:19फिटनेस
  14617. 9:47:22मोनोलिथ।
  14618. 9:47:24ठीक है? या जो भी नाम आप देना चाहो इमेज
  14619. 9:47:26का वो लिख दो और डॉट लिख दो। ठीक है? तो
  14620. 9:47:28मैं क्या कर रहा हूं? मैं कह रहा हूं
  14621. 9:47:29बिल्ड डॉकर इमेज और उसका नाम दीजिए फिटनेस
  14622. 9:47:32मोनोलिथ और जो करंट फोल्डर है उस उसको
  14623. 9:47:36रेफर कीजिए एज अ कंटक्स्ट डायरेक्टरी
  14624. 9:47:38क्योंकि डॉकर फाइल और सब करंट डायरेक्टरी
  14625. 9:47:40में है और इसको एंटर करूंगा मैं तो जैसे
  14626. 9:47:42ही आप ये करते हो तो देखिए ये इमेज
  14627. 9:47:45बिल्डिंग का जो प्रोसेस है वो स्टार्ट हो
  14628. 9:47:46जाता है। आप देख पा रहे हो यहां पर ये
  14629. 9:47:49एक्लिप्स स्टेमरन 21 की जो इमेज है उसको
  14630. 9:47:51फच कर रहा है। उसको सेव कर रहा है। उसको
  14631. 9:47:53डाउनलोड कर रहा है। फिर देखिए सारे जो
  14632. 9:47:55आपने लिखे थे यहां पर इंस्ट्रक्शंस वो
  14633. 9:47:57सारे रन हो रहे हैं। तो मैं इसको एक हिसाब
  14634. 9:47:59से स्पेसिंग हटा देता हूं। तो देखिए सबसे
  14635. 9:48:02पहले तो यह डॉकर की इम यह इमेज फ़च हुई।
  14636. 9:48:05फिर यह वर्क डायरेक्टरी फेच हुई और फिर ये
  14637. 9:48:07जार फाइल अंदर कॉपी हुई है। ठीक है? और
  14638. 9:48:10फिर यहां पर देखिए लेयर्स एक्सपोर्ट हुए
  14639. 9:48:12और डॉकर फाइल रेडी है। ठीक है? ये दोनों
  14640. 9:48:15चीजें जब इमेज रन होगी तब एग्जीक्यूट
  14641. 9:48:18होगी। इनका नोट नोट डाउन कर लिया गया है।
  14642. 9:48:20ठीक है? तो इतना हो चुका है। अब मैं क्या
  14643. 9:48:22कर सकता हूं? मैं डॉकर इमेज को रन कर सकता
  14644. 9:48:24हूं। तो देखिए इमेज आप देख सकते हो यहां
  14645. 9:48:25पर आके।
  14646. 9:48:27डॉकर डेस्कटॉप आपके पास होगा। यह देखिए
  14647. 9:48:29फिटनेस मोनोलिथ नाम की इमेज है। बन चुके
  14648. 9:48:32हैं। 38 सेकंड्स। अब मेरे पास कोई कंटेनर
  14649. 9:48:35नहीं है। तो मैं क्या कर सकता हूं? इस
  14650. 9:48:36इमेज से एक कंटेनर भी रन कर सकता हूं। तो
  14651. 9:48:39मैं कहूंगा डॉकर रन हफन पी और फिर कहूंगा
  14652. 9:48:43एटी80 कोलन 8080 और फिर फिटनेस मोनोलिथ।
  14653. 9:48:51फिटनेस मोनोलिथ इमेज का नाम है। ठीक है?
  14654. 9:48:54डॉकर रन हफन पी के मदद से आप क्या कर रहे
  14655. 9:48:56हो? पोर्ट मैपिंग कर रहे हो। पोर्ट मैपिंग
  14656. 9:48:58का मतलब मैं आपको बता देता हूं। ठीक है?
  14657. 9:49:00तो पोर्ट मैपिंग के लिए यहां पर आ जाता
  14658. 9:49:02हूं। सबसे पहले तो देखिए आपकी एप्लीकेशन
  14659. 9:49:05रन हो रही है एक कंटेनर में। ठीक है?
  14660. 9:49:07कंटेनर में कौन से पोर्ट पे रन हो रही
  14661. 9:49:09होगी? ये कंटेनर में रन हो रही होगी यह
  14662. 9:49:12880 पोर्ट पे। ठीक है? तो पोर्ट है एटी80।
  14663. 9:49:15तो एटी80 पोर्ट पर आपकी एप्लीकेशन विद इन
  14664. 9:49:18दी कंटेनर रन हो रही है। अब आप लोकल मशीन
  14665. 9:49:21से इसको एक्सेस करना चाहते हो ईटी80 क्या
  14666. 9:49:24कर पाओगे? जी नहीं क्योंकि ये कंटेनर में
  14667. 9:49:26रन हो रही है। आप एक्सेस नहीं कर पाओगे।
  14668. 9:49:28ये एक हिसाब से अलग मशीन ही है उस वहां पर
  14669. 9:49:31रन हो रही है। तो आपको कहना होगा आपको
  14670. 9:49:33करना होगा पोर्ट मैपिंग। पोर्ट मैपिंग का
  14671. 9:49:35मतलब यह है कि आप डॉकर को यह बोल रहे हो
  14672. 9:49:38कि मेरी लोकल मशीन पर जो 8080 पोर्ट है
  14673. 9:49:41उसको मैप कर दो कंटेनर की 8080 पोर्ट से।
  14674. 9:49:44तो 880 पोर्ट ऑन माय मशीन शुड बी मैप टू
  14675. 9:49:47880 पोर्ट इनसाइड द कंटेनर। इतना आप बोल
  14676. 9:49:50देते हो तो क्या होगा? सारी रिक्वेस्ट जो
  14677. 9:49:51यहां से आएगी वह जाएगी कंटेनर के अंदर
  14678. 9:49:54पोर्ट 880 पर। ठीक है? और वही हमने यहां
  14679. 9:49:58पर मेंशन किया है। यह एटी80 जो है यह
  14680. 9:50:00होस्ट का पोर्ट है। और यह वाला एटी80 विद
  14681. 9:50:03इन द कंटेनर है। आप चाहो तो दूसरे पोर्ट
  14682. 9:50:05पे भी इसको मैप कर सकते हो। और इसको एंटर
  14683. 9:50:07दबा दीजिए। एंटर दबा देंगे। तो अच्छा यह आ
  14684. 9:50:10गई कुछ एरर। अननोन सोर्स अननोन सोर्स।
  14685. 9:50:14अच्छा, यह क्या हो गया? अनसपोर्टेड क्लास
  14686. 9:50:17वर्शन एरर। अच्छा, एरर अब यह आई है कि
  14687. 9:50:20क्लास फाइल वर्जन है 69 और जो वर्जनंस
  14688. 9:50:24हमने लिए हैं वो है 65। अच्छा, मुझे एरर
  14689. 9:50:27समझ में आ गई है। तो देखिए यहां पर
  14690. 9:50:28एप्लीकेशन को हम कंपाइल कर रहे हैं। ऊपर
  14691. 9:50:31अगर आप आते हो एप्लीकेशन को कंपाइल कर रहे
  14692. 9:50:33हो आप java 25 वर्जन के अगेंस्ट। ठीक है?
  14693. 9:50:36और कंटेनर में रन कर रहे हो आप जावा वर्जन
  14694. 9:50:4021 के अगेंस्ट। यह तो गलत बात हो गई ना।
  14695. 9:50:43गलत बात तो है ही ऑफ कोर्स। तो यहां पर आ
  14696. 9:50:45जाएंगे। हम क्या करेंगे? अ 25 की कोई इमेज
  14697. 9:50:49है तो वो ले लेंगे यहां पर। एक हिसाब से
  14698. 9:50:53GDK नैनो सर्वर ही ले लेते हैं। GDK hfन
  14699. 9:50:56नैनो सर्वर। ठीक है? 25 से कोई इमेज यहां
  14700. 9:50:58पर दिख नहीं रही है। तो इस पर क्लिक करता
  14701. 9:51:00हूं नैनो सर्वर।
  14702. 9:51:03यह वाली जो इमेज है शायद इसको यूज कर सकते
  14703. 9:51:05हैं या पता नहीं। एक काम करता हूं मैं
  14704. 9:51:07यहां पर एक ट्राई कर लेता हूं। इसको है ना
  14705. 9:51:0921 जेआर के बजाय 25 जेआर ही करके देखता
  14706. 9:51:11हूं। ठीक है? और यहां पर आता हूं और फिर
  14707. 9:51:14से हम इमेज को बिल्ड करेंगे इस तरीके से।
  14708. 9:51:17ठीक है? देखता हूं यह इसको पुल कर पाता है
  14709. 9:51:19या नहीं या एरर देता है।
  14710. 9:51:22ठीक है? पुल तो इसने कर लिया है। कुछ एरर
  14711. 9:51:24तो अभी तक आया ही नहीं है। तो आई थिंक कोई
  14712. 9:51:27दिक्कत वैसे होनी नहीं चाहिए। ठीक है?
  14713. 9:51:30पूरा का पूरा पुल हो गया। ठीक है? इमेज भी
  14714. 9:51:33बन चुकी है। अब मैं इसको रन करता हूं। रन
  14715. 9:51:35करके देखते हैं रन होता है या नहीं। अच्छा
  14716. 9:51:37देखिए एप्लीकेशन रन होने तो लग गई लेकिन
  14717. 9:51:40दिक्कत यह है कि आपकी जो ईएनवी वेरिएबल्स
  14718. 9:51:45हैं वो यहां पर प्रोवाइडेड नहीं है। है
  14719. 9:51:48प्रोवाइडेड? जी नहीं प्रोवाइडेड नहीं है।
  14720. 9:51:50तो मैं क्या करूंगा? मैं ये ईएनवी फाइल्स
  14721. 9:51:52को प्रोवाइड करूंगा। तो प्रोवाइड करने के
  14722. 9:51:54लिए मैं यहां पर यह जो मेरी वैल्यूज़ है
  14723. 9:51:56इसको कॉपी कर लूंगा। ठीक है? और यहां पर आ
  14724. 9:52:00जाऊंगा। ठीक है? इस तरीके से और यहां पर
  14725. 9:52:06मैं रन करूंगा। यहां पर आ जाऊंगा ऐसे। और
  14726. 9:52:10डॉकर रन मैं कहूंगा हफन पी एटी80 कोलन
  14727. 9:52:158080 इस तरीके से और फिर यहां पर लिखूंगा
  14728. 9:52:19हफन ई। ठीक है? हफन ई से आप क्या कर सकते
  14729. 9:52:22हो? एनवायरमेंट वेरिएबल्स पास कर सकते हो
  14730. 9:52:24रन टाइम पर। ठीक है? तो यहां से मैं ये
  14731. 9:52:27सारे जो वेरिएबल्स हैं इसको पास करूंगा इस
  14732. 9:52:29तरीके से
  14733. 9:52:32ऐसे। ठीक है?
  14734. 9:52:38ऐसे अच्छा तो ये एक ही लाइन में पूरा का
  14735. 9:52:42पूरा मैं लिखते जा रहा हूं। ठीक है? तो
  14736. 9:52:44देखिए ये कमांड हमने रन किया था। ठीक है?
  14737. 9:52:48अच्छा इमेज के नाम तो मैंने लिख लिखा ही
  14738. 9:52:50नहीं है इमेज का नाम। तो फिटनेस
  14739. 9:52:52मोनोलिथ
  14740. 9:52:54ऐसे ठीक है देखिए यह कमांड हमने रन किया
  14741. 9:52:58था फिट डॉकर रन हफन बी एटी 80 कोलन 8080
  14742. 9:53:02और हमने इमेज का नाम दिया था पहले अब मैं
  14743. 9:53:04क्या कर रहा हूं hन ई से ये एक दो और
  14744. 9:53:09तीसरा तीन एनवायरमेंट वेरिएबल्स पास कर
  14745. 9:53:11रहा हूं इस कंटेनर में रन रन टाइम पर ठीक
  14746. 9:53:13है तो यहां पर आ जाएंगे इसको कर देंगे
  14747. 9:53:16क्लियर और फिर यहां पर इसको पास कर देंगे
  14748. 9:53:19अच्छा यह क्या हो यहां पर अब ये बोल रहा
  14749. 9:53:21है इनवैलिड रेफरेंस डीबी यूजर अ इज़ इक्वल
  14750. 9:53:26टू रूट अच्छा सॉरी गलती हो गई मेरे से एक
  14751. 9:53:29और तो देखिए ये मैंने हफन ई से एक
  14752. 9:53:32एनवायरमेंट वेरिएबल पास किया है यहां पर
  14753. 9:53:34हफन ई से और एनवायरमेंट वेरिएबल पास
  14754. 9:53:36करूंगा मैं हफन ई और फिर यहां पर हफन ई
  14755. 9:53:40ठीक है मैं बता देता हूं यहां पर लिख के
  14756. 9:53:42आपको तो देखिए हफन ई से एक एनवायरमेंट
  14757. 9:53:44वेरिएबल पास किया फिर ये हफन ई से डीबी
  14758. 9:53:48यूजर और फिर हफन ई से डीबी पास पासवर्ड तो
  14759. 9:53:50देखिए डीबी यूआरएल के आगे हफाई नहीं लगा
  14760. 9:53:52है। डीबी यूजर के आगे हफाई नहीं लगा है और
  14761. 9:53:55पासवर्ड के पहले हफाई नहीं लगा है। ठीक
  14762. 9:53:57है? हफाई नहीं सबके आगे लगा है। तो ऐसा
  14763. 9:53:59करके मैं एंटर कर देता हूं। और एंटर करने
  14764. 9:54:02पर आई थिंक एप्लीकेशन चल जानी चाहिए। कोई
  14765. 9:54:05दिक्कत वैसे होनी नहीं चाहिए। देखिए
  14766. 9:54:07एप्लीकेशन चल रही है। अच्छा एप्लीकेशन तो
  14767. 9:54:10चल गई। लेकिन दिक्कत क्या हुई है? यह
  14768. 9:54:14डेटाबेस को नहीं कनेक्ट कर पा रहा है। ठीक
  14769. 9:54:17है? यह डेटाबेस को नहीं कनेक्ट कर पा रहा
  14770. 9:54:20है इन माय ओपिनियन।
  14771. 9:54:28ठीक है दोस्तों? ये अभी भी डेटाबेस को
  14772. 9:54:30कनेक्ट नहीं कर पा रहा। और इसका रीज़न मैं
  14773. 9:54:32समझ चुका हूं। रीज़न ये है कि यहां पर हमने
  14774. 9:54:34लिखा है। देखिए डेटाबेस का एड्रेस हमने
  14775. 9:54:36लिखा है लोकल होस्ट। करेक्ट? लोकल होस्ट
  14776. 9:54:393306। लेकिन एक्चुअली लोकल होस्ट का मतलब
  14777. 9:54:42होता है लोकल होस्ट का मतलब कंटेनर के
  14778. 9:54:44अंदर क्या होगा विद इन द कंटेनर लोकल
  14779. 9:54:46होस्ट राइट विद इन द कंटेनर लोकल होस्ट
  14780. 9:54:48में वो रन हो रहा है क्या माय सीक्वल तो
  14781. 9:54:51देखिए लोकल होस्ट का मतलब है इनसाइड द
  14782. 9:54:54कंटेनर तो इसका मतलब माय सीक्वल यहां पे
  14783. 9:54:56रन हो रहा है कंटेनर के अंदर करेक्ट है ये
  14784. 9:54:59जी नहीं माय सीक्वल रन हो रहा है यहां पर
  14785. 9:55:02बाहर मेरे लोकल मशीन पर रन हो रहा है
  14786. 9:55:04आउटसाइड द कंटेनर तो लोकल होस्ट काम नहीं
  14787. 9:55:06करेगा यहां पर तो आपको एक छोटा सा
  14788. 9:55:07मॉडिफिकेशन करना होगा यहां पर रन करते
  14789. 9:55:10वक्त आपको पास करना होगा h होस्ट डॉट डॉकर
  14790. 9:55:12डॉट इंटरनल इसका मतलब हो गया जो मशीन लोकल
  14791. 9:55:15होस्ट वाली मशीन जहां पर डॉकर रन हो रहा
  14792. 9:55:18है तो मैंने ये लिख दिया है और फिर से मैं
  14793. 9:55:20इसको रन करता हूं एक बार देखते हैं एक चेक
  14794. 9:55:23करके कि रन होता है या नहीं ये एप्लीकेशन
  14795. 9:55:26रन तो आइडियली होनी चाहिए अब कोई दिक्कत
  14796. 9:55:28नहीं आनी चाहिए ठीक है देखिए एप्लीकेशन रन
  14797. 9:55:30हो गई कैसा फील हो रहा है मुझे तो बहुत
  14798. 9:55:32बढ़िया फील हो रहा है ठीक है काफी एरर्स
  14799. 9:55:34आए बट हमने सब कुछ पार पार कर लिया ठीक है
  14800. 9:55:38अब आप चाहो तो यहां पर आ सकते हो पोस्टमैन
  14801. 9:55:41पर और इसी तरीके से आप क्वेरी कर सकते हो।
  14802. 9:55:43देखिए अच्छा रुकिए यहां पर मैं एक यूनिक
  14803. 9:55:47यूजर क्रिएट करूंगा। देखिए ये यूजर भी
  14804. 9:55:49क्रिएट हो गया। यह यूजर क्रिएट हो गया। तो
  14805. 9:55:50पहले एरर आई थी क्योंकि उस ईमेल से यूजर
  14806. 9:55:54ऑलरेडी एकिस्टिंग था और एरर भी आपको सारी
  14807. 9:55:56की सारी यहां पर दिखाई देगी। देखिए एरर
  14808. 9:55:59लॉग सब कुछ यहां पर दिखाई देगी। यहां पर
  14809. 9:56:02आपको कंसोल पर। ठीक है? अगर आप एरर नहीं
  14810. 9:56:04देखना चाहते। देखिए अगर मैं कंसोल को बंद
  14811. 9:56:06करता हूं। लाइक मैं कंट्रोल C प्रेस करता
  14812. 9:56:08हूं। तो एप्लीकेशन शटडाउन हो गया। अगर मैं
  14813. 9:56:10नहीं चाहता कि यहां पर अ शटडाउन हो तो
  14814. 9:56:13मुझे इसे डिटचै मोड में रन करना होगा। तो
  14815. 9:56:15डिटच मोड के लिए मैं यहां पर रन करूंगा
  14816. 9:56:17हफन डी ऐसे हफन डी। हफन डी का मतलब है
  14817. 9:56:21डिटैच मोड। ठीक है? तो डिटैच मोड में क्या
  14818. 9:56:23है? ये कंटेनर पे मैं ये सॉरी कंटेनर नहीं
  14819. 9:56:25ये टर्मिनल पे मैं और भी दूसरे कमांड चला
  14820. 9:56:28सकता हूं। और ये टर्मिनल ब्लॉक नहीं
  14821. 9:56:29रहेगा। मुझे सारे लॉग्स नहीं दिखाएगा।
  14822. 9:56:31यहां पर कंटेनर की आईडी आ गई। और कंटेनर
  14823. 9:56:34मुझे चेक करना है तो मैं यहां पर आ सकता
  14824. 9:56:35हूं। और यहां पर डॉकर डेस्कटॉप इंस्टॉल्ड
  14825. 9:56:37है। डॉकर डेस्कटॉप में आप यहां पर आते हो
  14826. 9:56:39तो देखिए यह कंटेनर। अच्छा काफी सारे बार
  14827. 9:56:43मैंने एप्लीकेशन चलाई वो चली नहीं क्योंकि
  14828. 9:56:45एरर आ रही थी। तो ये सारा मैं डिलीट कर
  14829. 9:56:47देता हूं। इसको सेलेक्ट करके डिलीट इससे
  14830. 9:56:49स्पेस सेव होता है। और ये वाली कंटेनर चल
  14831. 9:56:52रही है। आप देख पा रहे हो यहां पर। ठीक
  14832. 9:56:53है? यहां पर अगर क्लिक करते हो तो आपको
  14833. 9:56:55यहां पर लॉक्स भी दिखाई देंगे। ठीक है?
  14834. 9:56:56अगर मैं एक यूजर क्रिएट करता हूं तो यहां
  14835. 9:56:58पर एक रैंडम मैं आई नंबर डाल के एक ईमेल
  14836. 9:57:01से क्रिएट करता हूं यूजर। तो देखिए यूजर
  14837. 9:57:03भी क्रिएट हो गया। और यहां पर आपको लॉक्स
  14838. 9:57:05भी दिखाई देंगे। देखिए तो आपकी एप्लीकेशन
  14839. 9:57:08कहां रन हो रही है? डॉकर कंटेनर में। डॉकर
  14840. 9:57:11के अंदर रन हो रही है। आपने क्या किया है?
  14841. 9:57:13आपने कंटेनराइज़ किया है पूरी की पूरी
  14842. 9:57:14एप्लीकेशन को। ठीक है? तो यहां पर विद इन
  14843. 9:57:18कंटेनर आपकी ऐप रन हो रही है। ठीक है? अ
  14844. 9:57:21ये माय ऐप है। माय ऐप। ठीक है? और ये माय
  14845. 9:57:26सीक्वल यहां पर नहीं है। ये माय सीक्वल
  14846. 9:57:28यहां पर कनेक्ट कर रहा है उसको अभी
  14847. 9:57:30फिलहाल। ठीक है? और यहां पर पोर्ट 880 पे
  14848. 9:57:34अगर लोकल हो उस पे कोई भी रिक्वेस्ट आती
  14849. 9:57:35है तो वो मैप्ड है कंटेनर के पोर्ट 880
  14850. 9:57:38पर। ठीक है? तो उम्मीद करता हूं यह
  14851. 9:57:41हेल्पफुल रहा और यहां पर आप देख पा रहे हो
  14852. 9:57:44सारे के सारे लॉक्स। ठीक है? बढ़िया सी
  14853. 9:57:46फीलिंग है ये। अब देखिए मैं क्या चाहता
  14854. 9:57:48हूं? मैं चाहता हूं कि मेरी जो एप्लीकेशन
  14855. 9:57:50है ना मेरी जो एप्लीकेशन मैं उसे डॉकर hub
  14856. 9:57:54पर भी पब्लिश करूं। ठीक है? तो सबसे पहले
  14857. 9:57:56तो आपको क्या करना होगा? Docker hub पर
  14858. 9:57:58आकर साइन अप करना होगा। तो देखिए मैंने
  14859. 9:58:00डॉकर hub पर एक अकाउंट बना लिया है और
  14860. 9:58:02यहां पर ना सबसेेंट चीज है आपका यूजरनेम
  14861. 9:58:05तो डी कोड7
  14862. 9:58:07अ ठीक है
  14863. 9:58:10डी कोड7 ये मेरा यूजरनेम है एक हिसाब से
  14864. 9:58:14ठीक है ये यूजरनेम को ध्यान में रखना है
  14865. 9:58:16क्योंकि पुश करने के लिए आपको डॉकर इमेज
  14866. 9:58:18को यूजरनेम से टैग करना होगा और फिर पुश
  14867. 9:58:20करना होगा। ठीक है? तो वो भी मैं प्रोसेस
  14868. 9:58:22आपको बता देता हूं। सो फिर से मैं आ
  14869. 9:58:24जाऊंगा यहां पर। ये कमांड तो आपको उम्मीद
  14870. 9:58:26करता हूं समझ गया। थोड़ा कॉम्प्लेक्स सा
  14871. 9:58:27दिखता है कमांड लेकिन आपने रन किया है
  14872. 9:58:29डॉकर रन और फिर पहले पोर्ट मैप किया है।
  14873. 9:58:32फिर पहला एनवायरमेंट वेरिएबल पास किया
  14874. 9:58:34आपने जो कि यहां तक है। ठीक है? ये पूरी
  14875. 9:58:37चीज। फिर आपने दूसरा एनवायरमेंट वेरिएबल
  14876. 9:58:39पास किया है जो कि यहां तक है। ठीक है? और
  14877. 9:58:42इसको अगर मैं फॉर्मेट कर दूं सही से तो ये
  14878. 9:58:44ऐसे आपने पास किया है। देखिए ऐसे ये अब
  14879. 9:58:48आपको क्लियरली दिखेगा। ठीक है? ऐसे आपने
  14880. 9:58:50पास किया हुआ है। ठीक है? इसको रन भी कर
  14881. 9:58:52सकता हूं। ऐसे कॉपी करके यह रन हो जाएगा।
  14882. 9:58:54अगर मैं एक और इंस्टेंस रन करना चाहता
  14883. 9:58:56हूं। हूं 8081 पे सेम एप्लीकेशन का। तो
  14884. 9:58:58देखिए मैंने लोकल होस्ट पर पोर्ट मैपिंग
  14885. 9:59:01881 कर दी है और इसको कॉपी कर देता हूं।
  14886. 9:59:04यहां पर आ जाता हूं। यहां पर पेस्ट अच्छा
  14887. 9:59:05पेस्ट नहीं कर पाऊंगा क्योंकि मैंने एंटर
  14888. 9:59:07दबा दिया यहां पर। ठीक है? एंटर दबाने के
  14889. 9:59:10लिए आपको शायद बैकवर्ड स्लैश ऐड करना
  14890. 9:59:12जरूरी है। यहां पर ऐसे कुछ है शायद
  14891. 9:59:14बैकवर्ड स्लैश
  14892. 9:59:16बैकवर्ड स्लैश एक बार मैं ट्राई करता हूं
  14893. 9:59:18बैकवर्ड स्लैश से। लेकिन अगर नहीं होता है
  14894. 9:59:20तो मैं इस पर ज्यादा टाइम स्पेंड नहीं
  14895. 9:59:22करूंगा।
  14896. 9:59:23अच्छा नहीं हो रहा है। तो A के हिसाब से
  14897. 9:59:25मैं इसको कंट्रोल सेट कर देता हूं। ठीक
  14898. 9:59:28है? और इसको मैं कॉपी कर लेता हूं और इसको
  14899. 9:59:32कंट्रोल सेट कर देता हूं। ठीक है? तो ये
  14900. 9:59:33एक लाइन में आ गया एक हिसाब से। और ये
  14901. 9:59:36इसका फॉर्मेटेड वर्जन है। अगर आपको देखना
  14902. 9:59:38हो तो हमने क्या किया। ठीक है? तो आप इसका
  14903. 9:59:40एक और इंस्टेंस भी रन कर सकते हो। मैं एक
  14904. 9:59:42और इंस्टेंस भी रन करके ये वर्जन मैं आपको
  14905. 9:59:44दिखा देता हूं। 881 और यहां पर मैं हफन पी
  14906. 9:59:47के साथ डालूंगा। अच्छा हफन पी के पहले
  14907. 9:59:49डालूंगा हफन डी डिटैच मोड में रन करना
  14908. 9:59:52चाहता हूं। ठीक है? तो इसको कॉपी कर लिया
  14909. 9:59:54मैंने और यहां पर आऊंगा और अच्छा सॉरी
  14910. 9:59:58क्लियर कर दूंगा और यहां पर ऐसे रन कर
  14911. 10:00:00दूंगा। तो देखिए यह दूसरा कंटेनर रन हो
  14912. 10:00:01गया जो कि रन हो रहा है पोर्ट 8081 और
  14913. 10:00:04इसको आप देख सकते हो यहां पर देखिए बैक
  14914. 10:00:07जाता हूं। यह देखिए यह रन हो रहा है 881।
  14915. 10:00:09यहां पर आपको दिखेगा अभी देखिए 8080 पर
  14916. 10:00:12मैप्ड है। ये 8081 पर मैप्ड है। तो दो
  14917. 10:00:15इंस्टेंस रन हो रहे हैं स्प्रिंग बूट
  14918. 10:00:17एप्लीकेशन के। आप 10 इंस्टेंस रन कर सकते
  14919. 10:00:19हो। यहां से स्टार्ट स्टॉप सब कुछ कर सकते
  14920. 10:00:22हो कंटेनर्स को। ठीक है? उम्मीद करता हूं
  14921. 10:00:24यह क्लियर रहा। अब मैं आपको टैगिंग कैसे
  14922. 10:00:26करना है वह मैं बता देता हूं। ठीक है? तो
  14923. 10:00:28देखिए टैगिंग करने के लिए सबसे पहले तो
  14924. 10:00:30देखिए पुश करना है इमेज हमें। हमें पुश
  14925. 10:00:33करना है इमेज यहां पर डॉकर hub पर। ठीक
  14926. 10:00:36है? तो ये डॉकर hub है और यहां पर यह मेरा
  14927. 10:00:39यूजरनेम है। डीकॉड7 ये मेरा डमी यूजरनेम
  14928. 10:00:42है कोर्सर्सेस के लिए। ठीक है? इस यूजरनेम
  14929. 10:00:44पर आके देखना नहीं क्या-क्या है। ठीक है?
  14930. 10:00:46तो क्लियर कर लेता हूं। सबसे पहले आपको
  14931. 10:00:47टैग करना होगा उस यूजरनेम से। तो मैं क्या
  14932. 10:00:49करूंगा? डॉकर टैग और फिर मैं लोकल इमेज का
  14933. 10:00:53नाम लिखूंगा फिटनेस मोनोलिथ ऐसे लिखूंगा।
  14934. 10:00:57ठीक है? और फिर मैं कहूंगा डी कोड 07
  14935. 10:01:02और आप आपको रेपोज़िटरी का अगर नाम देना है
  14936. 10:01:04तो वो दीजिए। तो मैं फिटनेस मोनो लिख
  14937. 10:01:06दूंगा। ठीक है? और कोलन लेटेस्ट ऐसे लिख
  14938. 10:01:10दीजिए। तो डॉकर टैग फिटनेस मोनोलिथ और
  14939. 10:01:13आपका यूजरनेम और जो भी रेपोज़िटरी का नाम
  14940. 10:01:15आप चाहते हो डॉकर अप पे वो और यह एक टैग
  14941. 10:01:17जो कि लेटेस्ट वर्जन है। लेटेस्ट नहीं
  14942. 10:01:19लिखोगे तो बाय डिफ़ॉल्ट लेटेस्ट ही होता है
  14943. 10:01:21ये। ऐसा करके एंटर कर दीजिए। ठीक है? और
  14944. 10:01:24फिर आपको कहना है डॉकर लॉग इन। डॉकर लॉग
  14945. 10:01:27इन करना है। डॉकर लॉग इन आप करोगे तो आपको
  14946. 10:01:30यह ब्राउज़र में लेके जाएगा ऑथेंटिकेशन के
  14947. 10:01:31लिए। तो मैं ऑलरेडी ऑथेंटिकेटेड हूं। तो
  14948. 10:01:34मैं लॉग इन करूंगा यहां पर। तो देखिए यह
  14949. 10:01:36ब्राउज़र में आपको लेके जाएगा। मेरा लॉग इन
  14950. 10:01:38सक्सीडेड है क्योंकि
  14951. 10:01:41देखिए डिकोड 007 से मैं ऑलरेडी लॉक्ड इन
  14952. 10:01:44हूं करेक्ट और ऑथेंटिकेटिंग विद
  14953. 10:01:45एक्सिस्टिंग क्रेडेंशियल्स क्यों करना है
  14954. 10:01:47ये क्योंकि आप पुश करना चाहते हो इमेज
  14955. 10:01:49डॉकर hub पे ठीक है इतना करने के बाद आप
  14956. 10:01:52क्या करोगे आप इसे कहोगे डॉकर पुश और फिर
  14957. 10:01:55कहोगे डिकोड 07
  14958. 10:02:02फिटनेस मोनो
  14959. 10:02:05ऐसे ठीक है और आप इसको एंटर एंटर कर
  14960. 10:02:07दूंगा। एंटर करोगे तो देखिए पुश हो रहा
  14961. 10:02:09है। कहां पुश हो रहा है? डॉकरio डीcड007
  14962. 10:02:12फिटनेस मोनो। सिंपल सा प्रोसेस है। ये एक
  14963. 10:02:15हिसाब से आप गेट रिपॉज़िटरी पर कोड पुश
  14964. 10:02:17करते हो ना ये वैसा ही प्रोसेस है। ठीक
  14965. 10:02:19है? सिंपल है। देखिए ये थोड़ा टाइम लेगा
  14966. 10:02:22डिपेंडिंग ऑन द इंटरनेट कनेक्शन स्पीड और
  14967. 10:02:24कितनी बड़ी इमेज वगैरह आपने बनाई है। इमेज
  14968. 10:02:26ज्यादा बड़ी है तो थोड़ा टाइम लेगा। लेकिन
  14969. 10:02:28ये इतना टाइम नहीं लेता है। अगर इंटरनेट
  14970. 10:02:30स्पीड अच्छी है तो। ये देखिए पुश हो गया।
  14971. 10:02:32यहां पर आ जाइए। यहां पर एक हिसाब से
  14972. 10:02:34रिफ्रेश कर लीजिए। रिफ्रेश आप करते हो
  14973. 10:02:37यहां पर लास्ट पोस्ट देखिए इमेज तो यह
  14974. 10:02:39देखिए फिटनेस मोनो आ गई यहां पर ठीक है
  14975. 10:02:41फिटनेस मोनो मैंने अभी बनाई है लास्ट
  14976. 10:02:43पोस्ट लेस दैन अ मिनट एगो यहां पर
  14977. 10:02:45डिस्क्रिप्शन ऐड कर दीजिए कैटेगरी ऐड कर
  14978. 10:02:47दीजिए पब्लिक इमेज है ये देखिए पब्लिक तो
  14979. 10:02:49हर कोई इसको पुल कर कर अपने मशीन पर रन कर
  14980. 10:02:52सकता है ठीक है आप अपने दोस्त के साथ ये
  14981. 10:02:54एप्लीकेशन शेयर कर सकते हो और आपके दोस्त
  14982. 10:02:57लोग को यहां पर थोड़ी डिस्क्रिप्शन में
  14983. 10:02:58डाल दीजिए रिपॉजिटरी ओवरव्यू में डाल
  14984. 10:03:00दीजिए ओवरव्यू के कैसे रन करना है
  14985. 10:03:02क्या-क्या एनवायरमेंट वेरिएबल्स पास करने
  14986. 10:03:03हैं जैसे कि एक कमांड
  14987. 10:03:05यह वाला कमांड इसको दे दीजिए कि यह
  14988. 10:03:07एनवायरमेंट वेरिएबल्स पास करने हैं। आपके
  14989. 10:03:09पास डेटाबेस होना चाहिए और यूजर पास करना
  14990. 10:03:12है और पासवर्ड पास करना है। बस इतना आप
  14991. 10:03:14पास कर दीजिए। ठीक है? ये तो इमेज का नाम
  14992. 10:03:16है। ठीक है? इतना आप पास कर दीजिए तो
  14993. 10:03:18चीजें चल जाएगी। और कोई भी रन कर सकता है
  14994. 10:03:20अपने। उसके सिस्टम पर जावा हो या ना हो।
  14995. 10:03:23ठीक है? इससे कोई मतलब नहीं पड़ता। उसके
  14996. 10:03:26सिस्टम पर जावा हो या ना हो इससे कोई मतलब
  14997. 10:03:29नहीं पड़ता। क्यों नहीं पड़ता? क्योंकि हम
  14998. 10:03:30इंटर यूज कर रहे हैं कंटेनर्स का और डॉकर
  14999. 10:03:34का इस्तेमाल कर रहे हैं। तो देखिए अंदर
  15000. 10:03:36उसको वैसे भी ये इमेज ये jवा का वर्जन
  15001. 10:03:39कंटेनर के अंदर वैसे भी होने वाला है। अगर
  15002. 10:03:42और कुछ चाहिए आपको लाइक माय सीक्वल भी
  15003. 10:03:44इसके अंदर डालना है तो आप डाल सकते हो।
  15004. 10:03:45Mys सीक्वल की पब्लिक इमेजज़ है बाय द वे।
  15005. 10:03:47तो देखिए आप Mysquel की यहां पर पब्लिक
  15006. 10:03:50इमेजज़ आपको मिलेगी। आप यहां पर आके Mys
  15007. 10:03:53सीक्वल सर्च अगर करो तो आपको देखिए Mys
  15008. 10:03:55सीक्वल की ऑफिशियल इमेज मिलेगी। आप इसको
  15009. 10:03:57पुल करके रन कर सकते हो। लोकली इसको ले
  15010. 10:03:59सकते हो और फिर इसको रन कर सकते हो। लोकली
  15011. 10:04:02आपको अपने मशीन पर सॉफ्टवेयर डालने की भी
  15012. 10:04:04जरूरत नहीं है। अगर डॉकर डेस्कटॉप है तो
  15013. 10:04:05आप यह सारी चीजें कर सकते हो। है ना
  15014. 10:04:07पावरफुल टेक्नोलॉजी मुझे बताइए कितनी
  15015. 10:04:09पावरफुल लगी आपको और मजा आया या नहीं।
  15016. 10:04:17तो दोस्तों देखिए बात करते हैं स्प्रिंग
  15017. 10:04:19बूट एप्लीकेशन को डिप्लॉय करने के बारे
  15018. 10:04:21में। और मैं आपको डिप्लॉयमेंट सिखाने वाला
  15019. 10:04:23हूं। वो भी आपको बताऊंगा कि डिप्लॉयमेंट
  15020. 10:04:26आपको कैसे फ्री में करनी है। ठीक है? तो
  15021. 10:04:29ये जो पूरा प्रोसेस है ना ये आपको सिर्फ
  15022. 10:04:32कोई एक प्रोजेक्ट के लिए हेल्पफुल नहीं
  15023. 10:04:33रहेगा। यह आपको लाइफ लॉन्ग हेल्पफुल
  15024. 10:04:35रहेगा। क्योंकि देखिए अगर आप कोई अपने
  15025. 10:04:38रे्यूे के लिए प्रोजेक्ट बनाते हो तो
  15026. 10:04:39जनरली रिक्रूटर्स को यूआरएल भेजना सही
  15027. 10:04:41रहता है। आप ईमेल पर लिख सकते हो। दिस इज़
  15028. 10:04:43माय प्रोजेक्ट जो मैंने बनाया है और सीधा
  15029. 10:04:47वो यूआरएल पे क्लिक करते हैं और आपका
  15030. 10:04:48प्रोजेक्ट डायरेक्टली एक्सपीरियंस करता
  15031. 10:04:49है। करेक्ट? तो यूआरएल भेजना काफी बढ़िया
  15032. 10:04:53चीज होती है और अक्सर लोग चाहते हैं कि
  15033. 10:04:55मैं मेरा प्रोजेक्ट क्लाउड में डिप्लॉय
  15034. 10:04:57कैसे रहूं। लेकिन क्या है क्लाउड में
  15035. 10:04:59डिप्लॉय करने के चार्जेस होते हैं। तो मैं
  15036. 10:05:00आपको फ्री चीजें बताऊंगा। ठीक है? तो
  15037. 10:05:02देखिए आपके एप्लीकेशन को चाहिए होता है
  15038. 10:05:05सबसे पहले तो एक बैक एंड सर्वर। ठीक है?
  15039. 10:05:07और चाहिए होता है एक अ डेटाबेस। ठीक है?
  15040. 10:05:11मैं एक बैक एंड एप्लीकेशन की बात कर रहा
  15041. 10:05:13हूं। ठीक है? डेटाबेस और यहां पर रहेगा
  15042. 10:05:16बैक एंड।
  15043. 10:05:18ठीक है? तो देखिए हम डेटाबेस के लिए और
  15044. 10:05:21बैक एंड के लिए दो अलग-अलग सर्विज यूज
  15045. 10:05:24करने वाले हैं। तो हमारा एक डेटाबेस सर्वर
  15046. 10:05:26होगा। देखिए करेंटली अभी क्या है? हमारे
  15047. 10:05:28लोकल मशीन पर बैक एंड रन हो रहा है Tomcat
  15048. 10:05:31पर। लोकल सर्वर है Tomcat. Tomcat आपने
  15049. 10:05:34इंस्टॉल किया है? जी नहीं। स्प्रिंग बूट
  15050. 10:05:36के साथ बाय डिफ़ॉल्ट मिलता है Tomcat।
  15051. 10:05:38करेक्ट? और अगर आपको यकीन नहीं आ रहा है
  15052. 10:05:40तो आप स्प्रिंगboot एप्लीकेशन रन करोगे तो
  15053. 10:05:42कंट्रोल F करके logs में Tomcat सर्च कर
  15054. 10:05:45लेना। ठीक है? यहां पर आ जाते हैं। यहां
  15055. 10:05:47पर अ हमारी जो एप्लीकेशन है लोकली रन हो
  15056. 10:05:50रही है माय सीक्वल पर या पॉज करें सीक्वल
  15057. 10:05:52जो भी डेटाबेस है लोकली इंस्टॉल्ड है। तो
  15058. 10:05:54ये हो गया बैक एंड सर्वर tomcat पर और यह
  15059. 10:05:56हो गया डेटाबेस सर्वर जो कि है माय
  15060. 10:05:59सीक्वल। ठीक है? और ये दोनों पोर्ट
  15061. 10:06:01एक्सपोज करते हैं। तो बैक एंड एप्लीकेशन
  15062. 10:06:02एक्सपोज़ करता है हमारे मशीन पर अ पोर्ट
  15063. 10:06:05880। तो अगर मैं एंटर करूं पोर्ट 880
  15064. 10:06:09ठीक है? सॉरी। तो यह बैक एंड एप्लीकेशन
  15065. 10:06:12एक्सपोज करता है और माय सीक्वल एक्सपोज
  15066. 10:06:14करता है कुछ 3306 करके ऐसा कुछ डिफॉल्ट
  15067. 10:06:16पोर्ट है। अगर गलत लिख दिया वो 3306 नहीं
  15068. 10:06:19है तो सॉरी उसके लिए लेकिन कुछ एक डिफॉल्ट
  15069. 10:06:21पोर्ट है 3306 ही है शायद मुझे ध्यान नहीं
  15070. 10:06:23है लेकिन कहीं तो एक्सपोज करते हो तो ये
  15071. 10:06:25दो सर्वर एक्चुअली आइसोलेशन में रन करते
  15072. 10:06:27हैं अपने मशीन पर और कम्युनिकेट करते हैं।
  15073. 10:06:30अगर माय सीक्वल नहीं है आपके सिस्टम पर
  15074. 10:06:32पॉजग्रेस सीक्वल होगा। उसका भी एक पोर्ट
  15075. 10:06:34होता है। ठीक है? लेकिन जब आप क्लाउड की
  15076. 10:06:36तरफ जाते हो। ठीक है? तो आपको चाहिए होता
  15077. 10:06:38है एक बैक एंड सर्विस और एक डेटाबेस
  15078. 10:06:39सर्विस। तो बैक एंड के लिए एक बढ़िया सी
  15079. 10:06:42सर्विस जो मैंने ढूंढी है जो एक बढ़िया सा
  15080. 10:06:43फ्री टियर भी देती है वो है रेंडर। ठीक
  15081. 10:06:46है? रेंडर करके रेंडर क्लाउड कहा जाता है
  15082. 10:06:48इसे। और डेटाबेस के लिए हम इस्तेमाल
  15083. 10:06:51करेंगे अ नियon डीबी का। नियन डीबी। तो
  15084. 10:06:56नियन डीबी क्या करता है? पॉज ग्रेस सीक्वल
  15085. 10:06:58का एक इंस्टेंस क्लाउड में प्रोवाइड करता
  15086. 10:06:59है। पॉजग्र सीक्वल का एक इंस्टेंस क्लाउड
  15087. 10:07:02में और रेंडर एक क्लाउड होस्टिंग
  15088. 10:07:05प्लेटफार्म है जहां पर आप एप्लीकेशनेशंस
  15089. 10:07:06को डिप्लॉय कर सकते हो और आप डॉकर इमेजज़
  15090. 10:07:10को भी डिप्लॉय कर सकते हो। ठीक है? और
  15091. 10:07:12इनका एक जनरस फ्री टियर है। तो उनके बारे
  15092. 10:07:15में भी हम बात करेंगे। लेकिन इस तरीके से
  15093. 10:07:16एप्लीकेशन जो है हमारी वर्क करेगी क्लाउड
  15094. 10:07:19में। ठीक है? उम्मीद करता हूं इतना क्लियर
  15095. 10:07:22है आपको। ठीक है? यह हो चुका है। अब Non
  15096. 10:07:24DB के बारे में बात करते हैं सबसे पहले।
  15097. 10:07:26ठीक है? Non DB तो यहां पर अगर आप Non DB
  15098. 10:07:29सर्च करते हो तो Non.com पर आपको दिखाई
  15099. 10:07:31देगा Non DB यह है PSG सीक्वल का इंस्टेंस
  15100. 10:07:33इन द क्लाउड। ठीक है? आप जा सकते हो
  15101. 10:07:36प्राइिंग पर। प्राइसिंग पर आप देखोगे ये
  15102. 10:07:39फ्री जनरलिस्ट फ्री डियर है। मैंने काफी
  15103. 10:07:41प्रोजेक्ट्स में इनको इसको यूज़ किया हुआ
  15104. 10:07:42है। काफी बढ़िया तरीके से मेरे प्रोजेक्ट्स
  15105. 10:07:45चल रहे हैं प्रोडक्शन में। लेकिन इनकी
  15106. 10:07:46प्रोडक्शन की लिमिटेशंस है थोड़ी जो कि अ
  15107. 10:07:50लाजमी है। ठीक है? लेकिन अगर आपको यह
  15108. 10:07:52सर्विस बढ़िया लगती है तो आप इसको अपग्रेड
  15109. 10:07:54भी कर सकते हो। ठीक है? काफी फ्लेक्सिबल
  15110. 10:07:56सर्विस है। मैं अभी तक तो फ्री डियर ही
  15111. 10:07:57इस्तेमाल कर रहा हूं और मैं आपको फ्री
  15112. 10:07:58डियर इस्तेमाल करना सिखाऊंगा। इसमें फटाक
  15113. 10:08:01से आप लोग क्या कीजिए? यहां पर एक फ्री
  15114. 10:08:03अकाउंट क्रिएट कर लीजिए। इस तरीके से
  15115. 10:08:05डैशबोर्ड पे आओगे तो कुछ ऐसा दिखेगा आपको।
  15116. 10:08:07ठीक है? और यहां पर आपको आना है अ
  15117. 10:08:11डैशबोर्ड पर। कनेक्ट टू द डेटाबेस है। ठीक
  15118. 10:08:14है? यहां पर एक न्यू डेटाबेस का ऑप्शन
  15119. 10:08:18दिखाई देना चाहिए। ठीक है? यहां पर टेबल्स
  15120. 10:08:20है, सब कुछ है। ये ब्रांचेस है।
  15121. 10:08:24डेट फेस का ऑप्शन यहां पर दिखाई नहीं दे
  15122. 10:08:27रहा है मुझको। ठीक है? इन्होंने थोड़ा
  15123. 10:08:29यूआई शायद चेंज किया हुआ है। तो यहां पर आ
  15124. 10:08:31जाता हूं। नियन ऑथ मॉनिटरिंग ब्रांच। ठीक
  15125. 10:08:35है? तो यहां पर ओवरव्यू में आना है। मैं
  15126. 10:08:37थोड़ा सा लॉस्ट हो गया था। ओवरव्यू में
  15127. 10:08:38आना है और यहां पर रोल्स एंड डेटाबेस का
  15128. 10:08:40ऑप्शन है। यहां पर देख पा रहे हो आप।
  15129. 10:08:41रोल्स एंड डेटाबेस। तो यहां पर आप एक नया
  15130. 10:08:44डेटाबेस बना सकते हो। ठीक है? ठीक है? तो
  15131. 10:08:45यहां पर देखिए एक प्रोडक्ट करके डेटाबेस
  15132. 10:08:46मैंने ऑलरेडी बना रखा है। मैं क्रिएट करता
  15133. 10:08:48हूं एक फिटनेस
  15134. 10:08:51करके और ओनर इसका कौन होगा? आप लिख सकते
  15135. 10:08:54हो। ठीक है? तो आप एक यूजर बना सकते हो
  15136. 10:08:56यहां पर। ठीक है? और इसका ओनर वो यूजर
  15137. 10:08:59होगा। ठीक है? तो इसको क्रिएट कर लीजिए।
  15138. 10:09:02ठीक है? तो ये देखिए दो डेटाबेस हो चुके
  15139. 10:09:03हैं अब। करेक्ट? और यहां पर आप तो ये सारी
  15140. 10:09:08चीजें हो गई यहां पर। ठीक है? अब मैं क्या
  15141. 10:09:10कर सकता हूं? यहां पर फिटनेस का मैंने जो
  15142. 10:09:12डेटाबेस बनाया यहां पर आके अच्छा फिटनेस
  15143. 10:09:15पे नहीं मुझे आना होगा डैशबोर्ड पर और
  15144. 10:09:18यहां पर लिखना होगा कनेक्ट। ठीक है? तो अब
  15145. 10:09:21मैं कौन से डेटाबेस को कनेक्ट करना चाहता
  15146. 10:09:22हूं? तो मैं कनेक्ट करना चाहता हूं फिटनेस
  15147. 10:09:25डेटाबेस को। तो ये जो पूरी कनेक्शन
  15148. 10:09:26स्ट्रिंग है, ठीक है? ये डेटाबेस को
  15149. 10:09:30कनेक्शन कनेक्ट करने की कनेक्शन स्ट्रिंग
  15150. 10:09:32है। और इसको आप कॉपी कर सकते हो। ठीक है?
  15151. 10:09:34कॉपी कर लोगे तो यह कॉपी हो गई। और इसमें
  15152. 10:09:36देखिए प्रोडक्ट ओनर जो है यह मेरा यूजरनेम
  15153. 10:09:38है और यहां पर जो स्टार में लिखा हुआ है
  15154. 10:09:40यह है पासवर्ड। ठीक है? तो आपकी जो यहां
  15155. 10:09:43पर ये है डीबी यूआरएल इसमें पूरी की पूरी
  15156. 10:09:46कनेक्शन स्ट्रिंग आएंगी इस तरीके से और
  15157. 10:09:48यूजर की जगह आएगा प्रोडक्ट ओनर मेरे लिए
  15158. 10:09:51प्रोडक्ट ओनर है। प्रोडक्ट अंडरस्कोर ओनर
  15159. 10:09:53और डीबी पासवर्ड में जो स्टार में लिखा
  15160. 10:09:54हुआ है वो पासवर्ड आ जाएगा यहां पर उतना
  15161. 10:09:57लिखना है आपको। ठीक है? तो ये हो गया।
  15162. 10:09:58लेकिन ये यहां पर नहीं लिखना है आपको। ये
  15163. 10:10:00तो डॉकर की कमांड्स है जो मैंने यहां पर
  15164. 10:10:02लिखी हुई है। ठीक है? आपको ईएनवी में
  15165. 10:10:04लिखना है। तो यहां पर अगर आप आते हो एडिट
  15166. 10:10:07कॉन्फ़िगरेशन को करते हो यहां पर एडिट तो
  15167. 10:10:10यहां पर यह जो ईएनवी है एप्लीकेशन की
  15168. 10:10:11उसमें आपको लिखनी है। ठीक है? ये डेटाबेस
  15169. 10:10:13की स्ट्रिंग्स हैं। तो ये एप्लीकेशन में
  15170. 10:10:15यहां पर आपको सब्स्टट्यूट करना है। ठीक
  15171. 10:10:17है? ये आप कर दोगे एक हिसाब से और आपको ये
  15172. 10:10:21डायलग वगैरह भी चेंज करनी है। डिपेंडेंसी
  15173. 10:10:23भी पॉजग्रेस की ऐड करनी पड़ेगी। हम उस पर
  15174. 10:10:25आएंगे। लेकिन फिलहाल के लिए इसको कॉपी
  15175. 10:10:27करके एक जगह पर स्टोर कर दीजिएगा और यह
  15176. 10:10:28किसी के साथ शेयर नहीं कीजिएगा क्योंकि यह
  15177. 10:10:30सेंसिटिव है और स्पेसिफिक टू यू है। ठीक
  15178. 10:10:33है और ठीक है इतना तो हो चुका है और मैं
  15179. 10:10:37क्या करूंगा मैं यहां पर आ जाता हूं ठीक
  15180. 10:10:40है और यहां पर बात करते हैं तो यहां पर
  15181. 10:10:41बात करने से पहले हम स्टार्ट डॉट
  15182. 10:10:43स्प्रिंगio पर चले जाएंगे और हमें
  15183. 10:10:46पॉजग्रेस की डिपेंडेंसी ऐड करनी है तो
  15184. 10:10:48मैंने मेवन सेलेक्ट कर रखा है यहां पर आ
  15185. 10:10:50जाता हूं और मैं पॉजग्रस सीक्वल को
  15186. 10:10:53कॉन्फ़िगर करता हूं। पॉजग्रस सीक्वल को
  15187. 10:10:55क्यों कॉन्फ़िगर कर रहे हैं हम? क्योंकि
  15188. 10:10:56नियन डेटाबेस जो है वो पॉजगस पर काम करता
  15189. 10:10:59है। इट्स अ पॉजग्रस सीक्वल डेटाबेस। माय
  15190. 10:11:02सीक्वल काम नहीं करेगा। अगर आप माय सीक्वल
  15191. 10:11:04का इस्तेमाल करके लोकल होस्ट से उसे
  15192. 10:11:06कनेक्ट करने की कोशिश कर रहे हो तो वो
  15193. 10:11:08नहीं काम करेगा। तो मैं क्या करूंगा? माय
  15194. 10:11:09सीक्वल को कमेंट कर दूंगा और यहां पर आ
  15195. 10:11:11जाऊंगा पॉजगिस की डिपेंडेंसी ऐड कर दूंगा
  15196. 10:11:14और फिर यहां पर आ जाऊंगा एप्लीकेशन
  15197. 10:11:16प्रॉपर्टीज में और इसको पूरी तरीके से
  15198. 10:11:19कॉपी कर लूंगा और फिर पेस्ट कर दूंगा और
  15199. 10:11:22फिर माय सीक्वल की जगह यहां पर पॉज सीक्वल
  15200. 10:11:25का डायरेक्टली
  15201. 10:11:28पॉज सीक्वल
  15202. 10:11:31का डायलेक्ट ठीक है ऐसे लिख दूंगा तो यह
  15203. 10:11:36पॉज सीक्वल का डायरेक्ट है और वह है अच्छा
  15204. 10:11:39क्या हो गया पॉसिस सीक्वल
  15205. 10:11:42पॉस्क सीक्वल डायलक्ट करेक्ट तो है करेक्ट
  15206. 10:11:44है ठीक है ये डायरेक्ट करेक्ट है तो ये
  15207. 10:11:47लिखना है और मैंने माय सीक्वल की जो
  15208. 10:11:48कॉन्फ़िगरेशन है उसको मैंने हटाया नहीं है
  15209. 10:11:50उसको ऐसे ही रखा है यह डायलक्ट को क्योंकि
  15210. 10:11:52अगर मुझे स्विच करना पड़ा तो मैं कर सकता
  15211. 10:11:54हूं डिपेंडेंसी को भी हटाया नहीं ठीक है
  15212. 10:11:57अब मैं क्या कर सकता हूं मैं है ना इसको
  15213. 10:11:59कॉपी कर लेता हूं यहां पर मेरी कनेक्शन
  15214. 10:12:01स्ट्रिंग है। यह पूरी की पूरी ईएनवी। ठीक
  15215. 10:12:04है? इसको कॉपी कर लेता हूं और यहां पर आ
  15216. 10:12:06जाता हूं और इसको यहां पर पेस्ट करता हूं।
  15217. 10:12:08तो देखिए आपको जो भी यूआरएल मिलेगी नियन
  15218. 10:12:12के डैशबोर्ड से। ठीक है? तो मेरी देखिए
  15219. 10:12:14यूआरएल ये है। ये आपको इस फॉर्मेट में
  15220. 10:12:16मिलेगी। तो आपको मिलेगी पोस्टग सीक्वल
  15221. 10:12:18लिखा हुआ यूजरनेम। ठीक है? पासवर्ड @
  15222. 10:12:22होस्ट
  15223. 10:12:24डेटाबेस और फिर ये आगे थोड़ी सी चीजें
  15224. 10:12:27पैरामीटर्स मिलेंगे। ठीक है? अब यहां पे
  15225. 10:12:29ये जो पूरी यूआरएल है इसको ऐसे के ऐसे ही
  15226. 10:12:31पेस्ट नहीं करना है। जी हां मैंने कहा
  15227. 10:12:32आपको पेस्ट करने के लिए लेकिन ऐसे के ऐसे
  15228. 10:12:34पेस्ट नहीं करना है। ये जो यूआरएल है इसको
  15229. 10:12:36फॉर्म करना है हमें। ठीक है? तो देखिए
  15230. 10:12:39यहां पे ये जो यूआरएल है तो मैं इसको कॉपी
  15231. 10:12:41कर लेता हूं एक हिसाब से। इसको इसके
  15232. 10:12:43पैरेलल पेस्ट कर देता हूं। ठीक है? तो
  15233. 10:12:45देखिए ये जो यूआरएल है ये हम एप्लीकेशन
  15234. 10:12:47में इस्तेमाल कर रहे हैं। हमारी स्प्रिंग
  15235. 10:12:49बूट एप्लीकेशन में। ठीक है? ये माय सीकल
  15236. 10:12:52डेटाबेस के लिए थी और ये jडीबीसी से
  15237. 10:12:53स्टार्ट हो रही है। तो ये वाली जो यूआरएल
  15238. 10:12:55है ये jडीबीसी से स्टार्ट नहीं हो रही है।
  15239. 10:12:57करेक्ट? तो हमें मेक श्योर करना है कि ये
  15240. 10:13:00वाली जो यूआरएल है इसको हम अडॉप्ट करें इस
  15241. 10:13:01फॉर्मेट में ताकि ये स्प्रिंग बूट के साथ
  15242. 10:13:03काम कर पाए। ठीक है? तो देखिए सबसे पहले
  15243. 10:13:05तो पॉजग्र सीक्वल का इस्तेमाल कर रहे हैं।
  15244. 10:13:06तो यहां पर माय सीक्वल को रिप्लेस करके
  15245. 10:13:08पॉजग सीक्वल कर दूंगा। होस्ट जो भी आपको
  15246. 10:13:11यहां पर मिल रहा है @ के बाद में। ठीक है?
  15247. 10:13:14विद डेटाबेस वो पूरा लेके आपको यहां पर
  15248. 10:13:17पेस्ट कर देना है पूरा। क्योंकि यह होस्ट
  15249. 10:13:19विद पोर्ट और डेटाबेस है। ऐसा। तो यहां पर
  15250. 10:13:22अगर आप आते हो तो देखिए मेरा होस्ट है ईपी
  15251. 10:13:25से लेके ईपी रेड चेरी से लेके सीधा-सीधा
  15252. 10:13:28डेटाबेस तक। ये पूरा का पूरा मैं कॉपी
  15253. 10:13:29करके वहां पे पेस्ट कर दूंगा। तो देख पा
  15254. 10:13:32रहे हो मैंने पूरा का पूरा पेस्ट कर दिया।
  15255. 10:13:33ये तो ये जो यूआरएल बनी है, अब ये
  15256. 10:13:36स्प्रिंग बोट के साथ काम करेगी। तो थोड़ा
  15257. 10:13:37फॉर्मेशन की जरूरत है। ठीक है? और इसको
  15258. 10:13:40मैं यहां पर ऐसे रिप्लेस कर देता हूं। ठीक
  15259. 10:13:41है? अभी डीबी यूजर ऐड करना है और डीबी
  15260. 10:13:43पासवर्ड ऐड करना है। ठीक है? डीबी यूजर
  15261. 10:13:45देखिए मेरा यहां पर क्या है? फिटनेस नहीं
  15262. 10:13:48सॉरी डीबी यूजर है मेरा यहां पर अह यूजर
  15263. 10:13:51है प्रोडक्ट ओनर प्रोडक्ट अंडरस्कोर ओनर
  15264. 10:13:54तो यहां पर मैं आऊंगा प्रोडक्ट पता नहीं
  15265. 10:13:57प्रोडक्ट अंडरस्कोर ओनर क्यों है शायद मैं
  15266. 10:13:58नियन का बहुत ज्यादा इस्तेमाल करता हूं तो
  15267. 10:14:00पहले मैंने बनाया होगा प्रोडक्ट अंडरस्कोर
  15268. 10:14:03ओनर ठीक है ये प्रोडक्ट अंडरस् ओनर और फिर
  15269. 10:14:06उसका पासवर्ड है पासवर्ड थोड़ा
  15270. 10:14:08इंक्रिप्टेड है तो मैं वो दिखाऊंगा नहीं
  15271. 10:14:10पासवर्ड लेकिन आपको क्या करना है यहां पर
  15272. 10:14:11पासवर्ड ऐड कर देना है और फिर यह स्ट्रिंग
  15273. 10:14:13को आपको पेस्ट करना है इंटेलिजेंट में तो
  15274. 10:14:15मैं वो स्टेप कर लूंगा
  15275. 10:14:17तो मैंने इतना कर लिया। पासवर्ड को
  15276. 10:14:19रिप्लेस करके मैंने यहां पर ऐड कर दिया
  15277. 10:14:20है। ठीक है? और फिर मैं अप्लाई करूंगा और
  15278. 10:14:22फिर ओके करूंगा और फिर एप्लीकेशन को रन
  15279. 10:14:25करते हैं। चलिए देखते हैं एप्लीकेशन रन
  15280. 10:14:27होती है या नहीं।
  15281. 10:14:29देखिए एप्लीकेशन रन हो रही है धीरे-धीरे।
  15282. 10:14:31कोई एरर तो आनी नहीं चाहिए वैसे। अच्छा
  15283. 10:14:33देखिए एरर नहीं आई और डेटाबेस से कनेक्शन
  15284. 10:14:36भी हो गया और सारे टेबल्स क्रिएट भी हो
  15285. 10:14:37गए। आप देख पा रहे हो। ठीक है? लगता है
  15286. 10:14:39कुछ एरर भी आई है। यहां पर क्या एरर है वह
  15287. 10:14:42देखना पड़ेगा। ठीक है? ऑल्टर टेबल इफ
  15288. 10:14:45एकिस्ट। अच्छा यह क्या एरर आई है? यहां पर
  15289. 10:14:47क्या एरर आई है? ये सारी एरर्स को देखना
  15290. 10:14:50पड़ेगा। नियर यूजर अच्छा मुझे समझ में आ
  15291. 10:14:53गया क्या एरर है ये। ठीक है? और इस एरर का
  15292. 10:14:56यूजर नाम का टेबल एक्चुअली पॉजग सीक्वल
  15293. 10:14:59में शायद अलाउड नहीं है। इसके लिए ये एरर
  15294. 10:15:00आ रही है। क्योंकि ये एक इनबिल्ट टेबल या
  15295. 10:15:03कीवर्ड माना जाता है। ठीक है? लेकिन
  15296. 10:15:05एप्लीकेशन चल रही है हमारी। यहां पर देख
  15297. 10:15:07पा रहे हो। ठीक है? तो अच्छा पोर्ट एटीटी
  15298. 10:15:10ऑलरेडी इन यूज़ क्योंकि यहां पर हमने डॉकर
  15299. 10:15:12मैंने ऑलरेडी डॉकर कंटेनर चला रखे हैं
  15300. 10:15:15यहां पर तो आई थिंक यहां पर आ जाना है और
  15301. 10:15:17यहां पर जो भी कंटेनर्स हैं उनको मैं
  15302. 10:15:19स्टॉप कर दूंगा। ये सारे कंटेनर्स को
  15303. 10:15:21स्टॉप कर दिया और फिर मैं इसको रन करने से
  15304. 10:15:23पहले अब मैं क्या करूंगा? मैं ना देखिए
  15305. 10:15:25यूजर पर एरर आई थी करेक्ट यूजर पर। तो
  15306. 10:15:27यहां पर आना है आपको मॉडल पर आना है और ये
  15307. 10:15:30मॉडल पर यहां पर मैं ना इसको एक कस्टम
  15308. 10:15:33टेबल नेम दूंगा। तो यहां पर मैं लिख दूंगा
  15309. 10:15:34एक टेबल एनोटेशन। टेबल एनोटेशन की मदद से
  15310. 10:15:37ना आपको अगर ऐसी कोई सिचुएशन आती है तो आप
  15311. 10:15:39खुद का नाम भी डिफाइन कर सकते हो। ठीक है?
  15312. 10:15:40तो यहां पर मैं लिखता हूं माय यूजर कुछ भी
  15313. 10:15:44नाम दे सकते हो या फिटनेस यूजर जो भी नाम
  15314. 10:15:46दे देना है आपको फिटनेस यूजर सही है।
  15315. 10:15:48फिटनेस यूजर। ठीक है? अब इसको रन करते हैं
  15316. 10:15:51और देखते हैं क्या होता है। अब तो ये चल
  15317. 10:15:53जानी चाहिए। ठीक है? क्योंकि डेटाबेस का
  15318. 10:15:56ये टेबल का नाम भी मैंने बदल दिया है और
  15319. 10:15:59वो कंटीन्यूअस को भी स्टॉप कर दिया। ईटी80
  15320. 10:16:01पे कुछ नहीं चलना चाहिए एक हिसाब से
  15321. 10:16:03क्योंकि आपकी एप्लीकेशन स्टार्ट हो रही
  15322. 10:16:04है। देखिए कोई एरर नहीं आई और एप्लीकेशन
  15323. 10:16:07स्टार्ट हो चुकी है। देखिए स्टार्ट हो
  15324. 10:16:10चुकी है। अब आप अगर यहां पर आओगे ठीक है?
  15325. 10:16:14नियन के कंसोल पर इसको क्लोज कर दीजिए। आप
  15326. 10:16:17जाइए टेबल्स में। ठीक है? टेबल्स में जाइए
  15327. 10:16:20और यहां पर फिटनेस सिलेक्टेड रहना चाहिए।
  15328. 10:16:21और यहां पर देखेंगे आप सब के सब क्रिएटेड
  15329. 10:16:24है। देखिए सारे के सारे टेबल्स क्रिएटेड
  15330. 10:16:27है। ठीक है? आप चाहो तो यहां पर क्वेरी भी
  15331. 10:16:29कर सकते हो। ठीक है? पोस्टमैन कहां चला
  15332. 10:16:30गया? ये रहा पोस्टमैन। तो चलिए यहां से
  15333. 10:16:32क्वेरी करते हैं इस एंड पॉइंट को। अच्छा
  15334. 10:16:34लोकल होस्ट पे मैंने ये क्वरी चलाई और
  15335. 10:16:37क्या यह क्रिएट होगा यहां पर फिटनेस यूजर
  15336. 10:16:40में देखिए ये यूजर क्रिएट हो गया ठीक है
  15337. 10:16:42तो है ना हम क्लाउड बेस्ड डेटाबेस का
  15338. 10:16:44इस्तेमाल कर रहे हैं कि नहीं कर रहे हैं
  15339. 10:16:46ना मजा आ रहा है कि नहीं मजा आ रहा है तो
  15340. 10:16:48मुझे बताइए प्लीज मैं सुनना चाहूंगा कैसे
  15341. 10:16:51फील कर रहे हो आप क्योंकि ये देखिए ये
  15342. 10:16:53पूरा का पूरा लोकल डेटाबेस को हमने स्विच
  15343. 10:16:55किया है एक प्रोडक्शन डेटाबेस पे
  15344. 10:16:57प्रोडक्शन नहीं कहूंगा क्लाउड डेटाबेस पे
  15345. 10:16:59अब ये क्लाउड पर आप एक डेटाबेस यूज़ कर
  15346. 10:17:00रहे हो आप कोई भी डेटाबेस इस्तेमाल कर
  15347. 10:17:02सकते हो आरडीएस इस्तेमाल कर सकते हो
  15348. 10:17:03Amazon का या कोई भी लेकिन यह फ्री है तो
  15349. 10:17:05इसके लिए मैंने इसका डेमो दिया आपको। ठीक
  15350. 10:17:07है? यह हो चुका है। अब मैं क्या करूंगा?
  15351. 10:17:10मैं एक हिसाब से मेरी डॉकर इमेज नहीं
  15352. 10:17:13बनाऊंगा। डॉकर इमेज नहीं क्यों बनाऊंगा?
  15353. 10:17:17क्योंकि मैंने कोड में काफी चेंजेस किए।
  15354. 10:17:19तीन जगह चेंज किया। एक तो मैंने टेबल का
  15355. 10:17:21नाम चेंज किया है। और दूसरा मैंने
  15356. 10:17:22डिपेंडेंसीज़ और जो प्रॉपर्टीज़ है वो चेंज
  15357. 10:17:25किए पॉजग्रस सीक्वल को कनेक्ट करने के
  15358. 10:17:28लिए। ठीक है? और डॉकर इमेज बनाने के लिए
  15359. 10:17:30हमारे पास जो कमांड्स थे उसको हम इस्तेमाल
  15360. 10:17:34करेंगे। ठीक है? तो सबसे पहले सबसे पहले
  15361. 10:17:38तो मैं कमांड्स यहां पर लिख लेता हूं। ठीक
  15362. 10:17:40है? ताकि आपके पास आप स्क्रीनशॉट ले सकते
  15363. 10:17:41हो इसका। डॉकर बिल्ड हफन अ डॉकर बिल्ड hfन
  15364. 10:17:45टी फिटनेस मोनोलिथ और फुल स्टॉप। यह डॉकर
  15365. 10:17:50इमेज बिल्ड करने के लिए है। फिर मैं
  15366. 10:17:52कहूंगा डॉकर
  15367. 10:17:54डॉकर टैग और फिर इमेज का नाम जो कि फिटनेस
  15368. 10:17:57मोनो देता है। ठीक है? और मैं कहूंगा
  15369. 10:18:00यूजरनेम मेरा। ठीक है? यूजरनेम
  15370. 10:18:03रेपो
  15371. 10:18:06रेपो नेम ऐसे लिख दूंगा मैं। ठीक है? और
  15372. 10:18:09मेरा नाम क्या है? मेरा नाम है डीड 007 और
  15373. 10:18:12रेपो आप जो भी नाम देना चाहते हो वो। ठीक
  15374. 10:18:14है? और यहां पर आना है फिर आपको। फिर आपको
  15375. 10:18:16करना है डॉ अच्छा सॉरी। फिर आपको कहना है
  15376. 10:18:18डॉकर पुश। डॉकर पुश और फिर आपका जो नेम है
  15377. 10:18:22यूजरनेम और रेपो उसको यहां पर मेंशन करना
  15378. 10:18:25है। तो ये तीन कमांड्स हमको रन करने
  15379. 10:18:26होंगे। ठीक है? और हां इसके पहले हमें अ
  15380. 10:18:30ये करने से पहले ठीक है? इमेज करने से
  15381. 10:18:32पहले मैं एक और चीज तो भूल ही गया। इमेज
  15382. 10:18:34करने से पहले हमें ये जो मेवन की मेवन का
  15383. 10:18:37इस्तेमाल करके जो जार फाइल बनानी है वो भी
  15384. 10:18:39करनी होगी। मैं आपको एक चीज़ बता देता हूं।
  15385. 10:18:41ठीक है? ये जार फाइल क्यों जनरेट करनी है?
  15386. 10:18:42देखिए हमने कोड में चेंज किया है। ये जार
  15387. 10:18:44फाइल जो जनरेट हुई थी, यह पुराने कोड बेस
  15388. 10:18:46पे जनरेट हुई थी। यानी इसके जो पहले का
  15389. 10:18:48वर्जन था उस पे जनरेट हुई थी जार फाइल।
  15390. 10:18:50करेक्ट? तो ये तो करना जरूरी है। हमने जार
  15391. 10:18:52फाइल अपडेट करनी होगी क्योंकि जार फाइल ही
  15392. 10:18:54इस्तेमाल हो रही है डॉकर फाइल में। सोर्स
  15393. 10:18:56कोड नहीं इस्तेमाल हो रहा है। जार फाइल
  15394. 10:18:58इस्तेमाल हो रही है। तो जार बिल्ड करनी है
  15395. 10:19:00पहले। तो यहां पर आ जाता हूं। ठीक है?
  15396. 10:19:03यहां पर सारे कमांड्स तो ऑलरेडी लिखे हुए
  15397. 10:19:04हैं। तो मैं सबसे पहले इस्तेमाल करूंगा
  15398. 10:19:06मेव इन पैकेज का। ठीक है? यह मेव इन पैकेज
  15399. 10:19:09कर दिया मैंने। तो यह पूरी की पूरी
  15400. 10:19:11एप्लीकेशन जो है पैकेज हो जाएगी एक जार
  15401. 10:19:13फाइल में। जैसे पहले हुई थी। अच्छा यहां
  15402. 10:19:16पर आ गई एरर। तो यह एरर क्यों आई? अच्छा
  15403. 10:19:18मैं समझ गया अब एरर क्यों आई? एरर इसलिए
  15404. 10:19:20आई क्योंकि जो एनवायरमेंट वेरिएबल्स हैं
  15405. 10:19:23आपने सेट किए थे यहां पर। तो ये जो
  15406. 10:19:25एनवायरमेंट वेरिएबल्स मैंने सेट किए थे
  15407. 10:19:27लोकल मशीन पर वो पॉइंट कर रहे हैं माय
  15408. 10:19:29सीक्वल को। वो पॉइंट कहां करने चाहिए? वो
  15409. 10:19:32पॉइंट करने चाहिए पॉज सीक्वल को। तो मुझे
  15410. 10:19:34नए एनवायरमेंट वेरिएबल्स बनाने होंगे। तो
  15411. 10:19:37यहां पर मैं इसको कॉपी पेस्ट कर देता हूं।
  15412. 10:19:39और यहां पर अ मैं ये स्ट्रिंग ले लूंगा
  15413. 10:19:43पूरी की पूरी इस तरीके से। ठीक है? तो यह
  15414. 10:19:45पूरी की पूरी स्ट्रिंग यहां पर आ जाएगी
  15415. 10:19:47ऐसे। ठीक है? और फिर रूट के बजाय मैं लिख
  15416. 10:19:50दूंगा प्रोडक्ट ओनर यहां पर। ठीक है? और
  15417. 10:19:52फिर यहां पर डीबी पासवर्ड मैं ऐड करके
  15418. 10:19:54उसको वहां पर पेस्ट कर देता हूं कंसोल पर।
  15419. 10:19:57ठीक है? इतना मैं कर लेता हूं। ठीक है?
  15420. 10:19:59डीबी डेटाबेस का जो पासवर्ड है उसे मैंने
  15421. 10:20:01ऐड कर दिया है। और यहां पर एमवीएन पैकेज
  15422. 10:20:03फिर से रन करूंगा यहां पर। तो उम्मीद करता
  15423. 10:20:06हूं यह चलना चाहिए अब की बार। चलेगा तो
  15424. 10:20:09सही और कोई ऑप्शन है नहीं। ठीक है? तो
  15425. 10:20:12देखिए यह स्टार्ट हो रहा है। ठीक है?
  15426. 10:20:13थोड़ा डेटाबेस को कनेक्ट करने के लिए
  15427. 10:20:15थोड़ा टाइम लेते हैं क्योंकि जो सर्वर है
  15428. 10:20:17हमारा वो थोड़ा रिमोट है। लोकल मशीन पर
  15429. 10:20:19नहीं रन कर रहे हैं। थोड़ा सा टाइम लेगा
  15430. 10:20:21ये थोड़ा सा मतलब हार्डली एकद सेकंड और बस
  15431. 10:20:23उससे ज्यादा नहीं। तो ये रन हो चुका है।
  15432. 10:20:25ठीक है? अब मुझे क्या करना है? अब मुझे
  15433. 10:20:28यहां पर आना है और इसकी जो इमेज है उसे
  15434. 10:20:30बनानी है। ठीक है? तो ये इमेज बना लूंगा
  15435. 10:20:32मैं ये कमांड के साथ। ठीक है? ये जब तक
  15436. 10:20:35इमेज बन रही है तब तक मैं ये कमांड को
  15437. 10:20:37तैयार कर दूंगा। ठीक है? और ये कमांड के
  15438. 10:20:40लिए मेरा जो यूजरनेम था ठीक है? ओके रेपो
  15439. 10:20:42नेम जो भी था वो आप यहां पर ऐड कर दीजिए।
  15440. 10:20:45रेपो नेम और यहां पर आप यूजरनेम तो मेरा
  15441. 10:20:47यूजरनेम था डिकोड 07 ठीक है और रेपो का
  15442. 10:20:53नाम क्या था? यहां पर आ जाते हैं। अच्छा
  15443. 10:20:56रेपो का नाम बैक स्पेस तो रेपो का नाम था।
  15444. 10:21:00अच्छा फिटनेस मोनो ऐसा करके था रेपो का
  15445. 10:21:03नाम। ये फिटनेस मोनो तो ये ले लेना है। और
  15446. 10:21:06यहां पर फिटनेस मोनो। ठीक है? आप चाहते हो
  15447. 10:21:08नई इमेज बनाना तो वो भी आप बना सकते हो।
  15448. 10:21:10ठीक है? लेकिन मैं नई इमेज नहीं बना रहा।
  15449. 10:21:12इसको इस तरीके से रख रहा हूं। और यहां पर
  15450. 10:21:15आएंगे हम। देखिए इमेज तो बन चुकी है। यहां
  15451. 10:21:18पर इसको टैग करूंगा मैं इससे। ठीक है? और
  15452. 10:21:20फिर मैं कहूंगा डॉकर पुश और ये वाली जो
  15453. 10:21:25इमेज है उसको कर दूंगा पुश। तो अब ये
  15454. 10:21:27देखिए थोड़े टाइम में पुश हो जाएगा। ठीक
  15455. 10:21:30है? अह थोड़ा सा वेट करते हैं क्योंकि
  15456. 10:21:32यहां पर वह रिफ्लेक्ट करेगा। कहां पर
  15457. 10:21:34रिफ्लेक्ट करेगा? यहां पर। ठीक है? तो
  15458. 10:21:36यहां पर देखिए लास्ट पुश वन ऑवर एगो। अगर
  15459. 10:21:38मैं रिफ्रेश करता हूं तो यह हो जाएगा
  15460. 10:21:40सेकंड्स एगो। ठीक है? पुश होने के बाद पुश
  15461. 10:21:43हो चुका है। अच्छा रिफ्रेश करता हूं तो ये
  15462. 10:21:46हो चुका है। अच्छा लेस दैन अ मिनट एगो जो
  15463. 10:21:48कि सही है। ठीक है? लेटेस्ट इमेज अवेलेबल
  15464. 10:21:52है। ठीक है? अब इस इमेज को ये देखिए पॉइंट
  15465. 10:21:54कहां कर रहा है? ये पॉइंट कहां कर रहा है?
  15466. 10:21:57ये पॉइंट कर रहा है नियॉन डेटाबेस को। ये
  15467. 10:21:59इमेज पॉइंट कर रही है नियन डेटाबेस को। तो
  15468. 10:22:01अब मुझे क्या करना है? पॉइंट नहीं कर रही
  15469. 10:22:03है नियन डेटाबेस को। आप यहां पर जो भी
  15470. 10:22:05ईएनवी फाइल्स पास करोगे ईएनवी में जो भी
  15471. 10:22:08वैल्यू्यूज पास करोगे ये उसे ये करेगी
  15472. 10:22:10लेकिन ये कॉन्फ़िगरर्ड है पॉजग सीक्वल के
  15473. 10:22:12साथ तो मैं इस्तेमाल कर रहा हूं नियन
  15474. 10:22:16क्योंकि मैं यही वैल्यूज़ पास करने वाला
  15475. 10:22:17हूं क्लाउड सर्वर पे ठीक है तो मैं क्या
  15476. 10:22:19करूंगा मैं अब क्लाउड सर्वर के लिए
  15477. 10:22:21इस्तेमाल करूंगा रेंडर ठीक है ये रेंडर है
  15478. 10:22:24तो आप सर्च कर लीजिए रेंडर को अच्छा सॉरी
  15479. 10:22:27रेंडर रेंडर आप सर्च करते हो तो देखिए
  15480. 10:22:30क्लाउड एप्लीकेशन प्लेटफार्म यहां पर आ
  15481. 10:22:32जाइए तो ये आपको दिखाई देगा देखिए गेट
  15482. 10:22:34स्टार्टेड फॉर फ्री। यह काफी लोग इस्तेमाल
  15483. 10:22:37करते हैं इसको अलीबा TLO देखिए ये सब
  15484. 10:22:39बड़े-बड़े नाम है। यह लोग इस्तेमाल करते
  15485. 10:22:41हैं अपनी एप्लीकेशनेशंस चलाने के लिए।
  15486. 10:22:42काफी बढ़िया प्लेटफार्म है। मैंने काफी
  15487. 10:22:44सारे प्रोजेक्ट्स के लिए इस्तेमाल कर रखा
  15488. 10:22:46है। प्राइसिंग भी आप देखोगे तो काफी जनरस
  15489. 10:22:48फ्री टियर है इनका। 0 यूएस डॉलर का फ्री
  15490. 10:22:50टियर है। फुल स्टक एप्लीकेशनेशंस आप
  15491. 10:22:51डिप्लॉय कर सकते हो। बढ़िया है। ठीक है।
  15492. 10:22:54मैं एफिलिएटेड नहीं हूं इनसे। ठीक है। बट
  15493. 10:22:56जी हां, यह यूज़फुल रहा है मेरे लिए
  15494. 10:22:58इसीलिए आप तक ला रहा हूं। डैशबोर्ड पर आ
  15495. 10:23:01जाइए। ठीक है? डैशबोर्ड पर आप बोल सकते हो
  15496. 10:23:03डिप्लॉय अ वेब सर्विस। पोस्टग्रेस डेटाबेस
  15497. 10:23:06भी क्रिएट कर सकते हो यहां पर। तो देखिए
  15498. 10:23:07नियन का इस्तेमाल अगर आप नहीं करना चाहते
  15499. 10:23:09हो तो यही यहां पर भी रेंडर के थ्रू आपको
  15500. 10:23:11एक डेटाबेस मिल सकता है। लेकिन मैंने नियन
  15501. 10:23:13का इस्तेमाल किया क्योंकि फ्री टियर अच्छा
  15502. 10:23:15है और मुझे नियन पता है बढ़िया तरीके से।
  15503. 10:23:17मैं काफी इस्तेमाल कर चुका हूं मेरे
  15504. 10:23:18प्रोजेक्ट्स में। स्टैटिक साइट भी डिप्लॉय
  15505. 10:23:21कर सकते हो। ठीक है? वेब सर्विस। तो देखिए
  15506. 10:23:23हम बैक एंड ऐप डाल रहे हैं। तो वेब सर्विस
  15507. 10:23:25सेलेक्ट करेंगे यहां पर। ठीक है? और यहां
  15508. 10:23:27पर देखिए ये क्या बोल रहा है। आप गेट
  15509. 10:23:29रिपॉज़िटरी को कनेक्ट कर सकते हो। पब्लिक
  15510. 10:23:30गेट रिपॉज़िटरी की यूआरएल डाल सकते हो। या
  15511. 10:23:33तो फिर कोई इमेज है अगर आपके पास तो उस
  15512. 10:23:35इमेज का इस्तेमाल भी कर सकते हो। तो मेरे
  15513. 10:23:37पास तो एक इमेज है। ठीक है? इमेज है ये
  15514. 10:23:41वाली। ठीक है? तो ये इमेज की यूआरएल है।
  15515. 10:23:43तो अच्छा डॉकर. लाइब्रेरी ये फॉर्मेट में
  15516. 10:23:47चाहिए उसे। डॉकर. सश तो ये वाला मुझे कहां
  15517. 10:23:51से मिलेगा? अब यहां पर आ जाते हैं। ठीक
  15518. 10:23:53है? तो यूआरएल यहां से तो नहीं मिलेगी।
  15519. 10:23:59ठीक है? तो मैं क्या कर रहा हूं? मैं यहां
  15520. 10:24:01पर आ जाता हूं और यहां पर ना पब्लिक व्यू
  15521. 10:24:03करके एक ऑप्शन है। तो पब्लिक व्यू पर
  15522. 10:24:04क्लिक करके जो मुझे ऑप्शन मिल रहा है जो
  15523. 10:24:06यूआरएल उसको कॉपी करके मैं यहां पर डाल के
  15524. 10:24:09देखता हूं। क्या यह पिक करेगा? जी हां,
  15525. 10:24:10पिक कर ली देखिए इसने। ठीक है? डिकोड 007
  15526. 10:24:13और क्रेडेंशियल्स मुझे पूछ रहा है।
  15527. 10:24:14क्रेडेंशियल तो नहीं देना चाहता मैं
  15528. 10:24:16क्योंकि पब्लिक रिपॉज़िटरी है। ठीक है?
  15529. 10:24:18प्राइवेट रिपॉज़िटरी है तो आपको
  15530. 10:24:19क्रेडेंशियल देने होंगे क्योंकि उसी तरह
  15531. 10:24:21से वो आपके अकाउंट को ऑथराइज़ करके एक्सेस
  15532. 10:24:23करके वो इमेज लेगा। ठीक है? लेकिन यह इमेज
  15533. 10:24:25आ गई यहां पर। कनेक्ट करूंगा मैं अब।
  15534. 10:24:28कनेक्ट करेंगे तो देखिए यह सारी डिटेल्स
  15535. 10:24:31पूछ रहा है यह फिटनेस मोनो जी हां और यहां
  15536. 10:24:34पर कुछ डिटेल्स तो मैं यहां पर कुछ
  15537. 10:24:36सेलेक्ट नहीं करूंगा ये फ्री वाला आप
  15538. 10:24:38सेलेक्ट कर लेना स्टार्टर $7 वाला
  15539. 10:24:40सिलेक्टेड था बाय डिफ़ॉल्ट मैंने फ्री
  15540. 10:24:41सेलेक्ट कर लिया ठीक है अब देखिए यहां पर
  15541. 10:24:44ये हमें बोल रहा है कि फ्री इंस्टेंसेस ना
  15542. 10:24:46थोड़े टाइम के बाद स्पिन डाउन हो जाते
  15543. 10:24:48इसका मतलब बंद हो जाते तो ठीक है हम लोग
  15544. 10:24:50लर्निंग के लिए कर रहे हैं और देखिए फ्री
  15545. 10:24:52इंस्टेंस का क्या है अगर आप इस फ्री
  15546. 10:24:54इंस्टेंस को इस्तेमाल करते हो और यहां पर
  15547. 10:24:56कोई रिक्वेस्ट नहीं आ रही सर्वर पर तो
  15548. 10:24:58रेंडर उसको ऑटोमेटिकली कुछ मिनट्स बाद बंद
  15549. 10:25:00कर देता है सर्वर को और फिर से स्टार्ट
  15550. 10:25:03होता है अगर कोई नई रिक्वेस्ट आती है तो
  15551. 10:25:05तो पहली रिक्वेस्ट अगर आएगी काफी टाइम बाद
  15552. 10:25:08तो ये स्टार्ट होगा और फिर वो रिक्वेस्ट
  15553. 10:25:10को सर्व करेगा तो पहली रिक्वेस्ट कुछ समय
  15554. 10:25:12बाद थोड़ा टाइम लेंगी अ यानी कि सर्व करने
  15555. 10:25:15के लिए ठीक है तो आप इसको लाइक
  15556. 10:25:17पोर्टफोलियो प्रोजेक्ट्स के लिए इस्तेमाल
  15557. 10:25:18कर सकते हो ऐसी कोई दिक्कत है नहीं आप
  15558. 10:25:20रे्यूमे में मेंशन भी कर सकते हो कि फ्री
  15559. 10:25:21टियर पे रन हो रहा है तो फर्स्ट रिक्वेस्ट
  15560. 10:25:23माइट टेक सम टाइम ऐसे करके ठीक है तो ये
  15561. 10:25:26मैंने $ सेलेक्ट कर लिया यहां पर और यहां
  15562. 10:25:28पर देखिए ईएनवी वेरिएबल आपको डालना है।
  15563. 10:25:31ठीक है? ईएनवी वेरिएबल तो ऐप रन कर रहे हो
  15564. 10:25:34आप। आप ये इमेज चला रहे हो। इसमें कोई
  15565. 10:25:35एनवायरमेंट वेरिएबल्स चाहिए या नहीं?
  15566. 10:25:37चाहिए। क्यों नहीं चाहिए? तो आपको क्या
  15567. 10:25:40करनी है? यहां पर आ जाना है। ठीक है? और
  15568. 10:25:42यहां पर मेरे पास ऑलरेडी ये एनवायरमेंट
  15569. 10:25:44वेरिएबल्स हैं सारी की सारी। तो इसको कॉपी
  15570. 10:25:47कर लेता हूं मैं ऐसे। यहां पर पेस्ट करके
  15571. 10:25:49देखता हूं यह पिक कर लेता है कि नहीं।
  15572. 10:25:51अच्छा देखिए पिक तो इसने कर ही लिया।
  15573. 10:25:53अच्छा नहीं किया। सही तरीके से नहीं किया
  15574. 10:25:55है। तो मैं क्या करूंगा? इसको कॉपी कर
  15575. 10:25:57लेता हूं ऐसे और इसको ना एंटर के साथ रखता
  15576. 10:26:00हूं। ठीक है? एंटर। तो ये ऐसे एंटर करना
  15577. 10:26:03है और इसको यहां पर एंटर करना है। ऐसे ठीक
  15578. 10:26:06है? और फिर इसको कॉपी करता हूं और यहां पर
  15579. 10:26:09पेस्ट कर देता हूं। इसको डिलीट कर देता
  15580. 10:26:12हूं और यहां पर ऐड एन एनवायरमेंट वेरिएबल
  15581. 10:26:14और ऐसे ऐड करता हूं। तो देखिए बिना सेमी
  15582. 10:26:17कॉललन के अगर आप ऐड करते हो एक न्यू लाइन
  15583. 10:26:18कैरेक्टर के साथ तो ये इस तरीके से
  15584. 10:26:20पॉपुलेट हो जाता है। देखिए ये मेरा यूआरएल
  15585. 10:26:23है। ये मेरा यूजर है और पासवर्ड अभी मैंने
  15586. 10:26:26डाला नहीं लेकिन पासवर्ड मैं अभी डालता
  15587. 10:26:27हूं वीडियो को पॉज करके। ठीक है? तो
  15588. 10:26:29पासवर्ड भी मैंने डाल दिया है। सब कुछ आ
  15589. 10:26:31गया है। अब नीचे जाते हैं और इसको कहते
  15590. 10:26:33हैं डिप्लॉय वेब सर्विस। ठीक है? तो अब ये
  15591. 10:26:36क्या करेगा? इमेज को पुल करेगा और उसको रन
  15592. 10:26:39करेगा रिमोट क्लाउड सर्वर पे। देखिए यहां
  15593. 10:26:42पर देखिए। और ये आपको एक पब्लिक यूआरएल भी
  15594. 10:26:44इसने दे दिया है। फिटनेस hfन मोनो डॉट ऑन
  15595. 10:26:48रेंडर.com
  15596. 10:26:50फिटनेस hfन मोनो क्यों दिया? क्योंकि यही
  15597. 10:26:51आपकी रिपॉज़िटरी का नाम था डॉकर इमेज का।
  15598. 10:26:53तो देखिए ये स्टार्ट कर रहा है। इसको
  15599. 10:26:55थोड़ा टाइम लेगा। ठीक है? तो कुछ समय के
  15600. 10:26:57लिए हम रुकेंगे और यहां पर बोल रहा है ये
  15601. 10:26:59फ्री इंस्टेंस स्पिन डाउन हो जाएगा। ठीक
  15602. 10:27:01है? तो अगर आप फिर से एक्सेस करोगे तो 50
  15603. 10:27:04सेकंड्स लगेगा इसको स्टार्ट होने के लिए
  15604. 10:27:06जो कि ठीक है। देखिए स्प्रिंग बूट की
  15605. 10:27:08हमारी जो एप्लीकेशन है वो स्टार्ट हो रही
  15606. 10:27:09है यहां पर। ठीक है? तो थोड़ा वेट करेंगे
  15607. 10:27:13हम क्योंकि यह थोड़ा स्टार्ट होने में कुछ
  15608. 10:27:16मिनट्स लेगा। थोड़ा वेट करते हैं। तो
  15609. 10:27:18देखिए यहां पर डेटाबेस की जो कनेक्शन
  15610. 10:27:20डिटेल्स है वो प्रिंट कर रहा है। इसका
  15611. 10:27:21मतलब ये डेटाबेस को कनेक्ट कर रहा है। ठीक
  15612. 10:27:23है? कनेक्ट कर पा रहा है और काफी सारे
  15613. 10:27:24लॉग्स आ चुके हैं। ठीक है?
  15614. 10:27:28तो देखिए दोस्तों यहां पर ये पूरा का पूरा
  15615. 10:27:31डिप्लॉयमेंट खत्म हो चुका है। ठीक है? और
  15616. 10:27:34मैं अगर यहां पर आता हूं। ठीक है? और यहां
  15617. 10:27:36पर देखिए मैंने क्या किया है? मैंने ये जो
  15618. 10:27:39मेरी यूआरएल है ये जो यूआरएल मिली है मुझे
  15619. 10:27:40जिसको मैंने हाईलाइट किया है कर्सर से
  15620. 10:27:42इसको मैंने कॉपी कर लिया। ठीक है? ये मेरी
  15621. 10:27:45प्रोडक्शन यूआरएल है। यानी कि क्लाउड की
  15622. 10:27:46यूआरएल है जहां पर मेरी एप्लीकेशन
  15623. 10:27:48डिप्लॉयड है। ठीक है? क्लाउड यूआरएल
  15624. 10:27:50प्रोडक्शन नहीं कहूंगा। फिर अगर यहां पर
  15625. 10:27:52आता हूं और यहां पर मेरी जो रजिस्ट्रेशन
  15626. 10:27:54की एंड पॉइंट है उस पर मैंने इसको रिप्लेस
  15627. 10:27:56कर दिया और यहां पर कोई दूसरा नंबर टाइप
  15628. 10:27:58कीजिए आप। ठीक है? ईमेल में क्योंकि ईमेल
  15629. 10:28:00यूनिक है और इसको सेंड कर दीजिए। तो देखिए
  15630. 10:28:03जैसे ही आप यह करोगे तो यहां पर आपको
  15631. 10:28:05लॉक्स दिखाई देंगे। देखिए यूजर क्रिएट हो
  15632. 10:28:08चुका है। ठीक है? तो यह जो एप्लीकेशन है
  15633. 10:28:11वह रन हो रही है सक्सेसफुली। ठीक है?
  15634. 10:28:13क्लाउड में और आप मैंने एक्चुअली थर्ड
  15635. 10:28:16यूजर क्रिएट किया है ये शायद। तो अगर मैं
  15636. 10:28:19यहां पर रिफ्रेश करता हूं तो तीन यूज़र्स
  15637. 10:28:20होने चाहिए। देखिए तीन यूज़र्स हैं यहां
  15638. 10:28:22पर। ठीक है? मैं चाहूं तो यहां पर लॉग इन
  15639. 10:28:25भी कर सकता हूं। तो यहां पर इसको लेके मैं
  15640. 10:28:27यहां पर साइन इन के एंड पॉइंट पे आ जाता
  15641. 10:28:29हूं। सेम चीज यहां यहीं पर साइन इन कर
  15642. 10:28:31देता हूं। ठीक है? लेकिन मुझे ईमेल बदलना
  15643. 10:28:34होगा। ठीक है? तो यह
  15644. 10:28:36यह तो हेलो की एंड पॉइंट है। यूजर
  15645. 10:28:39रजिस्ट्रेशन पे आके मुझे यह जो ईमेल है यह
  15646. 10:28:42मैंने ईमेल काफी बड़ी सी डाल रखी है। ठीक
  15647. 10:28:44है? तो वो यहां पर आके मुझे अच्छा ईमेल
  15648. 10:28:48नहीं मुझे यूजरनेम लेना होगा। तो यहां पर
  15649. 10:28:50मैं अगर आता हूं
  15650. 10:28:52ईमेल पासवर्ड। अच्छा ये ईमेल का है। 1
  15651. 10:28:56मिनट ये वाली एंड पॉइंट नहीं है। एक्चुअली
  15652. 10:28:57हमारी एप्लीकेशन की ये वाली एप्लीकेशन है।
  15653. 10:29:00सॉरी। ठीक है। तो यहां पर ये ईमेल डालना
  15654. 10:29:03होगा। ठीक है? मैंने गलत एंड पॉइंट खोल ली
  15655. 10:29:05थी और फिर हमें यह जो रेंडर की जो एंड
  15656. 10:29:08पॉइंट है लाइक लोकल उसको आप कॉल नहीं कर
  15657. 10:29:10रहे हो। यहां पर कॉल कर रहे हो और फिर
  15658. 10:29:12सेंड कर रहे हो। तो जैसे ही सेंड करोगे आप
  15659. 10:29:14तो देखिए यहां पर आपको टोकन भी मिल जाएगा
  15660. 10:29:16और आप सारी एंड पॉइंट्स एक्सेस कर सकते हो
  15661. 10:29:19उस टोकन की मदद से। ठीक है? तो ये जो
  15662. 10:29:22एप्लीकेशन है ये चल रही है रिमोट क्लाउड
  15663. 10:29:25सर्वर पे। ठीक है? मुझे कमेंट्स में बताइए
  15664. 10:29:27कि आपको यह बढ़िया लगा या नहीं। ठीक है?
  15665. 10:29:29यह पूरा का पूरा जो डिप्लॉयमेंट प्रोसेस
  15666. 10:29:31है, काफी सिंपल प्रोसेस था। इमेज बनाना
  15667. 10:29:33काफीेंट है। आप इमेज किस तरीके से बनाते
  15668. 10:29:35हो और एनवायरमेंट वेरिएबल्स किस तरीके से
  15669. 10:29:37पास करते हो वो इंपॉर्टेंट है। बाकी
  15670. 10:29:39एप्लीकेशन तो कंटेनर में रन हो रही है।
  15671. 10:29:41देखिए लोकली रन हो रही है तो कंटेनर में
  15672. 10:29:43भी होगी। अगर आप सही तरीके से इमेज बनाते
  15673. 10:29:45हो और जो ई एनवी वेरिएबल्स है उसको सही
  15674. 10:29:48तरीके से पास करते हो तो। उम्मीद करता हूं
  15675. 10:29:50यह ट्यूटोरियल हेल्पफुल रहा। तो दोस्तों
  15676. 10:29:53एक छोटा सा मैसेज देना चाहता हूं। यहां पर
  15677. 10:29:55प्रॉमिस करता हूं ज्यादा समय नहीं लूंगा
  15678. 10:29:58आपका। तो अगर आपको यह प्लेलिस्ट ये कंटेंट
  15679. 10:30:01जो भी मैं पुश कर रहा हूं यह आपको वैलुएबल
  15680. 10:30:04लगता है यह वीडियो वैलएबल लगा आपको तो आप
  15681. 10:30:07मेरे जो पेड कोर्सर्सेस हैं उसको भी चेक
  15682. 10:30:09कीजिएगा। अब पेड कोर्सर्सेस का नाम सुनकर
  15683. 10:30:11थोड़ा बुरा लग जाता है लोगों को लेकिन मैं
  15684. 10:30:12एक चीज बता दूं पेड कोर्सर्सेस मतलब ये 8
  15685. 10:30:1410 का कोर्स नहीं है। यह यूdeemमी पे बेचा
  15686. 10:30:17जाता है कोर्स। udem पे अवेलेबल है। यह
  15687. 10:30:19आपको फ्री में भी मिल सकता है। तो अगर
  15688. 10:30:21आपके पास कोई udem बिज़नेस अकाउंट है तो
  15689. 10:30:23देखिए यह जो कोर्स है यूमी बिज़नेस में
  15690. 10:30:25इंक्लूडेड है। और अगर यूमी बिज़नेस अकाउंट
  15691. 10:30:27नहीं है तो कोई बात नहीं मैं आपको एक
  15692. 10:30:29लोएस्ट प्राइस कूपन दे देता हूं यहां पर
  15693. 10:30:31इस वेबसाइट पर तो एनरोल बटन पर क्लिक करके
  15694. 10:30:34आप udem पे चले जाते हो और देखिए इस कोर्स
  15695. 10:30:36की प्राइस क्या है। ठीक है? तो 600 से 300
  15696. 10:30:40के बीच में ये 600 से 400 के बीच में ये
  15697. 10:30:43कोर्स बिकता है। कभी-कभी प्राइस 700 भी
  15698. 10:30:45चली जाती है। डिपेंड करता है यूमी इसकी
  15699. 10:30:46प्राइस जो है वो कंट्रोल करता है। हम नहीं
  15700. 10:30:48करते। ठीक है? लेकिन मैं कोर्स की बात
  15701. 10:30:50करता हूं। ठीक है? ये तो प्राइसिंग की बात
  15702. 10:30:52थी। एक्सपेंसिव नहीं है कोर्स अगर आप खुद
  15703. 10:30:54को अपस्किल करना चाहते हो। क्योंकि जॉब
  15704. 10:30:57आपको जो मिलती है अह लर्न करने के बाद जो
  15705. 10:31:00स्किल्स एक्वायर करते हो उसके बाद आपको जो
  15706. 10:31:02जॉब मिलती है वो इससे कई गुना ज्यादा आपको
  15707. 10:31:05पे करती है। ठीक है? और ये कोर्सर्सेस
  15708. 10:31:07इतने एक्सपेंसिव नहीं है। काफी हाई
  15709. 10:31:09क्वालिटी आप रेटिंग्स देख सकते हो। ठीक
  15710. 10:31:10है? रेटिंग्स देख सकते हो। काफी सारे
  15711. 10:31:12लर्नर्स ने ऑलरेडी इस कोर्स को लिया हुआ
  15712. 10:31:14है। और इस कोर्स के बारे में बता देता
  15713. 10:31:16हूं। देखिए ये जो वीडियो आप देख रहे हो,
  15714. 10:31:18प्लेलिस्ट जो देख रहे हो, यह यूनिक तो है।
  15715. 10:31:20ऐसा नहीं है कि ओवरलैप है या आप सेम चीजें
  15716. 10:31:24सीखेंगे। ऐसा नहीं है। यहां पर हम बना रहे
  15717. 10:31:26हैं एक प्रोडक्शन ग्रेड ई-कॉमर्स
  15718. 10:31:28एप्लीकेशन। तो, यहां पर आप जो चैलेंजेस
  15719. 10:31:30फेस करोगे, रियल प्रोजेक्ट बना रहे हैं हम
  15720. 10:31:33विद फुल स्टक फ्रंट एंड। ठीक है? और काफी
  15721. 10:31:36स्क्रैच से स्टार्ट कर रहे हैं। मैं ऐसा
  15722. 10:31:38बिलीव कर मैं ऐसा समझ के पढ़ा रहा हूं कि
  15723. 10:31:40आपको कुछ नहीं पता। ठीक है? एक-एक चीज
  15724. 10:31:43एक्सप्लेंड है। और यह कोर्स टोटल आप
  15725. 10:31:45देखोगे तो 88 आवर्स का है। लगभग 90 घंटे
  15726. 10:31:47का। ठीक है? और पिछले 6 महीनों में 10 बार
  15727. 10:31:51अपडेट हो चुका है यह कोर्स 10 बार। जो
  15728. 10:31:53लर्नर्स इसमें एनरोल्ड हैं इनको यह बात
  15729. 10:31:55पता है। तो ये काफी वैलएबल है और एक रीज़न
  15730. 10:31:58है जिसकी वजह से ये बेस्ट सेलर है क्योंकि
  15731. 10:32:00हम इसको काफी लाइक मैं जो इसको इस कोर्स
  15732. 10:32:03पर ध्यान देता हूं काफी ध्यान देता हूं और
  15733. 10:32:05हमेशा अपडेट करता रहता हूं। तो इसीलिए ये
  15734. 10:32:07बेस्ट सेलर है और लोगों ने इसमें ट्रस्ट
  15735. 10:32:09रखा है। ठीक है? तो बात करते हैं कोर्स
  15736. 10:32:12करिकुलम पे। इसमें क्या-क्या कवर्ड है?
  15737. 10:32:14देखिए आप करिकुलम देखेंगे तो इसमें तो
  15738. 10:32:15पहले तो बैक एंड पहले बनेंगे प्रोडक्शन
  15739. 10:32:17ग्रेड ई-कॉमर्स का। तो इसमें जो चैलेंजेस
  15740. 10:32:19आप फेस करेंगे वो काफी यूनिक चैलेंजेस है
  15741. 10:32:21जो एक ई-कॉमर्स एप्लीकेशन में फेस की जाती
  15742. 10:32:23है। ठीक है? ई-कॉमर्स प्रोडक्शन ग्रेड
  15743. 10:32:26एप्लीकेशन में डिप्लॉयमेंट सिखाऊंगा आपको।
  15744. 10:32:28आपको रिएक्ट नहीं आती क्योंकि फ्रंट एंड
  15745. 10:32:30बनाएंगे हम लोग। आपको रिएक्ट नहीं आती तो
  15746. 10:32:32रिएक्ट भी इंक्लूडेड है। आपको
  15747. 10:32:33जावास्क्रिप्ट अगर नहीं आती तो
  15748. 10:32:35जावास्क्रिप्ट भी इंक्लूडेड है। ठीक है?
  15749. 10:32:37रिएक्ट, जावास्क्रिप्ट फ्रंट एंड की
  15750. 10:32:39टेक्नोलॉजीज़ इंक्लूडेड है। आप पूरा सीखिए।
  15751. 10:32:41देखिए रिएक्ट इंटरमीडिएट एडवांस्ड बेसिक्स
  15752. 10:32:43बिगिनर्स एडवांस और यहां पर फिर हम फ्रंट
  15753. 10:32:46एंड फुल स्टक डेवलपमेंट करेंगे। इसके ये
  15754. 10:32:48सीखने के बाद ये सारी चीजें रीडक्स की मदद
  15755. 10:32:50से हम जो है इसका फ्रंट एंड एडवांस फ्रंट
  15756. 10:32:53एंड बनाएंगे। इसमें अ देखिए आप यहां पर
  15757. 10:32:56देख सकते हो आउटकम यह है कि आप एक पूरा
  15758. 10:32:59आपकी फ्रंट एंड विद ईपीआई को डिप्लॉय करो।
  15759. 10:33:03ठीक है? और इसमें एक कॉम्प्लेक्स एडमिन
  15760. 10:33:04पैनल भी इंक्लूड किया गया है। एडमिन पैनल
  15761. 10:33:06और सेलर पैनल जिसके जरिए आप रोल बेस्ड
  15762. 10:33:09एक्सेस कंट्रोल मैनेज कर सकते हो फ्रंट
  15763. 10:33:11एंड पे। तो इसमें जो कंटेंट है इसमें जो
  15764. 10:33:13लर्निंग्स आपको मिलेगी ये काफी यूनिक
  15765. 10:33:15मिलेगी। ये ऐसा नहीं है कि ओवरलैप है और
  15766. 10:33:18सेम ही कोर्स है, सेम ही कंटेंट है। ऐसा
  15767. 10:33:20नहीं है। इस कोर्स को इस प्रोजेक्ट को जो
  15768. 10:33:23भी प्रोजेक्ट आप बनाओगे यह उसको आप
  15769. 10:33:25रे्यूमे में भी दिखा सकते हो। देखिए ये
  15770. 10:33:27इसका काफी ये इसका प्रोजेक्ट डेमो भी है।
  15771. 10:33:29आप प्रोजेक्ट डेमो भी अच्छे से देख सकते
  15772. 10:33:31हो यह पूरी तरीके से कि आप क्या बनाने
  15773. 10:33:34वाले हो। तो यहां पर मैं पूरी की पूरा
  15774. 10:33:35डेमो दे देता हूं। देखिए स्ट्र्राइप का
  15775. 10:33:36पेमेंट इंटीग्रेशन भी है यहां पर। आप देख
  15776. 10:33:39पा रहे हो ये थोड़ा सा ब्लर हो गया है।
  15777. 10:33:42लेकिन ठीक है। यहां पर मुझे इसकी क्वालिटी
  15778. 10:33:45का ऑप्शन नहीं आ रहा है। लेकिन यह थोड़ा
  15779. 10:33:47ब्लर हो गया है। तो इसमें पेमेंट वगैरह सब
  15780. 10:33:49कुछ है। पेमेंट गेटवे आप देख सकते हो।
  15781. 10:33:51पूरा का पूरा एप्लीकेशन यहां पर मैंने
  15782. 10:33:52पूरा डेमो दिया हुआ है। और इसके रिव्यूज
  15783. 10:33:54भी आप देख सकते हो। रिव्यूज भी छुपे नहीं
  15784. 10:33:56है और रिव्यूज पब्लिकली होस्टेड है। मेरी
  15785. 10:33:59वेबसाइट पे रिव्यूज नहीं है। देखिए अगर
  15786. 10:34:00मेरी वेबसाइट पे होता नॉर्मली क्या होता
  15787. 10:34:02है? वेबसाइट पे लोग हैं ना रिव्यूज फेक
  15788. 10:34:04रिव्यूज भी देखने मिलते हैं लोगों को।
  15789. 10:34:07लेकिन यह रिव्यूज है कोई एक्सटर्नल साइट
  15790. 10:34:09पे यूमी पर जो कि एक ट्रस्टवर्दी
  15791. 10:34:11प्लेटफार्म है। ठीक है? तो यह रिव्यूज
  15792. 10:34:13खरीदे हुए नहीं है। यह एक्चुअल रिव्यूज है
  15793. 10:34:15जो लोगों ने डाले हैं। तो, यह एक कोर्स है
  15794. 10:34:17मेरा। दूसरा कोर्स है मेरा माइक्रो
  15795. 10:34:19सर्विसेस का। यह माइक्रो सर्विसेस का
  15796. 10:34:21कोर्स भी काफी जबरदस्त है। तो अगर आप यह
  15797. 10:34:23ई-कॉमर्स एप्लीकेशन यहां पर बनाते हो, यह
  15798. 10:34:25प्रोजेक्ट लेड कोर्सर्सेस है। ठीक है? ये
  15799. 10:34:27ई-कॉमर्स एप्लीकेशन आप बनाते हो पूरा फुल
  15800. 10:34:29स्टक उसके बाद आप माइक्रो सर्विस की ओर जा
  15801. 10:34:31सकते हो। जहां पर हम ई-कॉमर्स एप्लीकेशन
  15802. 10:34:33को लेकर माइक्रो सर्विसेस में कन्वर्ट
  15803. 10:34:35करते हैं। यहां पर सब कुछ डॉकर, kuberner
  15804. 10:34:37सब कुछ इंक्लूडेड है। फुल फुल प्रोडक्शन
  15805. 10:34:39ग्रेड एप्लीकेशन है यहां पर। ठीक है?
  15806. 10:34:42बेनिफिट्स भी काफी है इस कोर्स के। देखिए
  15807. 10:34:45और बेनिफिट्स यह है कि आपको यहां पर 6
  15808. 10:34:47महीने का फ्री इंटेलिजेंट प्रो एक्सेस
  15809. 10:34:50दिया जाता है। ठीक है? और फ्यूचर अपडेट्स
  15810. 10:34:53भी आपको दिए जाते हैं। तो इस तरीके से आप
  15811. 10:34:57इसको इस्तेमाल कर सकते हैं। ठीक है? यह
  15812. 10:34:59काफी अ मैं जितना कहूं उतना कम है। लेकिन
  15813. 10:35:03ये कोर्सेस ऐसे कोर्सेस मेरे टाइम पे
  15814. 10:35:05अवेलेबल नहीं थे। जब मैं अह लर्निंग कर
  15815. 10:35:07रहा था। लेकिन आज काफी लर्नर्स को इसकी इस
  15816. 10:35:12ये कोर्स के बाद हेल्पफुल हेल्प हो जाती
  15817. 10:35:14है। ठीक है? वो लोग प्रॉपर कॉन्फिडेंट हो
  15818. 10:35:17जाते हैं। क्योंकि देखिए हम कोई बेसिक
  15819. 10:35:20एप्लीकेशन नहीं बनाते इसमें। ये एडवांस
  15820. 10:35:22प्रोडक्शन ग्रेड एप्लीकेशनेशंस बनते हैं।
  15821. 10:35:24इसमें रोल बेस्ड एक्सेस कंट्रोल,
  15822. 10:35:25सिक्योरिटी सब कुछ हम लोग डालेंगे और
  15823. 10:35:28ई-कॉमर्स में जो चैलेंजेस आते हैं उसको हम
  15824. 10:35:30फेस करेंगे। और भी काफी सारे कोर्सर्सेस
  15825. 10:35:32हैं जैसे कि स्प्रिंग सिक्योरिटी और डाटा
  15826. 10:35:36जीपीए यह सारी और आप है ना रोड मैप भी देख
  15827. 10:35:39सकते हो यहां पर यह रोड मैप है तो रोड मैप
  15828. 10:35:41के इस पेज पर आ जाओगे फैसल रोड मैप तो यह
  15829. 10:35:45आपको रोड मैप बताएगा पूरा के पूरा कि आपको
  15830. 10:35:47यह जो कोर्सर्सेस है किस ऑर्डर में लेने
  15831. 10:35:49चाहिए और कैसे लेने चाहिए और लोएस्ट
  15832. 10:35:51प्राइस कोर्स का आपको यहां पर मिलेगा यहां
  15833. 10:35:54पर हमेशा मैं कोशिश करता हूं कि एक कूपन
  15834. 10:35:56डाल के रखूं ताकि जो लोग अफोर्ड नहीं कर
  15835. 10:35:58पाते एक्सपेंसिव कोर्सेज वह यहां पर लेके
  15836. 10:36:00कि यहां पर आए और इस कोर्स को ले सके।
  15837. 10:36:04देखिए यह जो नॉलेज आपको मिलता है यह काफी
  15838. 10:36:06लो प्राइस पे मिलता है और इससे जो
  15839. 10:36:08रेवेन्यू जनरेट होता है यह फ्री कंटेंट
  15840. 10:36:10जनरेट करने में रेवेन्यू जाता है और इससे
  15841. 10:36:13चैनल को काफी सपोर्ट मिल जाता है। ठीक है?
  15842. 10:36:15तो उम्मीद करता हूं आप इसको चेक आउट
  15843. 10:36:17करेंगे एक बार और अगर आप अफोर्ड नहीं कर
  15844. 10:36:20पाते कोई बात नहीं। हम ऐसे तो फ्री कंटेंट
  15845. 10:36:23वैसे लाते ही रहेंगे। हमेशा लाते रहेंगे।
  15846. 10:36:26तो आप एटलीस्ट सब्सक्राइब और YouTube पे
  15847. 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.