शीर्ष 50 स्प्रिंग बूट साक्षात्कार प्रश्न और उत्तर

30 अक्टूबर, 2021

विषयसूची

1. स्प्रिंग बूट क्या है?

स्प्रिंग बूट, ऑटो-कॉन्फ़िगरेशन और एम्बेडेड एप्लिकेशन सर्वर (जैसे टॉमकैट, जेट्टी) के अतिरिक्त समर्थन के साथ स्प्रिंग फ्रेमवर्क का उपयोग करके आरएडी बिल्ड के लिए एक स्प्रिंग मॉड्यूल फ्रेमवर्क है।

स्प्रिंग बूट साक्षात्कार प्रश्न और उत्तर

2. स्प्रिंग बूट का उपयोग करने के क्या लाभ हैं?

  • यह एप्लिकेशन की त्वरित शुरुआत के लिए डिफ़ॉल्ट कॉन्फ़िगरेशन के एक सेट को लोड करने के लिए ऑटोकॉन्फ़िगरेशन प्रदान करता है।
  • गैर-कार्यात्मक सुविधाओं की एक श्रृंखला के साथ स्टैंड-अलोन एप्लिकेशन बनाता है जो परियोजनाओं के बड़े वर्गों के लिए सामान्य हैं।
  • स्प्रिंग बूट एम्बेडेड टॉमकैट, सर्वलेट कंटेनर जेट्टी के साथ आता है ताकि WAR फाइलों के उपयोग से बचा जा सके।
  • स्प्रिंग बूट डेवलपर प्रयास को कम करने और मावेन कॉन्फ़िगरेशन को सरल बनाने के लिए एक राय प्रदान करता है
  • अनुप्रयोगों को विकसित करने और परीक्षण करने के लिए सीएलआई उपकरण प्रदान करता है
  • निर्भरता प्रबंधन सुनिश्चित करने के लिए स्प्रिंग बूट स्टार्टर्स के साथ आता है और विभिन्न सुरक्षा मेट्रिक्स भी प्रदान करता है
  • देव और उत्पादों में अनुप्रयोगों की निगरानी और प्रबंधन के लिए एपीआई की एक विस्तृत श्रृंखला से मिलकर बनता है
  • बॉयलरप्लेट कोड से बचकर आसानी से स्प्रिंग जेडीबीसी, स्प्रिंग ओआरएम, स्प्रिंग डेटा, स्प्रिंग सुरक्षा जैसे स्प्रिंग इकोसिस्टम के साथ एकीकृत होता है

3. आईओसी कंटेनर क्या है और इसके फायदे क्या हैं?

स्प्रिंग आईओसी कंटेनर (नियंत्रण का उलटा) स्प्रिंग फ्रेमवर्क के मूल में है। यह कंटेनर कॉन्फ़िगरेशन फ़ाइल को पढ़ेगा और उसके आधार पर यह ऑब्जेक्ट बनाएगा और संग्रहीत करेगा और इसे प्रबंधित करेगा।



लाभ: डेवलपर व्यावसायिक तर्क पर ध्यान केंद्रित कर सकते हैं क्योंकि ऑब्जेक्ट निर्माण और प्रबंधन IOC कंटेनरों द्वारा नियंत्रित किए जाते हैं।

आईओसी कंटेनर

4. क्या हम स्प्रिंग बूट में एम्बेडेड टॉमकैट सर्वर के पोर्ट को बदल सकते हैं?

हाँ, हम एप्लिकेशन गुण फ़ाइल का उपयोग करके एम्बेडेड टॉमकैट सर्वर के पोर्ट को बदल सकते हैं।

इस फ़ाइल में, आपको server.port की एक संपत्ति जोड़नी थी और इसे अपनी इच्छानुसार किसी भी पोर्ट पर असाइन करना था।

उदाहरण के लिए, यदि आप इसे 8081 पर असाइन करना चाहते हैं, तो आपको server.port=8081 . का उल्लेख करना होगा

एक बार जब आप पोर्ट नंबर का उल्लेख करते हैं, तो स्प्रिंग बूट द्वारा एप्लिकेशन गुण फ़ाइल स्वचालित रूप से लोड हो जाएगी और आवश्यक कॉन्फ़िगरेशन एप्लिकेशन पर लागू हो जाएगा।

यह सभी देखें शीर्ष 100 जावास्क्रिप्ट साक्षात्कार प्रश्न और उत्तर

5. क्या हम स्प्रिंग बूट में एंबेडेड टॉमकैट सर्वर को ओवरराइड या बदल सकते हैं?

