Spring Boot Hello World Tutorial in Hindi: Step-by-Step Guide


Spring Boot Hello World Tutorial in Hindi


ये हमारा Spring Boot Tutorials का छठा आर्टिकल है, जो एक स्प्रिंग बूट प्रोजेक्ट प्रैक्टिकल आर्टिकल होनेवाला है। यहाँ हम स्प्रिंग बूट का अपना पहला “Hello World” का सिंपल प्रोजेक्ट बनायेंगे।

पिछले आर्टिकल में हमने Spring Boot Application-Level-Components को जाना, जिसमें हमने Controller, Service, Repository, Entity के बारें में विस्तार से समझा है। इसलिए यहाँ एक प्रैक्टिस प्रोजेक्ट अनिवार्य हो जाता है।

दोस्तों, प्रोग्रामिंग सीखना एक प्रैक्टिस गेम है। ज्यादा से ज्यादा प्रैक्टिस आपको एक अच्छा डेवलपर बनाती है। इसलिए हर कांसेप्ट को समझने के बाद उसे प्रैक्टिकली एक्सप्लेन भी करते जायेंगे। ताकि आप थेअरी के साथ प्रैक्टिस पर भी फोकस कर सकों। चलो शुरू करते है। चलो शुरू करते है।

Spring Boot Hello World Tutorial in Hindi

Spring Initializr से प्रोजेक्ट बनाना


Spring Boot Environment Setup में हमने Spring Initializr को डिटेल में एक्सप्लेन किया है। इसलिए यहाँ हम डायरेक्ट प्रोजेक्ट बनाना शुरू करते है। और यहाँ पर हमारे पहले प्रोजेक्ट को स्टेप बाय स्टेप बिल्ड करते है।
  1. हम https://start.spring.io/ इस वेबसाइट पर जायेंगे (आप भी यहाँ से क्लिक करें)
  2. यहाँ पर प्रोजेक्ट सेक्शन में हम Maven सेलेक्ट करेंगे
  3. इसके बाद लैंग्वेज में Java सिलेक्ट करेंगे।
  4. Spring Boot Version में हम स्प्रिंग बूट के लेटेस्ट स्टेबल वर्शन चुनेंगे (3.5.0)

अब हम प्रोजेक्ट मेटाडाटा की और बढ़ते है।

  • ग्रुप में हम अपना डोमेन देंगे जो हमारा मुख्य पैकेज है - tech.quantumrank
  • Artifact में एक आईडी देंगे - helloworld
  • नाम में Artifact आईडी सेट हो जायेगा - helloworld
  • डिस्क्रिप्शन में एक डिस्क्रिप्शन देंगे - My First Spring Boot Project
  • Package Name ऑटोमेटिकली क्रिएट हो जायेगा - tech.quantumrank.helloworld
  • हमे प्रोजेक्ट Jar फाइल में चाहिए इसलिए पैकेजिंग में Jar सिलेक्ट करेंगे

निचे जावा के वर्शन दिए गये है याना आपके सिस्टम में JDK का जो लेटेस्ट या स्टेबल वर्शन इनस्टॉल है उसके हिसाब से यहाँ जावा वर्शन सिलेक्ट करना है। मेरे केस में Java -21 इनस्टॉल है तो मैं इसे सेलेक्ट किया है।

Dependency सेलेक्ट करना


अगर हम कंसोल बेस्ड सिंपल “Hello world” प्रोजेक्ट बनाते है, याने हमे सिर्फ टर्मिनल पर “Hello world” प्रिंट करवाना है तो हमे यहाँ डिपेंडेंसी जोड़ने की आवश्यकता नहीं है, क्यों की स्प्रिंग बूट हमें spring-boot-starter और spring-boot-starter-test ये दो डिपेंडेंसी हमारे pom.xml में जोड़ देगा।

