有網友說:2020年還不懂Spring就放棄Java吧?

前言

Spring這個詞對於開發者想必不會陌生,可能你每天都在使用Spring,享受着Spring生態提供的服務,理所當然的用着SpringIOC和SpringAOP去實現老闆交給你的功能 ,唔 它就是這樣使用的(類聲明爲Bean組件,然後注入),沒錯 能完成老闆任務,沒毛病。如果向你提問什麼是Spring,Spring有什麼核心功能呢,你會想:這太簡單了,Spring就是框架嘛,Spring核心功能就是IOC和AOP,So Easy!可是你真的瞭解Spring嗎?

 

Spring是一個開源框架,最早由Rod Johnson創建,是爲了解決企業級應用開發的複雜性而創建的。很多框架都宣稱在某些方面針對Java開發做出了簡化,但是Spring的目標是致力於全方位簡化Java開發,這也是Spring的根本使命 "簡化Java開發"。

關於Spring的知識總結了個思維導圖分享給大家

有網友說:2020年還不懂spring就放棄Java吧?全網最熱門的119個spring問題,你會多少?讓我們來看看下面這些問題!

 

Spring 面試題(一)

1、一般問題

1.1、不同版本的 Spring Framework 有哪些主要功能?

1.2、什麼是 Spring Framework?

1.3、列舉 Spring Framework 的優點。

1.4、Spring Framework 有哪些不同的功能?

1.5、Spring Framework 中有多少個模塊,它們分別是什麼?

1.6、什麼是 Spring 配置文件?

1.7、Spring 應用程序有哪些不同組件?

1.8、使用 Spring 有哪些方式?

2、依賴注入(Ioc)

2.1、什麼是 Spring IOC 容器?

2.2、什麼是依賴注入?

2.3、可以通過多少種方式完成依賴注入?..

2.4、區分構造函數注入和 setter 注入。.

2.5、spring 中有多少種 IOC 容器?

2.6、區分 BeanFactory 和 ApplicationContext。

2.7、列舉 IoC 的一些好處。

2.8、Spring IoC 的實現機制。

3、Beans

3.1、什麼是 spring bean?

3.2、spring 提供了哪些配置方式?

3.3、spring 支持集中 bean scope?

3.4、spring bean 容器的生命週期是什麼樣的?

3.5、什麼是 spring 的內部 bean?

3.6、什麼是 spring 裝配

3.7、自動裝配有哪些方式?

3.8、自動裝配有什麼侷限?

4、註解

4.1、什麼是基於註解的容器配置

4.2、如何在 spring 中啓動註解裝配?

4.3、@Component, @Controller, @Repository, @Service 有何區別?

4.4、@Required 註解有什麼用?

4.5、@Autowired 註解有什麼用?

4.6、@Qualifier 註解有什麼用?

4.7、@RequestMapping 註解有什麼用?

5、數據訪問

5.1、spring DAO 有什麼用?

5.2、列舉 Spring DAO 拋出的異常。

5.3、spring JDBC API 中存在哪些類?

5.4、使用 Spring 訪問 Hibernate 的方法有哪些?

5.5、列舉 spring 支持的事務管理類型

5.6、spring 支持哪些 ORM 框架

6、AOP

6.1、什麼是 AOP?

6.2、什麼是 Aspect?

6.3、什麼是切點(JoinPoint)

6.4、什麼是通知(Advice)?

6.5、有哪些類型的通知(Advice)?

6.6、指出在 spring aop 中 concern 和 cross-cutting concern 的不同之處。

6.7、AOP 有哪些實現方式?

6.8、Spring AOP and AspectJ AOP 有什麼區別?

6.9、如何理解 Spring 中的代理?

6.10、什麼是編織(Weaving)?

7、MVC

7.1、Spring MVC 框架有什麼用?

7.2、描述一下 DispatcherServlet 的工作流程

7.3、介紹一下 WebApplicationContext.

 

Spring 面試題(二)

一般問題

1、什麼是 spring?

2、使用 Spring 框架的好處是什麼?

3、Spring 由哪些模塊組成?

4、核心容器(應用上下文) 模塊。

5、BeanFactory – BeanFactory 實現舉例。

6、XMLBeanFactory