हां, हम स्टार्टर निर्भरता का उपयोग करके एम्बेडेड टॉमकैट सर्वर को बदल सकते हैं। स्प्रिंग-बूट-स्टार्टर-जेट्टी की तरह प्रत्येक प्रोजेक्ट के लिए निर्भरता के रूप में आपको आवश्यकता होती है।

6. क्या हम स्प्रिंग बूट एप्लिकेशन में डिफ़ॉल्ट वेब सर्वर को अक्षम कर सकते हैं?

स्प्रिंग में प्रमुख मजबूत बिंदु आपके एप्लिकेशन को शिथिल युग्मित बनाने के लिए लचीलापन प्रदान करना है। स्प्रिंग वेबसर्वर को त्वरित कॉन्फ़िगरेशन में अक्षम करने के लिए सुविधाएँ प्रदान करता है। हां, हम वेब एप्लिकेशन प्रकार को कॉन्फ़िगर करने के लिए एप्लिकेशन गुणों का उपयोग कर सकते हैं, जैसे कि, spring.main.web-application-type=none।

7. किसी विशिष्ट ऑटो-कॉन्फ़िगरेशन वर्ग को अक्षम कैसे करें?

आप @EnableAutoConfiguration की बहिष्कृत विशेषता का उपयोग कर सकते हैं, यदि आप पाते हैं कि कोई विशिष्ट ऑटो-कॉन्फ़िगरेशन वर्ग जो आप नहीं चाहते हैं, लागू किया जा रहा है।

  • // बहिष्कृत का उपयोग करके
  • @EnableAutoConfiguration (बहिष्कृत = {DataSourceAutoConfiguration.class})

8. @SpringBootApplication एनोटेशन आंतरिक रूप से क्या करता है?

स्प्रिंग बूट दस्तावेज़ के अनुसार, @SpringBootApplication एनोटेशन उनकी डिफ़ॉल्ट विशेषताओं के साथ @Configuration, @EnableAutoConfiguration, और @ComponentScan का उपयोग करने के बराबर है। स्प्रिंग बूट डेवलपर को एकाधिक का उपयोग करने के बजाय एकल एनोटेशन का उपयोग करने में सक्षम बनाता है। लेकिन जैसा कि हम जानते हैं, स्प्रिंग शिथिल युग्मित सुविधाएँ प्रदान करता है जिनका उपयोग हम अपनी परियोजना की जरूरतों के अनुसार प्रत्येक व्यक्तिगत एनोटेशन के लिए कर सकते हैं।

9. अपने जावा वर्ग में application.properties फ़ाइल में परिभाषित संपत्ति का उपयोग कैसे करें?

एप्लिकेशन में परिभाषित गुणों तक पहुंचने के लिए @Value एनोटेशन का उपयोग करें - गुण फ़ाइल।

  • @Value(${custom.value})
  • निजी स्ट्रिंग कस्टम वैल;

10. स्प्रिंग बूट में @RestController एनोटेशन की व्याख्या करें?

@RestController रेस्टफुल कंट्रोलर बनाने के लिए एक सुविधाजनक एनोटेशन है। यह @Component की विशेषज्ञता है और क्लासपाथ स्कैनिंग के माध्यम से स्वतः पता लगाया जाता है। यह @Controller और @ResponseBody एनोटेशन जोड़ता है। यह प्रतिक्रिया को JSON या XML में परिवर्तित करता है।

  • जो @ResponseBody एनोटेशन के साथ कंट्रोलर क्लास के हर रिक्वेस्ट हैंडलिंग मेथड को एनोटेट करने की जरूरत को खत्म करता है। यह आमतौर पर @RequestMapping एनोटेशन के आधार पर एनोटेट हैंडलर विधियों के संयोजन में उपयोग किया जाता है।
  • इंगित करता है कि प्रत्येक विधि द्वारा लौटाया गया डेटा टेम्पलेट को प्रस्तुत करने के बजाय सीधे प्रतिक्रिया निकाय में लिखा जाएगा।

शीर्ष स्प्रिंग बूट साक्षात्कार प्रश्न और उत्तर

11. स्प्रिंग बूट में @RestController एनोटेशन और @Controller के बीच अंतर?

मॉडल ऑब्जेक्ट का @ कंट्रोलर मैप देखने या टेम्प्लेट करने और इसे मानव पठनीय बनाने के लिए लेकिन @RestController बस ऑब्जेक्ट देता है और ऑब्जेक्ट डेटा सीधे JSON या XML के रूप में HTTP प्रतिक्रिया में लिखा जाता है।

12. RequestMapping और GetMapping में क्या अंतर है?

