Spring Boot 面试的10道基础题

本文涵盖了Spring Boot面试中的10道基础问题,包括自动配置原理、配置加载顺序、支持的嵌入式Web容器、YAML特性、配置文件区别、Spring Profiles、安全实现、CSRF攻击解释以及应用运行方式等核心知识点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. Springboot 自动配置的原理:
@SpringBootApplication注解实现,其包括 @EnableAutoConfiguration 注解  @Configuration 注解 @ConditionalOnClass 注解
它是一个配置文件,其次可以根据路径下是否这个类去自动配置。
具体的步骤:
maven 读取每个starter 中的spring.factories 文件,该文件配置了所有需要被创建在spring 容器中的bean 。

2. SpringBoot 配置的加载顺序?
Springboot 配置加载顺序的优先级是: propertiese 文件、 YAML 文件、 系统环境变量、命令行参数。

3. SpringBoot 支持那些嵌入式Web 容器?
Tomcat、 Jetty、 Undertow

4. 什么是YAML?
YAML 是一种可读的数据序列化语言,它通常用于配置文件。

5. YAML 配置的优势在哪里?
配置有序
支持数据,数组中的元素可以使基本数据类型或者对象
简洁方便

6. application.properties 与 bootstrap.properties 的区别?
bootstrap 比application 优先加载,配置在应用程序上下文的引导阶段生效,而且bootstrap 里面属性不能被覆盖;
application 用于springboot 项目的自动化配置。

7. 什么是 Spring Profiles?
Spring  Profiles 允许用户根据配置文件(dev、prod、test等等)来注册bean, 当应用程序在开发环境中运行时,只有某些bean 可以加载,而在生产环境中,某些其他
bean 可以加载,比如要求swagger 文件仅适用于测试环境并且禁用所有其他文档,可以使用配置文件来完成。

8. 如何实现Spring Boot 应用程序的安全性?
为了实现Spring Boot 的安全性,可以使用spring-boot-starter-security 依赖,添加安全配置和重写WebSecurityConfigureAdapter 配置类的方法

9. 什么是 CSRF 攻击?
  CSRF 代表跨站请求伪造,是一种攻击,迫使最终用户在当前通过身份验证的Web 应用程序上执行不需要的操作。CSRF 攻击专门针对状态改变请求,而不是数据窃取,因为攻击者
无法查看对伪造请求的响应。

10.  运行SpringBoot 有哪几种方式?
(1)用命令行打包或者放到容器中运行
(2)Maven 插件运行
(3)直接执行main 方法执行
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值