Spring-boot-starter ये डिपेंडेंसी ये Spring Boot की कोर स्टार्टर है जो हमें स्प्रिंग के बेसिक फीचर, ऑटो-कॉन्फ़िगरेशन, और लॉगिंग प्रदान करती है। और ये काफी है हमे टर्मिनल पर “Hello World” प्रिंट करवा देने के लिए।

लेकिन हमे ब्राउज़र या कहे की वेब बेस्ड एप्लीकेशन बनाना है और यहाँ टेक्स्ट या HTML, JSON फॉर्मेट में Hello World प्रिंट करवाना है तो हमे spring-boot-starter-web डिपेंडेंसी की आवश्यकता होगी।

ये डिपेंडेंसी हमे एम्बेडेड सर्वर (Tomcat), Spring MVC और HTTP रिक्वेस्ट हैंडलिंग के लिए आवश्यक लाइब्रेरीज प्रदान करती है।

याने अब हम समझ गये की spring-boot-starter-web डिपेंडेंसी के बिना @Controller या @RestController काम करनेवाले नहीं है।

इसलिए Spring Initializr में Dependency सेक्शन में हम spring-boot-starter-web डिपेंडेंसी जोड़ लेते है।
  • Dependencies सेक्शन में जाएँ और ADD DEPENDENCIES बटन पर क्लिक करे
  • ऊपर सर्च बार में Spring Web टाइप करें
  • निचे Spring Web डिपेंडेंसी दिखाई देगी उसपर क्लिक करें

इस तरह से आप अपने प्रोजेक्ट में डिपेंडेंसी जोड़ सकते है। ये हमारा एक सिंपल Hello World प्रोजेक्ट है, इसलिए हमे अन्य और डिपेंडेंसी जोड़ने की आवश्यकता नहीं है। निचे इमेज में आप सही तरह देख सकते है।

Spring Initializr project sreenshot



Project बनाना शुरू करें 


अब बस हमें Generate बटन पर क्लिक करना है और हमारा प्रोजेक्ट helloworld.zip फाइल में डाउनलोड हो जायेगा।

प्रोजेक्ट को IDE में ओपन करने के लिए सब से पहले हमको helloworld.zip को unzip करना पड़ेगा, मैंने इस ज़िप फाइल को अपने सिस्टम के डेस्कटॉप फोल्डर में अनज़िप किया है। और Intellij IDE पर जाकर मैं ओपन प्रोजेक्ट को सिलेक्ट किया और यहाँ से डेस्कटॉप में रखे helloworld प्रोजेक्ट को चूस किया और इसे IDE में ओपन कर लिया है। IDE प्रोजेक्ट क्रिएट होने में थोडा टाइम लगता है। निचे अप प्रोजेक्ट स्ट्रक्चर की इमेज को देख सकते है।

hello-word-project-structure-intellij-ide



इस स्ट्रक्चर में आप tech.quantumrank.helloworld इस पैकेज में HelloWorldApplication ये फाइल देख रहे है। यही हमारे प्रोजेक्ट की में फाइल है। यही फाइल हमारे प्रोजेक्ट को रन करती है। इमेज के राईट साइड में आप इस फाइल को देख सकते है। इस फाइल में @SpringBootApplication इस Annotation का इस्तेमाल हुआ है। ये बहोत ही महत्वपूर्ण Annotation है । इसे डिटेल में Annotation के आर्टिकल में समझेंगे।

कंसोल में "Hello World" प्रिंट करना 


चलो हम सब से पहले कंसोल में "Hello World-This is My First Project..!!" ये प्रिंट करके देखते है। ये आसान है ये System.out.println के जरिये कंसोल में प्रिंट कर सकते है। निचे इमेज में देखें।

hello-world-print-console-intellij-ide



याने हमारा प्रोजेक्ट सही तरह से रन कर रहा है। तो चलो हम "Hello World-This is My First Project।।!!" इसे कंट्रोलर क्लास के जरिये हम JSON या टेक्स्ट में रिटर्न करेंगे।

Controller से "Hello World" रिटर्न करना 