RequestMapping का उपयोग GET, POST, PUT और कई अन्य अनुरोध विधियों के साथ एनोटेशन पर विधि विशेषता का उपयोग करके किया जा सकता है। जबकि GetMapping केवल RequestMapping का एक विस्तार है, जो आपको अनुरोधों पर स्पष्टता में सुधार करने में मदद करता है।

13. स्प्रिंग बूट में प्रोफाइल का क्या उपयोग है?

उद्यम के लिए एप्लिकेशन विकसित करते समय, हम आम तौर पर देव, क्यूए और प्रोड जैसे कई वातावरणों से निपटते हैं। इन परिवेशों के लिए कॉन्फ़िगरेशन गुण भिन्न हैं।

उदाहरण के लिए, हम देव के लिए एक एम्बेडेड H2 डेटाबेस का उपयोग कर रहे होंगे, लेकिन प्रोड में मालिकाना Oracle या DB2 हो सकता है। भले ही DBMS पूरे परिवेश में समान हो, URL निश्चित रूप से भिन्न होंगे।

प्रत्येक वातावरण के लिए कॉन्फ़िगरेशन को अलग करने में मदद करने के लिए स्प्रिंग में प्रोफाइल का प्रावधान है। ताकि प्रोग्रामेटिक रूप से इसे बनाए रखने के बजाय, गुणों को अलग-अलग फाइलों जैसे कि application-dev.properties और application-prod.properties में रखा जा सके।

डिफ़ॉल्ट application.properties वर्तमान में सक्रिय प्रोफ़ाइल को spring.profiles.active का उपयोग करके इंगित करती है ताकि सही कॉन्फ़िगरेशन उठाया जा सके।

14. स्प्रिंग और स्प्रिंग बूट में क्या अंतर है?

वसंतस्प्रिंग बूट
जावा पर आधारित एक वेब अनुप्रयोग ढांचावसंत का एक मॉड्यूल
अनुकूलित वेब एप्लिकेशन बनाने के लिए उपकरण और पुस्तकालय प्रदान करता हैस्प्रिंग एप्लिकेशन प्रोजेक्ट बनाने के लिए उपयोग किया जाता है जो बस चला/निष्पादित कर सकता है
स्प्रिंग बूट की तुलना में स्प्रिंग अधिक जटिल हैस्प्रिंग बूट स्प्रिंग फ्रेमवर्क की तुलना में कम जटिल है
एक गैर-विचारणीय दृष्टिकोण लेता हैएक मंच के बारे में राय लेता है

15. स्प्रिंग बूट की कुछ विशेषताओं का उल्लेख कीजिए।

स्प्रिंग बूट की कुछ विशेषताएं
  • स्प्रिंग सीएलआई: स्प्रिंग बूट सीएलआई आपको स्प्रिंग बूट एप्लिकेशन लिखने के लिए ग्रूवी का उपयोग करने की अनुमति देता है और बॉयलरप्लेट कोड से बचा जाता है।
  • स्प्रिंग इनिशियलाइज़र: यह मूल रूप से एक वेब एप्लिकेशन है, जो आपके लिए एक आंतरिक परियोजना संरचना बना सकता है।
  • स्प्रिंग एक्चुएटर: यह सुविधा स्प्रिंग बूट अनुप्रयोगों को चलाने में सहायता प्रदान करती है।
  • स्टार्टर डिपेंडेंसी: इस फीचर की मदद से, स्प्रिंग बूट सामान्य निर्भरता को एक साथ जोड़ता है और अंततः उत्पादकता में सुधार करता है।
  • ऑटो-कॉन्फ़िगरेशन: स्प्रिंग बूट की ऑटो-कॉन्फ़िगरेशन सुविधाएँ उस प्रोजेक्ट के अनुसार डिफ़ॉल्ट कॉन्फ़िगरेशन लोड करने में मदद करती हैं जिस पर आप काम कर रहे हैं।
  • लॉगिंग और सुरक्षा: स्प्रिंग बूट की यह विशेषता सुनिश्चित करती है कि स्प्रिंग बूट का उपयोग करके किए गए सभी एप्लिकेशन बिना किसी परेशानी के ठीक से सुरक्षित हैं।

16. मावेन का उपयोग करके स्प्रिंग बूट एप्लिकेशन बनाने का तरीका बताएं।

मावेन का उपयोग करके स्प्रिंग बूट एप्लिकेशन बनाने के कई तरीके हैं:

  • स्प्रिंग बूट सीएलआई
  • स्प्रिंग बूट प्रोजेक्ट विजार्ड
  • स्प्रिंग बूट प्रारंभकर्ता
  • स्प्रिंग मावेन परियोजना

17. बाह्य विन्यास के संभावित स्रोतों का उल्लेख कीजिए।

