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等

三、總結

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章