Java經(jīng)典面試題匯總:Spring Boot
1. 什么是 Spring Boot?
Spring Boot 是為 Spring 服務(wù)的,是用來簡化新 Spring 應(yīng)用的初始搭建以及開發(fā)過程的。
2. 為什么要用 Spring Boot?
- 配置簡單
- 獨(dú)立運(yùn)行
- 自動裝配
- 無代碼生成和 xml 配置
- 提供應(yīng)用監(jiān)控
- 易上手
- 提升開發(fā)效率
3. Spring Boot 核心配置文件是什么?
- spring boot 核心的兩個配置文件: bootstrap (. yml 或者 . properties):boostrap 由父 ApplicationContext 加載的,比 applicaton 優(yōu)先加載,且 boostrap 里面的屬性不能被覆蓋;
- application (. yml 或者 . properties):用于 spring boot 項(xiàng)目的自動化配置。
4. Spring Boot 提供了哪些常用的 Starter Project Options?
- spring-boot-starter:核心 starter,包括自動化配置支持,日志以及 YAMLspring-boot-starter-aop:
- Spring AOP 和 AspectJ 相關(guān)的切面編程
- starterspring-boot-starter-data-jpa:使用 Hibernate Spring Data JPA 的 starterrspring-boot-starter-jdbc:使用 HikariCP 連接池 JDBC 的 starter
- spring-boot-starter-security:使用 Spring Security 的 starter
- spring-boot-starter-test:SpringBoot 測試相關(guān)的 starter
- spring-boot-starter-web:構(gòu)建 restful、springMVC 的 web應(yīng)用程序的 starter
5. 如何快速構(gòu)建一個Spring Boot項(xiàng)目?
Spring-initializr
Aliyun Java initializr
6. Spring Boot默認(rèn)的內(nèi)置Web服務(wù)器是什么?
Tomcat
7. Spring Boot常用注解及其作用?
- @SpringBootApplication: 這個注解是Spring Boot最核心的注解,用在 Spring Boot的主類上,標(biāo)識這是一個 Spring Boot 應(yīng)用,用來開啟 Spring Boot 的各項(xiàng)能力。實(shí)際上這個注解是@Configuration,@EnableAutoConfiguration,@ComponentScan三個注解的組合。由于這些注解一般都是一起使用,所以Spring Boot提供了一個統(tǒng)一的注解@SpringBootApplication。
- @EnableAutoConfiguration: 允許 Spring Boot 自動配置注解,開啟這個注解之后,Spring Boot 就能根據(jù)當(dāng)前類路徑下的包或者類來配置 Spring Bean。
- @ConfigurationProperties: 通過它可以把properties或者yml配置中的屬性直接轉(zhuǎn)成對象(從springboot的標(biāo)準(zhǔn)配置文件yml/properties中讀取屬性賦值給對象
- @EnableConfigurationProperties: 使用到 @ConfigurationProperties 注解的類生效。
- @SpringBootConfiguration: 繼承自@Configuration,二者功能也一致,標(biāo)注當(dāng)前類是配置類,并會將當(dāng)前類內(nèi)聲明的一個或多個以@Bean注解標(biāo)記的方法的實(shí)例納入到spring容器中,并且實(shí)例名就是方法名。
8. 如何使用配置文件通過 Spring Boot 配置特定環(huán)境的配置?
在application.properties配置文件中添加:spring.profiles.active = dev,并且添加application-dev.properties文件 ,多個環(huán)境以此類推添加application-prod.properties,并且修改active對應(yīng)的值。
總結(jié)
本篇文章就到這里了,希望能給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
java實(shí)現(xiàn)cassandra高級操作之分頁實(shí)例(有項(xiàng)目具體需求)
這篇文章主要介紹了java實(shí)現(xiàn)cassandra高級操作之分頁實(shí)例(有項(xiàng)目具體需求),具有一定的參考價值,感興趣的小伙伴們可以參考一下。2017-04-04Java中的CyclicBarrier循環(huán)柵欄深入解析
這篇文章主要介紹了Java中的CyclicBarrier循環(huán)柵欄深入解析,CycleBarrier 它就相當(dāng)于是一個柵欄,所有線程在到達(dá)柵欄后都需要等待其他線程,等所有線程都到達(dá)后,再一起通過,需要的朋友可以參考下2023-12-12SpringBoot概述及在idea中創(chuàng)建方式
SpringBoot提供了一種快速使用Spring的方式,基于約定大于配置的思想,可以讓開發(fā)人員不必在配置與邏輯業(yè)務(wù)之間進(jìn)行思維的切換,這篇文章主要介紹了SpringBoot概述及在idea中創(chuàng)建方式,需要的朋友可以參考下2022-09-09SpringBoot啟動報(bào)錯Failed to determine a suitable driver class
這篇文章主要介紹了SpringBoot啟動報(bào)錯Failed to determine a suitable driver class,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-05-05詳解MyBatis-Plus Wrapper條件構(gòu)造器查詢大全
這篇文章主要介紹了詳解MyBatis-Plus Wrapper條件構(gòu)造器查詢大全,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08