बाहरी विन्यास का सबसे संभावित स्रोत:

  • आवेदन गुण
  • कमांड लाइन गुण
  • प्रोफ़ाइल विशिष्ट गुण

18. क्या आप समझा सकते हैं कि जब स्प्रिंग बूट एप्लिकेशन को जावा एप्लिकेशन के रूप में चलाया जाता है तो पृष्ठभूमि में क्या होता है?

जब स्प्रिंग बूट एप्लिकेशन को जावा एप्लिकेशन के रूप में रन के रूप में निष्पादित किया जाता है, तो यह स्वचालित रूप से टॉमकैट सर्वर को लॉन्च करता है जैसे ही यह देखता है कि आप एक वेब एप्लिकेशन विकसित कर रहे हैं।

19. स्प्रिंग बूट स्टार्टर्स क्या हैं और उपलब्ध स्टार्टर्स क्या हैं?

स्प्रिंग बूट स्टार्टर्स सुविधाजनक निर्भरता प्रबंधन प्रदाताओं का एक सेट है जिसका उपयोग निर्भरता को सक्षम करने के लिए एप्लिकेशन में किया जा सकता है। ये शुरुआतकर्ता विकास को आसान और तेज़ बनाते हैं। सभी उपलब्ध प्रारंभकर्ता org.springframework.boot समूह के अंतर्गत आते हैं।

  • स्प्रिंग-बूट-स्टार्टर
  • स्प्रिंग-बूट-स्टार्टर-jdbc
  • स्प्रिंग-बूट-स्टार्टर-वेब
  • स्प्रिंग-बूट-स्टार्टर-डेटा-जेपीए
  • स्प्रिंग-बूट-स्टार्टर-सुरक्षा
  • स्प्रिंग-बूट-स्टार्टर-एओपी
  • स्प्रिंग-बूट-स्टार्टर-टेस्ट
यह सभी देखें शीर्ष 100 उत्तरदायी साक्षात्कार प्रश्न और उत्तर

20. स्प्रिंग एक्चुएटर तथा इसके लाभों की व्याख्या कीजिए।

स्प्रिंग एक्ट्यूएटर स्प्रिंग बूट का एक फीचर है जिसकी मदद से आप देख सकते हैं कि रनिंग एप्लिकेशन के अंदर क्या हो रहा है।

स्प्रिंग एक्ट्यूएटर उत्पादन-तैयार आरईएसटी बिंदुओं तक पहुंचने और वेब से सभी प्रकार की जानकारी प्राप्त करने का एक बहुत ही आसान तरीका प्रदान करता है।

स्प्रिंग सिक्योरिटी की सामग्री वार्ता रणनीति का उपयोग करके इन बिंदुओं को सुरक्षित किया जाता है।

शीर्ष स्प्रिंग बूट साक्षात्कार प्रश्न और उत्तर

21. स्प्रिंग बूट निर्भरता प्रबंधन क्या है?

स्प्रिंग बूट निर्भरता प्रबंधन का उपयोग निर्भरता और कॉन्फ़िगरेशन को स्वचालित रूप से प्रबंधित करने के लिए किया जाता है, बिना आप इनमें से किसी भी निर्भरता के संस्करण को निर्दिष्ट किए।

22. स्प्रिंग बूट सिस्टम के लिए न्यूनतम आवश्यकताओं का उल्लेख करें।

स्प्रिंग बूट 2.1.7. रिलीज की आवश्यकता है

  • जावा 8+
  • स्प्रिंग फ्रेमवर्क 5.1.9+

स्पष्ट निर्माण समर्थन

  • मेवेन 3.3+
  • ग्रेड 4.4+

सर्वलेट कंटेनर समर्थन

  • टॉमकैट 9.0 - सर्वलेट संस्करण 4.0
  • जेट्टी 9.4- सर्वलेट संस्करण 3.1
  • अंडरटो 2.0-सर्वलेट संस्करण 4.0

23. अजवायन की पत्ती क्या है और अजवायन का उपयोग कैसे करें?

अजवायन की पत्ती एक सर्वर-साइड जावा टेम्पलेट इंजन है जिसका उपयोग वेब अनुप्रयोगों के लिए किया जाता है।

इसका उद्देश्य आपके वेब एप्लिकेशन के लिए एक प्राकृतिक टेम्प्लेट लाना है और साथ ही स्प्रिंग फ्रेमवर्क और HTML5 जावा वेब एप्लिकेशन के साथ एकीकृत हो सकता है।

org.springframework.boot

स्प्रिंग-बूट-स्टार्टर-थाइमलीफ

अजवायन की पत्ती क्या है?

