SpringBoot 面试题, 什么是 Spring Boot?
SpringBoot 面试题, 什么是 Spring Boot?
QA
Step 1
Q:: 什么是Spring Boot?
A:: Spring Boot是由Pivotal团队提供的一个新框架,旨在简化Spring应用程序的初始设置和开发过程。它可以用来创建独立的、生产级的Spring应用程序,只需要很少的Spring配置。Spring Boot提供了一系列开箱即用的特性,比如嵌入式的Web服务器、默认的配置以及与Spring生态系统的无缝集成。
Step 2
Q:: Spring Boot的核心特性是什么?
A:: Spring Boot的核心特性包括自动配置(Auto-Configuration)、独立运行(Standalone)、生产就绪(Production-
Ready)和广泛的插件支持(Extensive Plugin Support)。自动配置可以自动猜测项目所需的配置并进行设置;独立运行允许应用程序使用嵌入式服务器运行,无需外部服务器;生产就绪包括提供监控、度量和外部化配置等功能;插件支持使得Spring Boot与Maven和Gradle等构建工具无缝集成。
Step 3
Q:: Spring Boot如何实现自动配置?
A:: Spring Boot通过@Conditional注解和@Configuration类来实现自动配置。@Conditional注解允许在特定条件下才创建一个bean,而这些条件可以基于类路径中的存在、Java系统属性等。Spring Boot提供了很多预定义的@
Conditional注解,这些注解用于自动配置。
Step 4
Q:: 如何在Spring Boot中创建一个RESTful Web服务?
A:: 在Spring Boot中创建一个RESTful Web服务非常简单。你只需要在你的Spring Boot应用程序中添加一个控制器类,并在这个类上使用@RestController注解,在方法上使用@RequestMapping注解(例如@GetMapping、@
PostMapping等)来映射HTTP请求。例如:
@RestController
public class MyController {
@GetMapping("/hello")
public String hello() {
return "Hello, World!";
}
}
Step 5
Q:: Spring Boot应用的主要配置文件是什么?
A:: Spring Boot应用的主要配置文件是application.properties或application.yml文件。这个文件用于定义应用程序的配置参数,比如数据库连接信息、端口号、日志级别等。可以使用Spring的@Value注解或@
ConfigurationProperties注解将配置文件中的值注入到Spring Bean中。
Step 6
Q:: 如何在Spring Boot中处理异常?
A:: 在Spring Boot中,可以使用@ControllerAdvice和@ExceptionHandler注解来集中处理异常。@ControllerAdvice注解的类可以包含一个或多个@
ExceptionHandler注解的方法,用于处理特定类型的异常。例如:
@ControllerAdvice
public class GlobalExceptionHandler {
@ExceptionHandler(Exception.class)
public ResponseEntity<String> handleException(Exception e) {
return new ResponseEntity<>(e.getMessage(), HttpStatus.INTERNAL_SERVER_ERROR);
}
}