SpringBoot面试题整理(一)

500 阅读2分钟

「这是我参与11月更文挑战的第6天,活动详情查看:2021最后一次更文挑战」。

1.什么是SpringBoot,优点和缺点?

SpringBoot用来简化spring的应用开发,约定大于配置,去繁从简。SpringBoot功用众多,其中最主要的功能就是自动化配置,简化开化。

1)优点 快速构建项目。 对主流开发框架的无配置集成。 项目可独立运行,无须外部依赖Servlet容器。 提供运行时的应用监控。 极大地提高了开发、部署效率。 与云计算的天然集成。

2)缺点 版本迭代速度很快,一些模块改动很大。

由于不用自己做配置,报错时很难定位。 网上现成的解决方案比较少。

2.描述SpringBoot中 @Configuration @Bean @ComponentScan @PropertySource @Value注解作用

@Configuration 告诉Spring这是一个配置类,配置类===配置文件

@Bean 给容器注入一个bean,类型为返回值类型,id默认是用方法名作为id

@ComponentScan value:指定要扫描的包

@PropertySource 注解用于导入外部配置文件,以使用导入的属性

@Value 注解用于为属性赋值,可以赋值为常量,或者使用SpEL表达式,也可以使用${}去上面配置类中导入的配置文件中的属性

3.Spring Boot、Spring MVC 和 Spring 有什么区别

Spring MVC和Spring Boot都属于Spring

Spring MVC 是基于Spring的一个 MVC 框架 Spring Boot 是基于Spring的一套快速开发整合包 Spring是核心,提供了基础功能。

Spring 就像一个大家族,有众多衍生产品例如 Boot,Security,JPA等等。但他们的基础都是Spring 的 IOC 和 AOP,IOC提供了依赖注入的容器,而AOP解决了面向切面的编程,然后在此两者的基础上实现了其他衍生产品的高级功能;

4.什么是yml? 语法格式(说3点)

YAML是一个类似 XML、JSON 的标记性语言。YAML 强调以数据为中心,并不是以标识语言为重点。因而 YAML 本身的定义比较简单,号称“一种人性化的数据格式语言”。

  1. k: v:字面直接来写;
  2. 字符串默认不用加上单引号或者双引号;
  3. "":双引号;不会转义字符串里面的特殊字符;特殊字符会作为本身想表示的意思
  4. '':单引号;会转义特殊字符,特殊字符终只是一个普通的字符串数据

5.Spring Boot 的核心注解是哪个?主要由哪几个注解组成的?

SpringBoot的核心注解是@SpringBootApplication由以下3个注解组成:

@SpringBootConfiguration:它组合了Configuration注解实现了 配置文件的功能。

@EnableAutoConfiguration:打开自动配置功能,也可以关闭某个指定的自动配置选项 如关闭数据源自动配置功能: @SpringBootApplication(exclude = { DataSourceAutoConfiguration.class })。

@ComponentScan:Spring扫描组件。