24. स्प्रिंग बूट DevTools की क्या आवश्यकता है?

स्प्रिंग बूट DevTools टूल का एक विस्तृत सेट है और इसका उद्देश्य एप्लिकेशन को विकसित करने की प्रक्रिया को आसान बनाना है।

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

इसलिए, स्प्रिंग बूट डेवलपर टूल संबंधित विकास परिवेशों में गुण लागू करता है।

|_+_|

25. स्प्रिंग इनिशियलाइज़र का उपयोग करके स्प्रिंग बूट प्रोजेक्ट बनाने के चरणों का उल्लेख करें।

स्प्रिंग इनिशियलाइज़र स्प्रिंग द्वारा प्रदान किया गया एक वेब टूल है। इस टूल की सहायता से, आप केवल प्रोजेक्ट विवरण प्रदान करके स्प्रिंग बूट प्रोजेक्ट बना सकते हैं।

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

26. JDBC का उपयोग करके स्प्रिंग बूट एप्लिकेशन को डेटाबेस से जोड़ने के चरणों का उल्लेख करें।

स्प्रिंग बूट स्टार्टर प्रोजेक्ट एप्लिकेशन को JDBC से जोड़ने के लिए आवश्यक लाइब्रेरी प्रदान करते हैं।

इसलिए, उदाहरण के लिए, यदि आपको केवल एक एप्लिकेशन बनाना है और उसे कनेक्ट करना है MySQL डेटाबेस , आप नीचे दिए गए चरणों का पालन कर सकते हैं:

चरण 1: MySQL में एक डेटाबेस बनाएँ

|_+_|

चरण 2: इस डेटाबेस के अंदर एक टेबल बनाएं

|_+_|

चरण 3: स्प्रिंग बूट प्रोजेक्ट बनाएं और आवश्यक विवरण प्रदान करें

चरण 4: JDBC, MySQL और वेब निर्भरताएँ जोड़ें

चरण 5: प्रोजेक्ट बनने के बाद, आपको डेटाबेस को एप्लिकेशन गुणों में कॉन्फ़िगर करना होगा।

|_+_|

चरण 6: मुख्य application.java वर्ग में निम्नलिखित कोड होना चाहिए:

|_+_|

चरण 7: आपको निम्न कोड का उल्लेख करके HTTP अनुरोधों को संभालने के लिए एक नियंत्रक बनाना होगा:

|_+_|

चरण 8: अंत में इस प्रोजेक्ट को जावा एप्लिकेशन के रूप में निष्पादित करें।

चरण 9: URL खोलें [लोकलहोस्ट: 8080 / सम्मिलित करें], और आप आउटपुट को डेटा प्रविष्टि के रूप में सफल देखेंगे।

आप आगे भी जा सकते हैं और जांच सकते हैं कि डेटा तालिका में दर्ज किया गया है या नहीं।

27. स्प्रिंग बूट में HTTP/2 सपोर्ट कैसे इनेबल करें?

आप स्प्रिंग बूट में HTTP / 2 समर्थन को सक्षम कर सकते हैं:

सर्वर.http2.सक्षम=सच

28. स्प्रिंग बूट में @RequestMapping और @RestController एनोटेशन किसके लिए उपयोग किए जाते हैं?

@RequestMapping@रेस्टकंट्रोलर
इस एनोटेशन का उपयोग रूटिंग जानकारी प्रदान करने के लिए किया जाता है और स्प्रिंग को बताता है कि किसी भी HTTP अनुरोध को संबंधित विधि में मैप किया जाना चाहिए।इस एनोटेशन का उपयोग रूटिंग जानकारी प्रदान करने के लिए किया जाता है और स्प्रिंग को बताता है कि किसी भी HTTP अनुरोध को संबंधित विधि में मैप किया जाना चाहिए।
इस एनोटेशन का उपयोग करने के लिए, आपको org.springframework.web.bind.annotation.RequestMapping आयात करना होगा;इस एनोटेशन का उपयोग करने के लिए, आपको org.springframework.web.bind.annoation.RequestMapping आयात करना होगा;

विचार करें कि आपके पास एक विधि example() है जिसे /example URL के साथ मैप करना चाहिए।

|_+_|

29. स्प्रिंग बूट सीएलआई क्या है और बूट सीएलआई का उपयोग करके स्प्रिंग बूट प्रोजेक्ट को कैसे निष्पादित करें?