7、解釋 AOP 模塊

8、解釋 JDBC 抽象和 DAO 模塊。

9、解釋對象/關係映射集成模塊。

10、解釋 WEB 模塊。

12、Spring 配置文件

13、什麼是 Spring IOC 容器?

14、IOC 的優點是什麼?

15、ApplicationContext 通常的實現是什麼?

16、Bean 工廠和 Application contexts 有什麼區別?

17、一個 Spring 的應用看起來象什麼?

依賴注入

18、什麼是 Spring 的依賴注入?

19、有哪些不同類型的 IOC(依賴注入)方式?

20、哪種依賴注入方式你建議使用,構造器注入,還是 Setter 方法注入?

Spring Beans

21.什麼是 Spring beans?

22、一個 Spring Bean 定義 包含什麼?

23、如何給 Spring 容器提供配置元數據?

24、你怎樣定義類的作用域?

25、解釋 Spring 支持的幾種 bean 的作用域。

26、Spring 框架中的單例 bean 是線程安全的嗎?

27、解釋 Spring 框架中 bean 的生命週期。

28、哪些是重要的 bean 生命週期方法?你能重載它們嗎?

29、什麼是 Spring 的內部 bean?

30、在 Spring 中如何注入一個 java 集合?

31、什麼是 bean 裝配?

32、什麼是 bean 的自動裝配?

33、解釋不同方式的自動裝配 。

34.自動裝配有哪些侷限性 ?

35、你可以在 Spring 中注入一個 null 和一個空字符串嗎?

Spring 註解

36、什麼是基於 Java 的 Spring 註解配置? 給一些註解的例子

37、什麼是基於註解的容器配置?

38、怎樣開啓註解裝配?

39、@Required 註解

40、@Autowired 註解

41、@Qualifier 註解

Spring 數據訪問

42.在 Spring 框架中如何更有效地使用 JDBC?

43、JdbcTemplate

44、Spring 對 DAO 的支持

45、使用 Spring 通過什麼方式訪問 Hibernate?

46、Spring 支持的 ORM

47.如何通過 HibernateDaoSupport 將 Spring 和 Hibernate 結合起來?

48、Spring 支持的事務管理類型

49、Spring 框架的事務管理有哪些優點?

50、你更傾向用那種事務管理類型?

Spring 面向切面編程(AOP)

51、解釋 AOP

52、Aspect 切面

52、在 Spring AOP 中,關注點和橫切關注的區別是什麼?

54、連接點

55、通知

56、切點

57、什麼是引入?

58、什麼是目標對象?

59、什麼是代理?

60、有幾種不同類型的自動代理?

61、什麼是織入。什麼是織入應用的不同點?

62、解釋基於 XML Schema 方式的切面實現。

63、解釋基於註解的切面實現

Spring 的 MVC

64、什麼是 Spring 的 MVC 框架?

65、DispatcherServlet

66、WebApplicationContext

67、什麼是 Spring MVC 框架的控制器?

68、@Controller 註解

69、@RequestMapping 註解

上面的這些問題只是給大家一個借鑑作用,最主要的是給自己增加知識的儲備,有備無患。

關於這119個全網最熱門的spring問題,總結了40多頁pdf文檔,關注公衆號:程序員追風,回覆 0109 即可獲取。

希望能幫助到你面試前的複習且找到一個好的工作,也節省大家在網上搜索資料的時間來學習。

 

總結

按照 Spring 官方最新的說法,Spring 是現代 Java 的起源。

不可否認,Spring 無論在 Java 生態系統,還是在就業市場,是絕對的王者。面試出鏡率之高,投產規模之廣,無出其右。隨着技術的發展,Spring 從往日的 IoC 框架,已發展成 Cloud Native 基礎設施,衍生出大量 Spring 技術棧,如大家熟知的 Spring Boot、Spring Cloud 和 Spring Security 等。因此,Spring 生態體系隨之變得龐大,如 Apache Dubbo 對 Spring Framework 的整合,各類中間件 Spring Boot Starter,以及多種 Spring Cloud 實現方案。

最後

歡迎大家一起交流,喜歡文章記得關注我點個贊喲,感謝支持!

發佈了174 篇原創文章 · 獲贊 2290 · 訪問量 24萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章