SpringBoot相关面试题总结

一、简介

本文将总结一些现在非常流行的开箱即用框架SpringBoot相关的面试题。

二、面试题

【1】什么是SpringBoot?

Spring Boot是Spring开源组织下的子项目,是Spring组件一站式解决方案,主要是简化了使用Spring的难度,简省了繁重的配置,提供了各种启动器,开发者能快速上手。

【2】SpringBoot有哪些优点?

  • 独立运行

    Spring Boot而且内嵌了各种servlet容器,Tomcat、Jetty等,现在不再需要打成war包部署到容器中,Spring Boot只要打成一个可执行的jar包就能独立运行,所有的依赖包都在一个jar包内。

  • 简化配置

    spring-boot-starter-web启动器自动依赖其他组件,简少了maven的配置。

  • 自动配置

    Spring Boot能根据当前类路径下的类、jar包来自动配置bean,如添加一个spring-boot-starter-web启动器就能拥有web的功能,无需其他配置。

  • 无代码生成和XML配置

    Spring Boot配置过程中无代码生成,也无需XML配置文件就能完成所有配置工作,这一切都是借助于条件注解完成的,这也是Spring4.x的核心功能之一。

  • 应用监控

    Spring Boot提供一系列端点可以监控服务及应用,做健康检测。

【3】SpringBoot中的监视器是什么?

SpringBoot actuator监视器可帮助我们访问生产环境中正在运行的应用程序的当前状态,有几个指标必须在生产环境中进行检查和监控,即使一些外部应用程序可能正在使用 这些服务来向相关人员触发警报信息。监视器模板公开了一组可直接作为URL访问的REST端点来检查状态。

【4】如何在SpringBoot中禁用Actuator端点安全性?

在配置文件中加入下面的配置:

management.security.enabled = false

【5】如何在自定义端口上运SpringBoot应用程序?

在配置文件中application.properties/application.yml中指定端口:

server.port = 8090

server:
  port: 8080

【6】什么是YAML?

YAML是一种人类可读的数据序列化语言。通常用于配置文件,与属性文件相比,如果我们想要在配置文件中添加更加复杂的属性,YAML文件就更加结构化,而且更少混淆,可以看出YAML具有分层配置数据。

【7】什么是Swagger? 

Swagger广泛用于可视化API,使用Swagger UI为前端人员提供在线沙箱。Swagger是用于生成RESTful Web服务的可视化表示的工具,规范和完整框架实现,当通过Swagger正确定义时,消费者可以使用最少量的实现逻辑来理解远程服务并与其进行交互。

【8】什么是FreeMarker模板?

FreeMarker是一个基于Java的模板引擎,使用FreeMarker的主要优点是表示层和业务层的完全分离,程序员可以处理应用程序代码,而设计人员可以处理html页面设计,最后使用FreeMarker可以将这些结合起来,给出最终的输出页面。

【9】什么是CSRF攻击?

CSRF代表跨站请求伪造,这是一种攻击,迫使最终用户在当前通过身份验证的Web应用程序上执行不需要的操作。CSRF攻击专业针对于状态改变请求,而不是数据窃取,因为攻击者无法查看对伪造请求的响应。

【10】您使用了哪些starter maven的依赖项?

  • spring-boot-starter-activemq 
  • spring-boot-starter-security
  • spring-boot-starter-web 
  • spring-boot-starter-actuator
  • spring-boot-starter-redis等

三、总结

发布了250 篇原创文章 · 获赞 112 · 访问量 19万+

猜你喜欢

转载自blog.csdn.net/Weixiaohuai/article/details/105621247