1
- 什么是SpringBoot?
SpringBoot是 Spring 开源组织下的子项目,是Spring组件一站式解决方案,主要是简化了使用Spring的难度,简省了繁重的配置,提供了各种启动器,开发者能快速上手。
2
- SpringBoot有哪些优点?
减少开发,测试时间。
使用JavaConfig有助于避免使用XML。
避免大量的Maven导入和各种版本冲突。
提供意见发展方法。
通过提供默认值快速开始开发。
没有单独的Web服务器需要。这意味着你不再需要启动Tomcat,Glassfish或其他任何东西。
需要更少的配置 因为没有web.xml文件。只需添加用@ Configuration注释的类,然后添加用@Bean注释的方法,Spring将自动加载对象并像以前一样对其进行管理。您甚至可以将@Autowired添加到bean方法中,以使Spring自动装入需要的依赖关系中。
基于环境的配置 使用这些属性,您可以将您正在使用的环境传递到应用程序:
在加载主应用程序属性文件后,Spring将在 中加载后续的应用程序属性文件。
3
3.SpringBoot的核心配置文件有哪几个?他们的区别是什么?
Spring Boot的核心配置文件是application 和 bootstrap 配置文件。
application 配置文件这个容易理解,主要用于 Spring Boot 项目的自动化配置。
bootstrap 配置文件有以下几个应用场景:
使用 Spring Cloud Config 配置中心时,这时需要在 bootstrap 配置文件中添加连接到配置中心的配置属性来加载外部配置中心的配置信息;在此我向大家推荐一个架构学习交流圈。交流学习伪鑫:1253431195(里面有大量的面试题及答案)里面会分享一些资深架构师录制的视频录像:有Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化、分布式架构等这些成为架构师必备的知识体系。还能领取免费的学习资源,目前受益良多
一些固定的不能被覆盖的属性;
一些加密/解密的场景
4
4.SpringBoot的配置文件有哪几种格式?他们有什么区别?
和 ,它们的区别主要是书写格式不同。1.properties
2.yml
5
- SpringBoot的核心注解是哪个?它主要由哪几个注解组成的?
启动类上面的注解是@SpringBootApplication,它也是SpringBoot的核心注解 主要组合包含了以下 3 个注解:
@SpringBootConfiguration:组合了 @Configuration 注解,实现配置文件的功能。
@EnableAutoConfiguration:打开自动配置的功能,也可以关闭某个自动配置的选项,如关闭数据源自动配置功能:
@SpringBootApplication(exclude = { DataSourceAutoConfiguration.class })。
@ComponentScan:Spring组件扫描。
6
6.开启SpringBoot特性有哪几种方式?
继承spring-boot-starter-parent项目
2.导入spring-boot-dependencies项目依赖
7
- SpringBoot需要独立的容器运行吗?
8
- 运行SpringBoot 有哪几种方式?
打包用命令或者放到容器中运行
用 Maven/ Gradle 插件运行
直接执行 main 方法运行
9
- SpringBoot 自动配置原理是什么?
注解 @EnableAutoConfiguration, @Configuration, @ConditionalOnClass 就是自动配置的核心,首先它得是一个配置文件,其次根据类路径下是否有这个类去自动配置。
10
- SpringBoot 2.X 有什么新特性?
配置变更
JDK 版本升级
第三方类库升级
响应式 Spring 编程支持
HTTP/2 支持
配置属性绑定
更多改进与加强…
11
- 如何使用SpringBoot实现分页和排序?
12
- 如何实现SpringBoot 应用程序的安全性?
为了实现Spring Boot的安全性,我们使用 spring-boot-starter-security依赖项,并且必须添加安全配置。它只需要很少的代码。配置类将必须扩展WebSecurityConfigurerAdapter并覆盖其方法。
13
- 如何集成SpringBoot 和 ActiveMQ
对于集成Spring Boot和ActiveMQ,我们使用spring-boot-starter-activemq 依赖关系。它只需要很少的配置,并且不需要样板代码。
14
- 什么是YAML?
YAML是一种人类可读的数据序列化语言。
它通常用于配置文件。
与属性文件相比,如果我们想要在配置文件中添加复杂的属性,
YAML文件更加结构化,而且更少混淆。可以看出YAML具有分层配置数据。
15
- SpringBoot 中的监视器是什么?
Spring boot actuator是spring启动框架中的重要功能之一。
Spring boot监视器可帮助您访问生产环境中正在运行的应用程序的当前状态。
有几个指标必须在生产环境中进行检查和监控。
即使一些外部应用程序可能正在使用这些服务来向相关人员触发警报消息。
监视器模块公开了一组可直接作为HTTP URL访问的REST端点来检查状态。
16
- 什么是Swagger?你用SpringBoot实现了它吗?
Swagger广泛用于可视化API,使用Swagger UI为前端开发人员提供在线沙箱。
Swagger是用于生成RESTful Web服务的可视化表示的工具,规范和完整框架实现。
它使文档能够以与服务器相同的速度更新。
当通过Swagger正确定义时,消费者可以使用最少量的实现逻辑来理解远程服务并与其进行交互。
因此,Swagger消除了调用服务时的猜测。
最新BAT java经典必考面试题链接:https://pan.baidu.com/s/1B_Lc1tluda0fbdrFnexOMQ
提取码:gw8d