स्प्रिंग बूट सीएलआई आधिकारिक स्प्रिंग फ्रेमवर्क द्वारा समर्थित एक उपकरण है। स्प्रिंग बूट प्रोजेक्ट को निष्पादित करने के चरण इस प्रकार हैं:

  • आधिकारिक साइट से सीएलआई टूल डाउनलोड करें और ज़िप फ़ाइल निकालें। स्प्रिंग सेटअप में मौजूद बिन फोल्डर का उपयोग स्प्रिंग बूट एप्लिकेशन को निष्पादित करने के लिए किया जाता है।
  • चूंकि स्प्रिंग बूट सीएलआई ग्रूवी फाइलों को निष्पादित करता है, इसलिए आपको स्प्रिंग बूट एप्लिकेशन के लिए एक ग्रूवी फाइल बनाने की जरूरत है। तो, ऐसा करने के लिए, टर्मिनल खोलें और वर्तमान निर्देशिका को बिन फ़ोल्डर में बदलें।

निम्नानुसार एक नियंत्रक बनाएँ:

|_+_|

30. जेपीए और हाइबरनेट के बीच अंतर क्या हैं?

जेपीएहाइबरनेट
यह एक डेटा एक्सेस एब्स्ट्रैक्शन है जिसका उपयोग बॉयलरप्लेट कोड की मात्रा को कम करने के लिए किया जाता हैयह जावा पर्सिस्टेंस एपीआई का कार्यान्वयन है और ढीले युग्मन के लाभ प्रदान करता है

शीर्ष स्प्रिंग बूट साक्षात्कार प्रश्न और उत्तर

31. हम स्प्रिंग बूट एक्चुएटर में कस्टम एंडपॉइंट कैसे बना सकते हैं?

स्प्रिंग बूट 2.x में एक कस्टम समापन बिंदु बनाने के लिए, आप @Endpoint एनोटेशन का उपयोग कर सकते हैं।

यह सभी देखें शीर्ष 100 उत्तरदायी साक्षात्कार प्रश्न और उत्तर

स्प्रिंग बूट स्प्रिंग एमवीसी, जर्सी आदि की मदद से HTTP पर @WebEndpointor, @WebEndpointExtension का उपयोग करके एंडपॉइंट को भी उजागर करता है।

32. स्प्रिंग डेटा के बारे में आप क्या समझते हैं?

स्प्रिंग डेटा का उद्देश्य डेवलपर्स के लिए रिलेशनल और नॉन-रिलेशनल डेटाबेस, क्लाउड-आधारित डेटा सेवाओं और अन्य डेटा एक्सेस तकनीकों का उपयोग करना आसान बनाना है।

तो, मूल रूप से, यह डेटा एक्सेस के लिए आसान बनाता है और अभी भी अंतर्निहित डेटा को बरकरार रखता है।

33. स्प्रिंग बूट में ऑटो-कॉन्फ़िगरेशन के बारे में आप क्या समझते हैं?

ऑटो-कॉन्फ़िगरेशन का उपयोग एप्लिकेशन के लिए आवश्यक कॉन्फ़िगरेशन को स्वचालित रूप से कॉन्फ़िगर करने के लिए किया जाता है।

उदाहरण के लिए, यदि आपके पास एप्लिकेशन के क्लासपाथ में डेटा स्रोत बीन मौजूद है, तो यह स्वचालित रूप से जेडीबीसी टेम्पलेट को कॉन्फ़िगर करता है।

ऑटो-कॉन्फ़िगरेशन की मदद से, आप एक आसान तरीके से जावा एप्लिकेशन बना सकते हैं, क्योंकि यह स्वचालित रूप से आवश्यक बीन्स, नियंत्रकों आदि को कॉन्फ़िगर करता है।

34. @SpringBootApplication और @EnableAutoConfiguration एनोटेशन के बीच क्या अंतर हैं?

स्प्रिंगबूट आवेदनसक्षम करेंस्वत:कॉन्फ़िगरेशन
मुख्य वर्ग या बूटस्ट्रैप वर्ग में प्रयुक्तआपके प्रोजेक्ट में ऑटो-कॉन्फ़िगरेशन और कंपोनेंट स्कैनिंग को सक्षम करने के लिए उपयोग किया जाता है
यह @Configuration, @ComponentScan और @EnableAutoConfiguration एनोटेशन का एक संयोजन हैयह @Configuration और @ComponentScan एनोटेशन का एक संयोजन है

35. स्प्रिंग बूट वेब एप्लिकेशन को JAR और WAR फ़ाइलों के रूप में परिनियोजित करने के लिए क्या चरण हैं?

स्प्रिंग बूट वेब एप्लिकेशन को परिनियोजित करने के लिए, आपको बस pom.xml फ़ाइल में निम्नलिखित प्लगइन जोड़ना होगा, बस pom.xml में एक प्लगइन तत्व जोड़ें:

