Spring Boot 面试题基础

Spring Boot是一个基于 Java 的开源框架,它简化了创建独立的、生产级的、基于 Spring 的应用程序的过程,这些应用程序可以轻松部署。它提供了一套全面的功能和工具,用于以最少的设置和配置快速构建企业级 Web 应用程序。

用于快速应用程序开发(构建独立微服务)的 spring 框架。它额外支持自动配置和嵌入式应用服务器,如 tomcat、jetty 等。

使它与众不同的 Spring Boot 特性?

  • 使用最少的配置创建独立的 spring 应用程序。
  • 它嵌入了 tomcat,jetty,这使得它只需编写代码并运行应用程序。
  • 提供生产就绪的功能,例如指标、健康检查和外部化配置。
  • 绝对不需要 XML 配置。

Spring Boot 面试题基础_第1张图片

1、使用Spring Boot有什么优势?

Spring Boot 的优点如下:

  • 易于理解和开发 spring 应用程序。
  • Spring Boot 只不过是一个现有的框架,添加了一个嵌入式 HTTP 服务器和注释配置,这使得它更容易理解并加快开发过程。
  • 提高生产力并缩短开发时间。
  • 最低配置。
  • 我们不需要编写任何 XML 配置,只需要一些注解即可进行配置。

2、Spring Boot关键组件有哪些?

以下是 spring-boot 的四个关键组件:

  • Spring Boot auto-configuration.  Spring Boot 自动配置。
  • Spring Boot CLI.  Spring Boot命令行。
  • Spring Boot starter POMs.  Spring Boot 启动器 POM。
  • Spring Boot Actuators.  Spring Boot 启动执行器。

3. 为什么 Spring Boot 而不是 Spring?

以下是 spring boot 提供但 spring 不提供的一些关键点:

  • 起动器POM。
  • 版本管理。
  • 自动配置。
  • 组件扫描。
  • 嵌入式服务器。
  • 内存数据库。
  • 执行器

Spring Boot 为用户简化了 spring 特性:

Spring Boot 面试题基础_第2张图片

4、Spring boot模块的starter依赖是什么?

Spring boot 提供了很多 starter 依赖,这里是最常用的——

  • 数据 JPA 启动器。
  • 测试启动器。
  • 安全启动器。
  • 网络启动器。
  • 邮件启动器。
  • Thymeleaf启动器

5. Spring Boot 是如何工作的?

Spring Boot 会根据您使用注解添加到项目中的依赖项自动配置您的应用程序。spring boot 应用程序的入口点是包含@SpringBootApplication 注解和main 方法的类。

Spring Boot 使用@ComponentScan 注解自动扫描项目中包含的所有组件。

6、@SpringBootApplication注解在内部做了什么?

@SpringBootApplication 注解等同于使用带有默认属性的@Configuration、@EnableAutoConfiguration 和@ComponentScan。Spring Boot 使开发人员能够使用单个注解而不是使用多个注解。但是,正如我们所知,Spring 提供了松散耦合的特性,我们可以根据项目需要将其用于每个注释。

7. 在类文件中使用@ComponentScan 的目的是什么?

Spring Boot 应用程序会在应用程序初始化时扫描所有 bean 和包声明。您需要为您的类文件添加 @ComponentScan 注释以扫描添加到项目中的组件。

8. spring boot 应用程序如何启动?

就像任何其他 Java 程序一样,Spring Boot 应用程序必须有一个 main 方法。此方法用作入口点,它调用 SpringApplication#run 方法来引导应用程序。

@SpringBootApplication 
public class MyApplication { 
   
       public static void main(String[] args) {    
    
             SpringApplication.run(MyApplication.class);        
               // other statements     
       } 
}

9. 什么是启动器依赖项?

Spring boot starter 是一个 Maven 模板,其中包含启动特定功能所需的所有相关传递依赖项的集合。
就像我们需要导入 spring-boot-starter-web 依赖项来创建 Web 应用程序一样。


 org.springframework.boot
 spring-boot-starter-web 

10.什么是Spring Initializer?

Spring Initializer 是一个 Web 应用程序,可帮助您创建一个初始的 Spring Boot 项目结构,并提供一个 maven 或 gradle 文件来构建您的代码。它解决了从头开始项目时设置框架的问题。

11. 什么是 Spring Boot CLI,它有什么好处?

Spring Boot CLI 是一个命令行界面,允许您使用 Groovy 创建基于 spring 的 java 应用程序。

示例:您不需要创建 getter 和 setter 方法或访问修饰符、return 语句。如果您使用 JDBC 模板,它会自动为您加载。

12. 最常用的 Spring Boot CLI 命令是什么?

Spring Boot CLI(命令行界面)提供了几个命令来创建、运行、测试和打包 Spring Boot 应用程序。以下是一些最常用的 Spring Boot CLI 命令:

spring init:该命令用于初始化一个新的Spring Boot项目。它使用指定的依赖项创建一个新的 Spring Boot 应用程序并生成所需的项目结构。

spring run:此命令用于运行 Spring Boot 应用程序。它启动嵌入式 Tomcat 服务器并部署应用程序。

spring test:此命令用于在 Spring Boot 应用程序中运行单元测试。

spring jar:此命令用于将 Spring Boot 应用程序打包成独立的可执行 JAR 文件。

spring install:此命令用于安装 Spring Boot 应用程序作为命令行工具。

spring help:此命令显示可用的 Spring Boot CLI 命令列表及其用法。

spring shell:此命令用于启动 Spring Shell。Spring Shell 是一个交互式 shell,它提供用于与 Spring Boot 应用程序交互的命令行界面。

spring stop:此命令用于停止正在运行的 Spring Boot 应用程序。

spring restart:此命令用于重新启动正在运行的 Spring Boot 应用程序。

这些是一些最常见的Spring Boot CLI命令。使用spring帮助命令可以了解更多可用的命令。

你可能感兴趣的:(java面试题,java学习,spring,boot,spring,java)