SpringBoot面试题

SpringBoot面试题,第1张

谈谈你对Spring Boot的理解?

SpringBoot主要用来简化使用Spring的难度和繁重的XML配置,它是Spring组件的一站式解决方案,采取了习惯优于配置的方法。通过.properties或者.yml文件替代了Spring繁杂的XML配置文件,同时支持@ImportResource注解加载XML配置。Spring Boot还提供了嵌入式HTTP服务器、命令行接口工具、多种插件等等,使得应用程序的测试和开发简单起来。

SpringBoot的优点

1、 减少开发,测试时间和努力。

2、 使用JavaConfig有助于避免使用XML。

3、 避免大量的Maven导入和各种版本冲突。

4、 提供意见发展方法。

5、 通过提供默认值快速开始开发。

6、 没有单独的Web服务器需要。这意味着你不再需要启动Tomcat,Glassfish或其他任何东西。

7、 需要更少的配置 因为没有web.xml文件。只需添加用@ Configuration注释的类,然后添加用@Bean注释的方法,Spring将自动加载对象并像以前一样对其进行管理。您甚至可以将@Autowired添加到bean方法中,以使Spring自动装入需要的依赖关系中。

8、 基于环境的配置 使用这些属性,您可以将您正在使用的环境传递到应用程序:-Dspring.profiles.active = {enviornment}。在加

Spring Boot 有哪几种读取配置的方式?

1、使用@Value注解加载单个属性值
2、使用@ConfigurationProperties注解可以加载一组属性的值,针对于要加载的属性过多的情况,比@Value注解更加简洁

(Spring Boot 的核心注解是哪个?它主要由哪几个注解组成的)介绍一下 @SpringBootApplication 注解

Spring Boot 的核心注解是@SpringBootApplication,它也是启动类使用的注解,主要包含了 3 个注解:
@SpringBootConfiguration:它组合了 @Configuration 注解,实现配置文件的功能。
@EnableAutoConfiguration:具有打开自动配置的功能,也可以关闭某个自动配置的选项。
@ComponentScan:用于Spring组件扫描。

Spring Boot 自动配置原理是什么?

@EnableAutoConfiguration注解、 @Configuration注解和 @ConditionalOnClass注解组成了Spring Boot自动配置的核心,首先它得是一个配置文件,其次根据类路径下是否有这个类去自动配置。具体是通过maven读取每个starter中的spring.factories文件,该文件配置了所有需要被创建在spring容器中的bean。

Spring Boot 是否可以使用 XML 配置

Spring Boot 推荐使用 Java 配置同时支持 XML 配置,通过 @ImportResource 注解加载 XML 配置。

application.properties和bootstrap.properties有何区别 ?

bootstrap比 applicaton 优先加载,配置在应用程序上下文的引导阶段生效, 而且boostrap 里面的属性不能被覆盖;
application用于 spring boot 项目的自动化配置。

什么是 WebSocket?

WebSocket 是一种计算机通信协议,通过单个 TCP 连接提供全双工通信信道。
WebSocket 是双向的 ,使用 WebSocket 客户端或服务器可以实现消息发送。
WebSocket 是全双工的 ,客户端和服务器通信是相互独立的。
WebScoket 使用单个 TCP 连接 ,与http 相比,WebSocket 消息数据交换要轻得多。

Spring Boot 中的监视器是什么?(什么是Spring Boot Actuator)?

Spring boot actuator 是 spring 启动框架中的重要功能之一,Spring boot 监视器可以访问生产环境中正在运行的应用程序的当前状态。监视器模块公开了一组可直接作为 HTTP URL 访问的 REST 端点来检查状态。

如何使用 Spring Boot 实现异常处理?

Spring 通过使用 @ControllerAdvice 注解处理异常,实现一个ControllerAdvice 类来处理控制器类抛出的所有异常。

SpringBoot事务的使用

首先使用注解 EnableTransactionManagement 开启事物之后,然后在Service方法上添加注解 Transactional 便可。

如何在 Spring Boot 启动的时候运行一些特定的代码?

可以实现接口 ApplicationRunner 或者 CommandLineRunner,这两个接口实现方式一样,它们都只提供了一个 run 方法

spring-boot-starter-parent 有什么用

开启SpringBoot特性的几种方式?
  1. 继承spring-boot-starter-parent项目

  2. 导入spring-boot-dependencies项目依赖

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/876800.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-13
下一篇 2022-05-13

发表评论

登录后才能评论

评论列表(0条)

保存