|_+_|

36. क्या आप लेनदेन प्रबंधन में केवल पढ़ने के लिए सत्य के रूप में उदाहरण दे सकते हैं?

एक परिदृश्य पर विचार करें, जहां आपको डेटाबेस से डेटा पढ़ना है।

उदाहरण के लिए, मान लें कि आपके पास एक ग्राहक डेटाबेस है, और आप ग्राहक विवरण जैसे ग्राहक आईडी, ग्राहक नाम और ग्राहक ईमेल आईडी पढ़ना चाहते हैं।

ऐसा करने के लिए आप लेन-देन पर केवल-पढ़ने के लिए सेट करेंगे क्योंकि हम संस्थाओं में परिवर्तनों की जांच नहीं करना चाहते हैं।

37. क्या आप समझा सकते हैं कि स्प्रिंग बूट के साथ किसी भिन्न सर्वर पर कैसे परिनियोजित किया जाए?

स्प्रिंग बूट के साथ किसी भिन्न सर्वर को परिनियोजित करने के लिए, निम्न चरणों का पालन करें:

  • परियोजना से एक युद्ध उत्पन्न करें
  • WAR फ़ाइल को अपने पसंदीदा सर्वर पर परिनियोजित करें

38. स्प्रिंग बूट के साथ कस्टम एप्लिकेशन कॉन्फ़िगरेशन को उजागर करने का सबसे अच्छा तरीका क्या है?

स्प्रिंग बूट में कस्टम एप्लिकेशन कॉन्फ़िगरेशन को उजागर करने का एक तरीका @Value एनोटेशन का उपयोग करना है।

लेकिन, इस एनोटेशन के साथ एकमात्र समस्या यह है कि सभी कॉन्फ़िगरेशन मान पूरे एप्लिकेशन में वितरित किए जाएंगे।

इसके बजाय, आप एक केंद्रीकृत दृष्टिकोण का उपयोग कर सकते हैं।

केंद्रीकृत दृष्टिकोण से, मेरा मतलब है कि आप @ConfigurationProperties का उपयोग करके एक कॉन्फ़िगरेशन घटक को निम्नानुसार परिभाषित कर सकते हैं:

|_+_|

उपरोक्त स्निपेट के अनुसार, application.properties में कॉन्फ़िगर किए गए मान इस प्रकार होंगे:

उदाहरण संख्या: 100

उदाहरण। मान: सत्य

example.msg: गतिशील संदेश

39. क्या हम स्प्रिंग बूट में एक गैर-वेब एप्लिकेशन बना सकते हैं?

हां, हम स्प्रिंग बूट के एप्लिकेशन संदर्भ बनाने के तरीके को बदलने के साथ-साथ क्लासपाथ से वेब निर्भरता को हटाकर एक गैर-वेब एप्लिकेशन बना सकते हैं।

40. MySQL या Oracle जैसे बाहरी डेटाबेस को जोड़ने के लिए क्या कदम हैं?

बाहरी डेटाबेस को जोड़ने के लिए, आपको नीचे दिए गए चरणों का पालन करना होगा:

  • MySQL कनेक्टर के लिए निर्भरता को pom.xml में जोड़कर प्रारंभ करें
  • फिर pom.xml . से H2 डिपेंडेंसी को हटा दें
  • अब, अपना MySQL डेटाबेस सेट करें और MySQL डेटाबेस से अपना कनेक्शन कॉन्फ़िगर करें
  • अपने प्रोजेक्ट को पुनरारंभ करें

शीर्ष स्प्रिंग बूट साक्षात्कार प्रश्न और उत्तर

41. गुण फ़ाइल की तुलना में YAML फ़ाइल के लाभों और स्प्रिंग बूट में YAML फ़ाइल को लोड करने के विभिन्न तरीकों का उल्लेख करें।

गुण फ़ाइल पर YAML फ़ाइल का लाभ यह है कि डेटा एक पदानुक्रमित प्रारूप में संग्रहीत किया जाता है।

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

स्प्रिंग बूट में YAML फ़ाइल लोड करने के विभिन्न तरीके इस प्रकार हैं:

  • YAML को मानचित्र के रूप में लोड करने के लिए YamLMapFactoryBean का उपयोग करें
  • YAML को गुण के रूप में लोड करने के लिए YamLPropertiesFactoryBean का उपयोग करें

42. बिना किसी कॉन्फ़िगरेशन के जेपीए के लिए हाइबरनेट को डिफ़ॉल्ट कार्यान्वयन के रूप में कैसे चुना जाता है?

