Spring Boot 面试问题

这是为初学者和初级开发者(0-3年经验)准备的2024-2025版终极汇总清单------88个Spring Boot面试问题全集

涵盖了TCS、Infosys、Cognizant、Accenture、Capgemini、Wipro、Deloitte、IBM、Mindtree、LTIMindtree、Tech Mahindra、HCL等公司提出的所有问题。

序号 问题
1 什么是 Spring Boot?
2 Spring Boot 相较于 Spring Framework 有哪些优势?
3 Spring Boot 中的自动配置是什么?
4 什么是 Spring Boot Starters?列举一些重要的 starter。
5 @SpringBootApplication 注解的作用是什么?
6 @SpringBootApplication 内部包含哪三个主要注解?
7 解释 SpringBootApplication 的 main() 方法的作用。
8 什么是 application.propertiesapplication.yml
9 如何在 Spring Boot 中更改默认端口?
10 application.propertiesapplication.yml 之间的区别?
11 @RestController 注解是什么?
12 @Controller@RestController 的区别?
13 什么是 @RequestMapping
14 @GetMapping@PostMapping@PutMapping@DeleteMapping 是什么?
15 @PathVariable@RequestParam 的区别?
16 如何在 Spring Boot 中返回 JSON 响应?
17 什么是 Spring Boot Actuator?如何启用它?
18 列举一些重要的 Actuator 端点。
19 如何启用所有的 Actuator 端点?
20 @Component@Service@Repository 注解的用途?
21 什么是依赖注入?Spring Boot 是如何实现的?
22 @Autowired 是什么?我们可以在哪里使用它?
23 @Component@Bean 的区别?
24 @Configuration 注解是什么?
25 Spring Boot 中的 @Profile 是什么?如何使用?
26 如何创建多个配置文件(dev、prod、test)?
27 什么是 Spring Boot DevTools?它为什么有用?
28 @Entity 注解的用途是什么?
29 什么是 JPA 和 Hibernate?
30 什么是 Spring Data JPA?
31 spring-boot-starter-data-jpa 的作用是什么?
32 如何使用 application.properties 连接数据库?
33 Spring Boot 中默认的嵌入式数据库是什么?
34 列举你使用过的不同 Spring Boot Starters。
35 什么是 spring-boot-starter-web
36 什么是 spring-boot-starter-test?它包含哪些库?
37 @SpringBootTest 注解是什么?
38 @MockBean 的用途是什么?
39 如何在 Spring Boot 中全局处理异常?
40 什么是 @ControllerAdvice@ExceptionHandler
41 如何在 Spring Boot 中创建自定义异常?
42 @ResponseStatus@ExceptionHandler 的区别?
43 Spring Boot 中的日志记录是什么?如何更改日志级别?
44 Spring Boot 中默认的日志框架是什么?
45 如何在 Spring Boot 中外部化配置?
46 什么是 Spring Boot CLI?
47 如何创建可执行 JAR?
48 Spring MVC 和 Spring Boot 的区别?
49 pom.xmlspring-boot-starter-parent 的作用是什么?
50 spring-boot-starter-parent 和导入 BOM 的区别?
51 如何覆盖 spring-boot-starter-parent 的属性?
52 @Bean@Component?何时使用哪个?
53 什么是 @Qualifier?举例说明。
54 @Primary@Qualifier 的区别?
55 分步解释 Spring Boot 的启动过程。
56 什么是嵌入式 Tomcat?为什么它是 Spring Boot 的默认选项?
57 如何将嵌入式服务器更改为 Jetty 或 Undertow?
58 REST 中受检查异常和非受检查异常的区别?
59 什么是 @ResponseEntity?为什么以及何时使用它?
60 如何在 Spring Boot 中进行验证?(@Valid@Validated
61 application-dev.ymlapplication-prod.yml 是什么?Spring 如何选取它们?
62 什么是 Spring Boot 优雅关机?如何启用?
63 @ConfigurationProperties@Value 的区别?
64 Spring Boot 3 的主要变化有哪些?(Java 17, Jakarta EE 等)
65 javax.*jakarta.* 包的区别?
66 @Component@Service@Repository@Controller 之间的确切区别?
67 为什么 @Repository 将受检查异常转换为非受检查异常?
68 什么是 @Lazy 注解?
69 构造器注入 vs 字段注入 vs Setter注入 ------ Spring Boot 3 中推荐哪种?
70 application.ymlbootstrap.yml 的区别?
71 如何保护 Spring Boot 应用程序?(至少 3 种方式)
72 什么是 spring-boot-starter-security
73 Spring Boot 3 中的 @EnableMethodSecurity 是什么?
74 如何创建自定义自动配置?
75 spring.factories / spring-boot-autoconfigure-META-INF 的作用是什么?
76 Actuator + Micrometer + Prometheus + Grafana 是什么?
77 如何创建自定义健康指示器?
78 /actuator/health/actuator/info 的区别?
79 如何从命令行运行特定 profile?
80 什么是 @ConditionalOnMissingBean?举例说明?
81 你能在不使用任何 starter 的情况下运行 Spring Boot 吗?
82 SpringApplication.run()new SpringApplication().run() 的区别?
83 如何禁用 Spring Boot 横幅?(3 种方式)
84 @EntityScan@ComponentScan 的区别?
85 Spring Boot 如何支持响应式编程?(WebFlux 与 MVC)
86 什么是 @EnableAutoConfiguration
87 如何禁用特定的自动配置?
88 什么是 Spring Initializr?(start.spring.io

【注】本文译自:Spring Boot Interview Question - DEV Community

相关推荐
涡能增压发动积19 小时前
同样的代码循环 10次正常 循环 100次就抛异常?自定义 Comparator 的 bug 让我丢尽颜面
后端
Wenweno0o19 小时前
0基础Go语言Eino框架智能体实战-chatModel
开发语言·后端·golang
swg32132119 小时前
Spring Boot 3.X Oauth2 认证服务与资源服务
java·spring boot·后端
tyung19 小时前
一个 main.go 搞定协作白板:你画一笔,全世界都看见
后端·go
gelald20 小时前
SpringBoot - 自动配置原理
java·spring boot·后端
@yanyu66620 小时前
07-引入element布局及spring boot完善后端
javascript·vue.js·spring boot
殷紫川20 小时前
深入拆解 Java 内存模型:从原子性、可见性到有序性,彻底搞懂 happen-before 规则
java·后端
元宝骑士20 小时前
FIND_IN_SET使用指南:场景、优缺点与MySQL优化策略
后端·mysql
风止何安啊20 小时前
为什么要有 TypeScript?让 JS 告别 “薛定谔的 Bug”
前端·javascript·面试
用户319523703477120 小时前
记一次 PostgreSQL WAL 日志撑爆磁盘的排查
后端