在本文中,我們探討了針對經驗豐富或新手的Spring Boot面試問答。我們正在嘗試分享經驗和知識,以幫助您提升作爲Spring Boot Developer的職業。
- 問:什麼是Spring Boot?
- 問:Spring Boot的優點/好處是什麼?
- 問:Spring Boot的功能是什麼?
- 問:如何使用Spring Initializr創建Spring Boot應用程序?
- 問:什麼是Spring Boot依賴管理?
- 問:什麼是Spring Boot Starters?
- 問:Spring和Spring Boot有什麼區別?
- 問:爲什麼將Spring Boot用於微服務?
- 問:Tomcat如何在Spring Boot中嵌入工作?
- 問:Spring Boot是否使用Spring MVC?
- 問:Spring MVC(@Controller和Spring RESTful(@RestController)Web服務)之間有什麼區別?
- 問:Spring中的@autowire是什麼?
- 問:Spring Boot中的@ResponseBody是什麼?
- 問:Spring Boot中的@RequestMapping是什麼?
- 問:Spring的@qualifier是什麼?
- 問:什麼是Spring Profiles?如何使用Spring Boot實施它?
問:什麼是Spring Boot?
答:
Spring Boot是Pivotal開發的開源框架,用於構建可用於生產環境的獨立Spring應用程序。
問:Spring的優點/優點是什麼?
答:
- 基於Pojo的輕量級框架
- 支持有損耦合
- 聲明式編程
- 同時支持XML /註釋配置
問:Spring Boot的優點/好處是什麼?
答:
- 可以創建獨立的應用程序。
- 消除了XML配置。
- 生產就緒的應用程序/功能
- 提供Spring Boot Initializer項目以從新應用程序開始
- 提供特殊的啓動程序(spring-boot-starter-parent),還提供了依賴項管理部分,該版本消除了要定義的版本標籤。
問:Spring Boot的功能是什麼?
答:
- 自動配置
- Spring Boot初始化器
- 入門級POM
- Spring Boot CLI
- 執行器
問:如何使用Spring Initializr創建Spring Boot應用程序?
答:
- 在官方網站(https://start.spring.io/)上訪問Spring。
- 選擇Maven項目,添加依賴項
- 單擊生成項目按鈕。
問:什麼是Spring Boot依賴管理?
答:
Spring Boot提供了依賴項管理,通過它不需要爲任何依賴項提供版本,但是如果您願意,可以提供。它還提供了可以與Spring Boot一起使用的spring模塊,作爲第三方庫的精煉列表。當您升級Spring Boot時,Spring Boot會自動升級所有依賴項。
問:什麼是Spring Boot Starters?
答:
Spring Boot提供了許多內置啓動器,這些開發器使開發變得更容易,更快速。入門程序是一組依賴項描述符,我們可以將其包含在應用程序中。例如,spring-boot-starter-data-jpa,spring-boot-starter-actuator,spring-boot-starter-logging
問:Spring和Spring Boot有什麼區別?
答:
Spring和Spring Boot應用程序的自舉主要區別在於servlet。Spring使用web.xml的bootstrap入口點或SpringServletContainerInitializer。另一方面,Spring Boot僅使用Servlet 3功能來進行引導。應用。
問:爲什麼將Spring Boot用於微服務?
答:
Spring Boot可以快速構建可用於生產環境的應用程序,並提供非功能性功能。它有助於從外部配置組件,幫助各種組件。它具有帶有易於部署的容器的嵌入式服務器。
問:Tomcat如何在Spring Boot中嵌入工作?
答:
Spring Boot包含一個完整的Tomcat,因此無需在外部安裝Tomcat。它建立一個具有所有必要需求的-jar。
java -jar spring-boot-sample.jar
您可以在外部使用Tomcat以外的服務器。
問:Spring Boot是否使用Spring MVC?
答:
如果您希望使用Spring構建Web應用程序,則可以使用Spring MVC。但是,對於準備就緒的應用程序,要使功能最小化,易於監視和管理應用程序,可以使用Spring Boot。Spring Boot可以使用Spring MVC並對其進行自動配置。
問:是什麼的Spring MVC(@Controller和Spring的RESTful(@RestController)Web服務之間的區別?
答:
Spring的基於MVC的註釋框架簡化了創建RESTful Web服務的過程。傳統Spring MVC控制器和RESTful Web服務控制器之間的主要區別在於如何創建HTTP響應主體。
問:Spring中的@autowire是什麼?
答:
Spring框架自動裝配功能允許您顯式添加對象的依賴關係。setter或構造函數注入在內部使用。無法使用自動裝配來注入基本值和字符串值。它僅通過引用起作用。
問:Spring Boot中的@ResponseBody是什麼?
答:
使用@ResponseBody批註,Spring Boot Web應用程序以JSON格式發送數據。
問:Spring Boot中的@RequestMapping是什麼?
答:
註釋 用於將Web請求映射到不同的處理程序類和/或處理程序方法。
org.springframework.web.bind.annotation.RequestMapping
問:春季的@qualifier是什麼?
答:
當您創建多個同類型且具有僅要連接其中一個屬性的bean時,可能會出現這種情況。在這種情況下,通過指定將要連接的確切bean,可以將@Qualifier註釋與@Autowired一起使用以消除歧義。
問:什麼是Spring Profiles?如何使用Spring Boot實施它?
答:
Spring Profiles允許用戶根據配置文件(開發,測試,產品等)註冊bean。因此,當應用程序在DEVELOPMENT中運行時,只能加載某些bean,而在PRODUCTION中時,可以加載某些其他bean。假設我們的要求是僅對QA環境啓用Swagger文檔,對所有其他環境禁用Swagger文檔。可以使用“個人檔案”來完成。Spring Boot使使用Profiles非常容易。