前言
Spring Boot 是一套快速开发框架,随着微服务架构应用不断普及,Spring Boot的研发技术的掌握已经成为研发人员必会技能。 与此同时,Spring Boot 开源生态建设能力非常强大,提供了很多应用组件,让Spring Boot 有丰富的三方开源软件的使用。
基于上面的情况,Spring Boot 基本上成为了大中型互联网公司面试的必考题。
本文根据公司的一些面试题库的梳理,将核心的知识提供分享给大家。
本文主要包含知识点 30 道,基本可以覆盖常见的 Spring Boot 面试题目。
希望对大家接下来的面试有全面的帮助。
今天我们就不客套了,直接开始!
30个知识点
1、什么是 Spring Boot?
2、Spring Boot 有哪些优点?
3、SpringBoot启动方式
4、SpringBoot中用那些注解?
5、SpringBoot热部署使用什么?
6、热部署原理与热加载区别是什么?
7、SpringBoot如何实现打包?
8、SpringBoot性能如何优化?
9、SpringBoot2.0新特性
10、SpringBoot执行流程
11、如何使用 Spring Boot 实现分页和排序?
12、什么是 Swagger? 你用 Spring Boot 实现了它吗?
13、什么是 Spring Profiles?
14、什么是 Spring Batch?
15、什么是 FreeMarker 模板?
16、如何使用 Spring Boot 实现异常处理?
17、你使用了哪些 starter maven 依赖项?
18、什么是 CSRF 攻击?
19、什么是 WebSockets?
20、什么是 AOP?
21、什么是 Apache Kafka?
22、我们如何监视所有 Spring Boot 微服务?
23、Spring Boot、Spring MVC 和 Spring 有什么区别?
24、什么是自动配置?
25、什么是 Spring Boot Stater ?
26、你能否举一个例子来解释更多 Staters 的内容?
27、创建一个 Spring Boot Project 的最简单的方法是什么?
28、配置文件的需求是什么?
29、你能否举一个以 ReadOnly 为事务管理的例子?
30、发布 Spring Boot 用户应用程序自定义配置的最好方法是什么?
1、什么是 Spring Boot?
多年来,随着新功能的增加,spring 变得越来越复杂。 只需访问 https://spring.io/projects 页面,我们就会看到可以在我们的应用程序中使用的所有 Spring 项目的不同功能。
如果必须启动一个新的 Spring 项目,我们必须添加构建路径或添加 Maven 依赖关系,配置应用程序服务器,添加 spring 配置。 因此,开始一个新的 spring 项目需要很多努力,因为我们现在必须从头开始做所有事情。
Spring Boot 是解决这个问题的方法。 Spring Boot 已经建立在现有 spring 框架之上。 使用spring 启动,我们避免了之前我们必须做的所有样板代码和配置。 因此,Spring Boot 可以帮助我们以最少的工作量,更加健壮地使用现有的 Spring 功能。
2、Spring Boot 有哪些优点?
Spring Boot 的优点有:
减少开发,测试时间和努力。
使用 JavaConfig 有助于避免使用 XML。
避免大量的 Maven 导入和各种版本冲突。
提供意见发展方法。
通过提供默认值快速开始开发。
没有单独的 Web 服务器需要。 这意味着你不再需要启动 Tomcat,Glassfish 或其他任何东西。 需要更少的配置 因为没有 web.xml 文件。 只需添加用@ Configuration 注释的类,然后添加用@Bean 注释的方法,Spring 将自动加载对象并像以前一样对其进行管理。
你甚至可以将@Autowired 添加到 bean 方法中,以使 Spring 自动装入需要的依赖关系中。 基于环境的配置 使用这些属性,您可以将您正在使用的环境传递到应用程序: - Dspring.profiles.active = {enviornment}。 在加载主应用程序属性文件后,Spring 将在 (application{environment} .properties)中加载后续的应用程序属性文件。
3、SpringBoot启动方式