總結幾個Spring Boot 面試題

一,什麼是Spring Boot

       Spring Boot 官方地址https://spring.io/projects/spring-boot,好像需要梯子。這是來自官方的說明:Spring Boot可以輕鬆創建獨立的,生產級的基於Spring的應用程序,您可以“運行”。

特徵

  • 創建獨立的Spring應用程序

  • 直接嵌入Tomcat,Jetty或Undertow(無需部署WAR文件)

  • 提供自以爲是的“入門”依賴項以簡化構建配置

  • 儘可能自動配置Spring和第三方庫

  • 提供生產就緒功能,例如指標,運行狀況檢查和外部化配置

  • 絕對沒有代碼生成,也不需要XML配置

二,Spring Boot、Spring MVC 和 Spring 有什麼區別? 

SpringFramework 最重要的特徵是依賴注入。所有 SpringModules 不是依賴注入就是 IOC 控制反轉。

Spring MVC 提供了一種分離式的方法來開發 Web 應用。通過運用像 DispatcherServelet,MoudlAndView 和 ViewResolver 等一些簡單的概念,開發 Web 應用將會變的非常簡單。

Spring Boot它的目的在於實現自動配置,降低項目搭建的複雜度,如需要搭建一個接口服務,通過Spring Boot,幾行代碼即可實現。

三,Spring Boot 還提供了其它的哪些 Starter Project Options?

pring Boot 也提供了其它的啓動器項目包括,包括用於開發特定類型應用程序的典型依賴項。

spring-boot-starter-web-services - SOAP Web Services

spring-boot-starter-web - Web 和 RESTful 應用程序

spring-boot-starter-test - 單元測試和集成測試

spring-boot-starter-jdbc - 傳統的 JDBC

spring-boot-starter-hateoas - 爲服務添加 HATEOAS 功能

spring-boot-starter-security - 使用 SpringSecurity 進行身份驗證和授權

spring-boot-starter-data-jpa - 帶有 Hibeernate 的 Spring Data JPA

spring-boot-starter-data-rest - 使用 Spring Data REST 公佈簡單的 REST 服務

四,什麼是 Spring Date?

Spring Data 的使命是在保證底層數據存儲特殊性的前提下,爲數據訪問提供一個熟悉的,一致性的,基於 Spring 的編程模型。這使得使用數據訪問技術,關係數據庫和非關係數據庫,map-reduce 框架以及基於雲的數據服務變得很容易。

五,什麼是JavaConfig?

      Spring JavaConfig是Spring社區的產品,它提供了配置Spring IoC容器的純Java方法。因此它有助於避免使用XML配置。使用JavaConfig的優點在於:面向對象的配置。由於配置被定義爲JavaConfig中的類,因此用戶可以充分利用Java中的面向對象功能。一個配置類可以繼承另一個,重寫它的@Bean方法等。減少或消除XML配置。基於依賴注入原則的外化配置的好處已被證明。但是,許多開發人員不希望在XML和Java之間來回切換。JavaConfig爲開發人員提供了一種純Java方法來配置與XML配置概念相似的Spring容器。從技術角度來講,只使用JavaConfig配置類來配置容器是可行的,但實際上很多人認爲將JavaConfig與XML混合匹配是理想的。類型安全和重構友好。JavaConfig提供了一種類型安全的方法來配置Spring容器。由於Java 5.0對泛型的支持,現在可以按類型而不是按名稱檢索bean,不需要任何強制轉換或基於字符串的查找。

六,如何實現Spring Boot應用程序的安全性?

爲了實現Spring Boot的安全性,我們使用 spring-boot-starter-security依賴項,並且必須添加安全配置。它只需要很少的代碼。配置類將必須擴展WebSecurityConfigurerAdapter並覆蓋其方法。

七,如何使用Spring Boot實現分頁和排序?

使用Spring Boot實現分頁非常簡單。使用Spring Data-JPA可以實現將可分頁的org.springframework.data.domain.Pageable傳遞給存儲庫方法。  

八,SpringBoot幾個常用的註解

(1)@RestController和@Controller指定一個類,作爲控制器的註解 
(2)@RequestMapping方法級別的映射註解,這一個用過Spring MVC的小夥伴相信都很熟悉 
(3)@EnableAutoConfiguration和@SpringBootApplication是類級別的註解,根據maven依賴的jar來自動猜測完成正確的spring的對應配置,只要引入了spring-boot-starter-web的依賴,默認會自動配置Spring MVC和tomcat容器
(4)@Configuration類級別的註解,一般這個註解,我們用來標識main方法所在的類,完成元數據bean的初始化。
(5)@ComponentScan類級別的註解,自動掃描加載所有的Spring組件包括Bean注入,一般用在main方法所在的類上 
(6)@ImportResource類級別註解,當我們必須使用一個xml的配置時,使用@ImportResource和@Configuration來標識這個文件資源的類。 
(7)@Autowired註解,一般結合@ComponentScan註解,來自動注入一個Service或Dao級別的Bean
(8)@Component類級別註解,用來標識一個組件,比如我自定了一個filter,則需要此註解標識之後,Spring Boot纔會正確識別。

好了,關於Spring boot,網上也有好多教程,Spring全家桶基本上面試Java都會問到,這東西很有用

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