इसके लिए हम tech.quantumrank.helloworld इस पैकेज में एक फोल्डर (एक और पैकेज) बगना केते है जिसे नाम देता है tech.quantumrank.helloworld.controller। और इस फोल्डर में हम एक जावा क्लास बनाते है जिसे नाम देते है HelloWorldController।

अब हम HelloWorldController क्लास पर @RestController ये Annotation लगा लेते है, जैसे ही हम ये Annotation लगते है हमारा IDE RestController क्लास को इम्पोर्ट कर देता है।

अब इस क्लास में हम एक मेथड बनायेंगे जो स्ट्रिंग रिटर्न करेगी या ये कह सकते है की रिक्वेस्ट हैंडल करेगी, इसको नाम दे देते है helloWorld। हम रिक्वेस्ट हैंडल करने के लिए @GetMapping या @PostMapping एनोटेशन का यूज़ करते है, तो जो मेथड रिक्वेस्ट हैंडल कर रही है उसपर हम @GetMapping(“/”) लगाते है।

@GetMapping के ब्रैकेट में जो भी है वही एड्रेस ब्राउज़र में हमारी स्ट्रिंग रिटर्न करेगा। जैसे ही हम @GetMapping लगते है वैसे ही हमारी IDE GetMapping क्लास को फाइल इम्पोर्ट कर देती है।


package tech.quantumrank.helloworld.controller;


import org.springframework.web.bind.annotation.GetMapping;

import org.springframework.web.bind.annotation.RestController;


@RestController

public class HelloWorldController{


@GetMapping(“/”) 

public String helloWorld(){


return “Hello World-This is My First Project।।!!" ;


}


}



इस तरह से हमारा कंट्रोलर बनेगा और जब हम प्रोजेक्ट के मैं फाइल (HelloWorldApplication) को रन करेंगे और प्रोजेक्ट sucessfuly रन होगा तब हमे ब्राउज़र में http://localhost:8080/ इस एड्रेस पर जाना है। और आपको हमने रिटर्न की हुई स्ट्रिंग दिखेगी। निचे इमेज में देख सकते है।

hello-world-print-localhost



इस तरह से हमे अगर @RestController के बजाय @Controller का यूज़ करना है और HTML में view रिटर्न करना है तो आपको प्रोजेक्ट के resources फोल्डर में मौजूद templetes फोल्डर में HTML की एक फाइल बनानी है , जैसे hello।html और इस फाइल को @GetMapping के जरिये रिटर्न कर सकते है।

यहाँ पर बस एक ही काम करना है, @GetMapping(“/”) की जगह हमें html फाइल का नाम लिखना पड़ेगा, जैसे - @GetMapping(“/hello”) और @RestController की जगह हमे @Controller चाहिए। क्यों की ये html या jsp पेज रिटर्न करता है।

ये हमारा स्प्रिंग बूट का फर्स्ट प्रोजेक्ट है - जो Hello word “ रिटर्न कर रहा है।

संबोधन


आप ये बिलकुल बिना डरे आसानी से कर सकते है , और आपको ये जानकारी होने लगी है की चीजे कैसे काम करती है। इसकी प्रैक्टिस करिये , अलग-अलग तरीके की स्ट्रिंग, इन्टिजर रिटर्न करके देखिये। आप चीजों को होते हुए देखते तो इसे अच्छे से सिख पाते है। हमारा अगला आर्टिकल Annotation को डिटेल में कवर करेगा और साथ ही सभी Annotation के बारे में आप जान सकेंगे।



टिप्पणियाँ

इस ब्लॉग से लोकप्रिय पोस्ट

Spring Boot हिंदी ट्यूटोरियल: Spring Boot क्या है और इसके फायदे

Spring Initializr हिंदी ट्यूटोरियल: Maven vs Gradle और प्रोजेक्ट सेटअप गाइड

Spring Boot Development Environment Setup हिंदी में: JDK, Maven, Gradle सेटअप गाइड