1. 什么是 Spring Boot?

Spring Boot 是为 Spring 服务的,是用来简化新 Spring 应用的初始搭建以及开发过程的。

2. 为什么要用 Spring Boot?

  • 配置简单
  • 独立运行
  • 自动装配
  • 无代码生成和 xml 配置
  • 提供应用监控
  • 易上手
  • 提升开发效率

3. Spring Boot 核心配置文件是什么?

  •  spring boot 核心的两个配置文件: bootstrap (. yml 或者 . properties):boostrap 由父 ApplicationContext 加载的,比 applicaton 优先加载,且 boostrap 里面的属性不能被覆盖;
  • application (. yml 或者 . properties):用于 spring boot 项目的自动化配置。

4. Spring Boot 提供了哪些常用的 Starter Project Options?

  • spring-boot-starter:核心 starter,包括自动化配置支持,日志以及 YAMLspring-boot-starter-aop:
  • Spring AOP 和 AspectJ 相关的切面编程
  • 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 测试相关的 starter
  • spring-boot-starter-web:构建 restful、springMVC 的 web应用程序的 starter

5. 如何快速构建一个Spring Boot项目?

Spring-initializr

Aliyun Java initializr

6. Spring Boot默认的内置Web服务器是什么?

Tomcat

7. Spring Boot常用注解及其作用?

  • @SpringBootApplication: 这个注解是Spring Boot最核心的注解,用在 Spring Boot的主类上,标识这是一个 Spring Boot 应用,用来开启 Spring Boot [email protected],@EnableAutoConfiguration,@ComponentScan三个注解的组合。由于这些注解一般都是一起使用,所以Spring [email protected]
  • @EnableAutoConfiguration: 允许 Spring Boot 自动配置注解,开启这个注解之后,Spring Boot 就能根据当前类路径下的包或者类来配置 Spring Bean。
  • @ConfigurationProperties: 通过它可以把properties或者yml配置中的属性直接转成对象(从springboot的标准配置文件yml/properties中读取属性赋值给对象
  • @EnableConfigurationProperties:[email protected] 注解的类生效。
  • @SpringBootConfiguration:[email protected],二者功能也一致,标注当前类是配置类,[email protected]的方法的实例纳入到spring容器中,并且实例名就是方法名。

8. 如何使用配置文件通过 Spring Boot 配置特定环境的配置?

在application.properties配置文件中添加:spring.profiles.active = dev,并且添加application-dev.properties文件 ,多个环境以此类推添加application-prod.properties,并且修改active对应的值。