1.Bean注入和xml注入最終得到了相同的效果,它們在底層是怎樣做的?
2.Spring給我們提供了很多擴展點,這些有了解嗎?
3.MVC分層介紹一下?
4.了解SpringMVC的處理流程嗎?
5.Handlermapping 和 handleradapter有了解嗎?
6.為什么使用springboot?
7.SpringBoot比Spring好在哪里?
8.SpringBoot用到哪些設計模式?
9.怎么理解SpringBoot中的約定大于配置?
10.SpringBoot的項目結構是怎么樣的?
1.Bean注入和xml注入最終得到了相同的效果,它們在底層是怎樣做的?
xml:
-
XmlBeanDefinitionReader解析xml里面的bean定義信息。
-
注冊bean到BeanDefinitionRegistry,包括類,作用域,依賴關系,初始化,銷毀方法。
-
實例化+依賴注入:反射機制創建Bean,根據 Bean 定義中的配置,通過 setter 方法、構造函數或方法注入所需的依賴 Bean。
注解: -
在類路徑內注解,利用AnnotatedBeanDefinitionReader解析Bean信息。
-
注冊bean到BeanDefinitionRegistry,包括類,作用域,依賴關系,初始化,銷毀方法。
-
Spring 會根據注解的信息進行依賴注入。
2.Spring給我們提供了很多擴展點,這些有了解嗎?
在蒼穹外賣里面使用過的有攔截器(JWT登錄驗證),全局異常處理器,自動配置類,自定義注解。
3.MVC分層介紹一下?
4.了解SpringMVC的處理流程嗎?
感覺要回去復習SpringMVC了。https://springmvc.javaboy.org/2019/1106/handler
5.Handlermapping 和 handleradapter有了解嗎?
HandlerMapping 是負責根據 request 請求找到對應的 Handler 處理器及 Interceptor 攔截器,將它們封裝在 HandlerExecutionChain 對象中返回給前端控制器。
HandlerAdapter 會根據適配器接口對后端控制器進行包裝(適配),包裝后即可對處理器進行執行,通過擴展處理器適配器可以執行多種類型的處理器,這里使用了適配器設計模式。
HttpRequestHandlerAdapter:用于處理實現了HttpRequestHandler接口的handler。
SimpleControllerHandlerAdapter:用于處理實現了Controller接口的handler。
SimpleServletHandlerAdapter:用于處理實現了Servlet接口的handler。
6.為什么使用springboot?
SpringBoot設計目的是盡可能簡單和快速的開發、運行Spring應用程序,簡化配置。
7.SpringBoot比Spring好在哪里?
8.SpringBoot用到哪些設計模式?
參考Spring的那題,答案基本沒變。
9.怎么理解SpringBoot中的約定大于配置?
約定優于配置是一種軟件設計的范式,它的核心思想是減少軟件開發人員對于配置項的維護,從而讓開發人員更加聚焦在業務邏輯上。