前言
我們已經學過Spring,SpringMVC,SpringBoot了,那這三者之間有沒有聯系或者區別呢?
spring是一個一站式的輕量級java開發的框架,那我們剛開始使用spring的時候,是需要配置很多的配置文件以及繁瑣的過程才可以使用,那對于程序員來說開發就比較頭疼了,spring的核心主要是控制反轉(IOC)和面向切面(AOP)
springMVC是在spring框架基礎之上的一個MVC框架,主要處理的就是web開發路徑的映射以及視圖渲染,屬于spring框架中WEB層開發的一部分
springBoot框架是對spring框架進行了配置的簡化,相對于spring MVC來說,更專注于開發微服務后臺接口,不開發前端視圖,springBoot是基于spring框架的快速開發工具,能夠自動配置spring和第三方庫,簡化了spring開發和部署,springboot是spring框架的擴展,springboot使用spring的核心功能,但是更加簡單、快速、靈活,提供了自動化配置,嵌入式web服務器,監控,健康檢查,目標就是快速創建spring應用,并盡可能的減少配置
下面我們來了解一下springboot常見的面試題
1、Spring Boot 如何實現多環境配置?
Spring Boot 可以通過多個配置文件來支持多環境配置,例如
application-dev.properties、
application-test.properties、
application-prod.properties 等。
開發人員可以在不同的配置文件中定義不同的配置項,然后在 application.properties 或 application.yml 中指定當前環境的配置文件名,例如 spring.profiles.active=dev。這樣在啟動應用時,Spring Boot 會自動加載對應的配置文件,并使用其中的配置項。
2、Spring Boot 中的 Starter 是什么?
Spring Boot Starter 是一系列預定義的依賴關系,每個 Starter 都包含了一組相關的依賴關系,可以快速集成一個特定的功能模塊,如 Spring Boot Starter Web、Spring Boot Starter Data JPA、Spring Boot Starter Test 等。
3、Spring Boot 如何實現熱部署?
在項目中引入 Spring Boot DevTools依賴,并在 IDE 中開啟自動重啟,這樣在修改代碼后,應用會自動重啟,從而實現熱部署
4、Spring Boot 如何自動配置?
讀取 classpath 下的 META-INF/spring.factories 文件,該文件中定義了一系列自動配置類,Spring Boot 會自動掃描這些類并自動配置相應的組件。如果需要定制配置,可以使用 application.properties 或 application.yml 文件進行覆蓋。?
5、什么是 Spring Boot?
Spring Boot 是一個基于 Spring 框架,并提供自動化配置、嵌入式 Web 服務器、監控、健康檢查等功能的框架。其目標是快速創建 Spring 應用,并盡可能地減少配置。
6、SpringBoot如何處理事務?
Spring Boot 提供了非常方便的方式來整合事務,開發者只需要添加相應的依賴,然后在需要事務管理的方法上添加 @Transactional 注解即可。
以下是整合事務的步驟:
添加 Spring Boot Starter JDBC 依賴,這兩個依賴中都包含了 Spring 的事務管理功能。
在 application.properties 或 application.yml 中配置數據源的信息,如數據庫 URL、用戶名、密碼等。
在需要事務管理的方法上添加 @Transactional 注解,表示該方法需要被 Spring 事務管理器所管理。
7、Spring Boot如何處理配置文件?
Spring Boot使用application.properties或application.yml文件來進行配置,這些文件可以放在classpath下的/config目錄中,或者在命令行參數中指定。Spring Boot支持很多種配置方式,如使用環境變量、屬性文件、命令行參數等。
8、Spring Boot中的自動配置是什么?
Spring Boot中的自動配置是指根據應用程序的依賴自動配置Spring和第三方庫的行為。當應用程序引入某個庫時,Spring Boot會自動配置相關的Bean和設置,以使這個庫能夠在應用程序中使用。