Java面試中的spring面試題總結(jié)

1、spring 常用的注入方式有哪些

@Autowired構(gòu)造方法、方法、接口

KEY Value
構(gòu)造器注入 通過(guò)將@Autowired注解放在構(gòu)造器上來(lái)完成構(gòu)造器注入,默認(rèn)構(gòu)造器參數(shù)通過(guò)類型自動(dòng)裝配
接口注入 通過(guò)將@Autowired注解放在構(gòu)造器上來(lái)完成接口注入。
方法參數(shù)注入 通過(guò)將@Autowired注解放在方法上來(lái)完成方法參數(shù)注入。

2、spring 支持幾種 bean 的作用域?

當(dāng)通過(guò)spring容器創(chuàng)建一個(gè)Bean實(shí)例時(shí),不僅可以完成Bean實(shí)例的實(shí)例化,還可以為Bean指定特定的作用域。Spring支持如下5種作用域:

key value
singleton 單例模式,在整個(gè)SpringIoC容器中,使用singleton定義的Bean將只有一個(gè)實(shí)例
prototype 原型模式,每次通過(guò)容器的getBean方法獲取prototype定義的Bean時(shí),都將產(chǎn)生一個(gè)新的Bean實(shí)例
request 對(duì)于每次HTTP請(qǐng)求,使用request定義的Bean都將產(chǎn)生一個(gè)新實(shí)例,即每次HTTP請(qǐng)求將會(huì)產(chǎn)生不同的Bean實(shí)例。只有在Web應(yīng)用中使用Spring時(shí),該作用域才有效
session 對(duì)于每次HTTPSession,使用session定義的Bean豆?jié){產(chǎn)生一個(gè)新實(shí)例。同樣只有在Web應(yīng)用中使用Spring時(shí),該作用域才有效
globalsession 每個(gè)全局的HTTPSession,使用session定義的Bean都將產(chǎn)生一個(gè)新實(shí)例。典型情況下,僅在使用portletcontext的時(shí)候有效。同樣只有在Web應(yīng)用中使用Spring時(shí),該作用域才有效

3、簡(jiǎn)單的談一下SpringMVC的工作流程?

流程 1、用戶發(fā)送請(qǐng)求至前端控制器DispatcherServlet

2、DispatcherServlet收到請(qǐng)求調(diào)用HandlerMapping處理器映射器。

3、處理器映射器找到具體的處理器,生成處理器對(duì)象及處理器攔截器(如果有則生成)一并返回給DispatcherServlet。

4、DispatcherServlet調(diào)用HandlerAdapter處理器適配器

5、HandlerAdapter經(jīng)過(guò)適配調(diào)用具體的處理器(Controller,也叫后端控制器)。

6、Controller執(zhí)行完成返回ModelAndView

7、HandlerAdapter將controller執(zhí)行結(jié)果ModelAndView返回給DispatcherServlet 8、DispatcherServlet將ModelAndView傳給ViewReslover視圖解析器

9、ViewReslover解析后返回具體View

10、DispatcherServlet根據(jù)View進(jìn)行渲染視圖(即將模型數(shù)據(jù)填充至視圖中)。

11、DispatcherServlet響應(yīng)用戶

4、SpringCloud五大核心組件

key value
Netflix Eureka 服務(wù)發(fā)現(xiàn)
Netflix Ribbon 客服端負(fù)載均衡
Netflix Hystrix 斷路器
Netflix Zuul 服務(wù)網(wǎng)關(guān)
Spring Cloud Config 分布式配置
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 閑來(lái)無(wú)事從網(wǎng)上找了一些面試題來(lái)做,發(fā)現(xiàn)還是有些難度的。整理了一下,共享給大家。如果有錯(cuò)誤的地方請(qǐng)指出。另外有些超出...
    小爐爐閱讀 526評(píng)論 0 2
  • 九、設(shè)計(jì)模式 88. 說(shuō)一下你熟悉的設(shè)計(jì)模式? 89. 簡(jiǎn)單工廠和抽象工廠有什么區(qū)別? 簡(jiǎn)單工廠模式: 這個(gè)模式本...
    JAVA伯樂(lè)閱讀 550評(píng)論 0 1
  • Spring MVC 的工作原理,分享一篇外文翻譯的技術(shù)貼。-英文原文:原文跳轉(zhuǎn)-譯文跳轉(zhuǎn):譯文跳轉(zhuǎn) 在譯文基礎(chǔ)上...
    麥殼201602閱讀 524評(píng)論 2 1
  • Java是一種可以撰寫跨平臺(tái)應(yīng)用軟件的面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言。Java 技術(shù)具有卓越的通用性、高效性、平臺(tái)移植性和...
    Java小辰閱讀 1,156評(píng)論 0 14
  • 今天去了單位一趟,可是全面武裝,手套口罩,回家后又把衣服裝袋里,洗手,消毒手機(jī)電腦,又洗澡,然后才敢接觸孩子。 即...
    不吃面條always閱讀 143評(píng)論 0 0

友情鏈接更多精彩內(nèi)容