जब हम स्प्रिंग बूट ऑटो कॉन्फ़िगरेशन का उपयोग करते हैं, तो स्वचालित रूप से स्प्रिंग-बूट-स्टार्टर-डेटा-जेपीए निर्भरता pom.xml फ़ाइल में जुड़ जाती है।

अब, चूंकि यह निर्भरता जेपीए और हाइबरनेट पर एक संक्रमणीय निर्भरता है, स्प्रिंग बूट स्वचालित रूप से जेपीए के लिए डिफ़ॉल्ट कार्यान्वयन के रूप में हाइबरनेट को ऑटो-कॉन्फ़िगर करता है, जब भी यह हाइबरनेट को क्लासपाथ में देखता है।

43. स्प्रिंग डेटा आरईएसटी के बारे में आप क्या समझते हैं?

स्प्रिंग डेटा REST का उपयोग स्प्रिंग डेटा रिपॉजिटरी के आसपास के RESTful संसाधनों को उजागर करने के लिए किया जाता है।

निम्नलिखित उदाहरण पर विचार करें:

|_+_|

44. लेन-देन की सीमा किस परत में शुरू होनी चाहिए?

लेन-देन की सीमा सेवा परत से शुरू होनी चाहिए क्योंकि व्यापार लेनदेन के लिए तर्क इस परत में ही मौजूद है।

45. स्प्रिंग डेटा रेस्ट के साथ पथ=नमूना, संग्रहरिसोर्सरेल=नमूना कार्य क्या करता है?

|_+_|
  • पथ - इस खंड का उपयोग उस खंड का उल्लेख करने के लिए किया जाता है जिसके तहत संसाधन का निर्यात किया जाना है।
  • collectionResourceRel: इस मान का उपयोग संग्रह संसाधन के लिंक उत्पन्न करने के लिए किया जाता है।

46. ​​कस्टम ऑटो-कॉन्फ़िगरेशन को पंजीकृत करने का तरीका बताएं।

ऑटो-कॉन्फ़िगरेशन वर्ग को पंजीकृत करने के लिए, आपको @EnableAutoConfiguration कुंजी META-INF/spring.factories फ़ाइल के अंतर्गत पूर्णतः योग्य नाम का उल्लेख करना होगा।

इसके अलावा अगर हम मावेन के साथ निर्माण करते हैं, तो इस फाइल को संसाधन/मेटा-आईएनटी निर्देशिका में रखा जाना चाहिए।

47. लॉगिंग के लिए आप Log4j को कैसे कॉन्फ़िगर करते हैं?

चूंकि स्प्रिंग बूट कॉन्फ़िगरेशन लॉग करने के लिए Log4j2 का समर्थन करता है, इसलिए आपको लॉगबैक को बाहर करना होगा और लॉगिंग के लिए Log4j2 को शामिल करना होगा। यह तभी किया जा सकता है जब आप स्टार्टर्स प्रोजेक्ट का उपयोग कर रहे हों।

48. युद्ध और एम्बेडेड कंटेनरों के बीच अंतर का उल्लेख करें।

युद्धएंबेडेड कंटेनर
स्प्रिंग बूट से युद्ध को काफी लाभ होता हैस्प्रिंग बूट का केवल एक घटक सुधार के दौरान है

49. स्प्रिंग बूट के साथ एक कस्टम JS कोड जोड़ने के लिए क्या कदम हैं?

स्प्रिंग बूट के साथ कस्टम JS कोड जोड़ने के चरण इस प्रकार हैं:

  • संसाधन फ़ोल्डर के अंतर्गत स्थिर नामक फ़ोल्डर बनाएँ
  • इस फोल्डर में आप स्टैटिक कंटेंट को फोल्डर में डाल सकते हैं

नोट: यदि ब्राउज़र एक अनधिकृत त्रुटि फेंकता है, तो आप या तो सुरक्षा को अक्षम कर देते हैं या लॉग फ़ाइल में पासवर्ड खोजते हैं, और अंत में इसे अनुरोध शीर्षलेख में भेज देते हैं।

50. एक बीन मौजूद होने पर ऑटो-कॉन्फ़िगरेशन को बैक ऑफ करने का निर्देश कैसे दें?

बीम के बाहर निकलने पर ऑटो-कॉन्फ़िगरेशन क्लास को बैक ऑफ करने का निर्देश देने के लिए, आपको @ConditionalOnMissingBean एनोटेशन का उपयोग करना होगा।

इस एनोटेशन की विशेषताएं इस प्रकार हैं:

  • मान: यह विशेषता जाँच की जाने वाली फलियों के प्रकार को संग्रहीत करती है
  • नाम: यह विशेषता जाँच की जाने वाली बीन्स के नाम को संग्रहीत करती है