Spring精華問答 | Spring框架有哪些主要模塊?

Spring框架是一個開源的Java平臺,它提供了非常容易,非常迅速地開發健壯的Java應用程序的全面的基礎設施支持。今天就讓我們一起來看看關於Spring的精華問答吧。

1

Q:什麼是Spring框架?Spring框架有哪些主要模塊?

A:Spring框架是一個爲Java應用程序的開發提供了綜合、廣泛的基礎性支持的Java平臺。Spring幫助開發者解決了開發中基礎性的問題,使得開發人員可以專注於應用程序的開發。Spring框架本身亦是按照設計模式精心打造,這使得我們可以在開發環境中安心的集成Spring框架,不必擔心Spring是如何在後臺進行工作的。

Spring框架至今已集成了20多個模塊。這些模塊主要被分如下圖所示的核心容器、數據訪問/集成,、Web、AOP(面向切面編程)、工具、消息和測試模塊。

Spring精華問答 | Spring框架有哪些主要模塊?

2

Q:Spring框架中的IoC是什麼?

A:Spring中的 org.springframework.beans 包和 org.springframework.context包構成了Spring框架IoC容器的基礎。

BeanFactory 接口提供了一個先進的配置機制,使得任何類型的對象的配置成爲可能。ApplicationContex接口對BeanFactory(是一個子接口)進行了擴展,在BeanFactory的基礎上添加了其他功能,比如與Spring的AOP更容易集成,也提供了處理message resource的機制(用於國際化)、事件傳播以及應用層的特別配置,比如針對Web應用的WebApplicationContext。

org.springframework.beans.factory.BeanFactory 是Spring IoC容器的具體實現,用來包裝和管理前面提到的各種bean。BeanFactory接口是Spring IoC 容器的核心接口。

3

Q:Spring有幾種配置方式?

A:將Spring配置到應用開發中有以下三種方式:

基於XML的配置

基於註解的配置

基於Java的配置

4

Q:如何用基於XML配置的方式配置Spring?

A: 在Spring框架中,依賴和服務需要在專門的配置文件來實現,我常用的XML格式的配置文件。這些配置文件的格式通常用開頭,然後一系列的bean定義和專門的應用配置選項組成。

SpringXML配置的主要目的時候是使所有的Spring組件都可以用xml文件的形式來進行配置。這意味着不會出現其他的Spring配置類型(比如聲明的方式或基於Java Class的配置方式)

Spring的XML配置方式是使用被Spring命名空間的所支持的一系列的XML標籤來實現的。Spring有以下主要的命名空間:context、beans、jdbc、tx、aop、mvc和aso。

Spring精華問答 | Spring框架有哪些主要模塊?

下面這個web.xml僅僅配置了DispatcherServlet,這件最簡單的配置便能滿足應用程序配置運行時組件的需求。

Spring精華問答 | Spring框架有哪些主要模塊?

5

Q:怎樣用註解的方式配置Spring?

A:Spring在2.5版本以後開始支持用註解的方式來配置依賴注入。可以用註解的方式來替代XML方式的bean描述,可以將bean描述轉移到組件類的內部,只需要在相關類上、方法上或者字段聲明上使用註解即可。註解注入將會被容器在XML注入之前被處理,所以後者會覆蓋掉前者對於同一個屬性的處理結果。

註解裝配在Spring中是默認關閉的。所以需要在Spring文件中配置一下才能使用基於註解的裝配模式。如果你想要在你的應用程序中使用關於註解的方法的話,請參考如下的配置。

Spring精華問答 | Spring框架有哪些主要模塊?

標籤配置完成以後,就可以用註解的方式在Spring中向屬性、方法和構造方法中自動裝配變量。

下面是幾種比較重要的註解類型:

@Required:該註解應用於設值方法。

@Autowired:該註解應用於有值設值方法、非設值方法、構造方法和變量。

@Qualifier:該註解和@Autowired註解搭配使用,用於消除特定bean自動裝配的歧義。

JSR-250 Annotations:Spring支持基於JSR-250 註解的以下註解,@Resource、@PostConstruct 和 @PreDestroy。

Spring精華問答 | Spring框架有哪些主要模塊?

小夥伴們衝鴨,後臺留言區等着你!

關於Spring,今天你學到了什麼?還有哪些不懂的?除此還對哪些話題感興趣?快來留言區打卡啦!留言方式:打開第XX天,答:……

同時歡迎大家蒐集更多問題,投稿給我們!風裏雨裏留言區裏等你~

福利

1、掃描添加小編微信,備註“姓名+公司職位”,加入【雲計算學習交流羣】,和志同道合的朋友們共同打卡學習!

Spring精華問答 | Spring框架有哪些主要模塊?

2、公衆號後臺回覆:白皮書,獲取IDC最新數據白皮書整理資料!

推薦閱讀:

  • 全面剖析企業私有云

  • 30 秒?!Chrome 插件帶你速成編程學習 | 程序員硬核評測

  • 爲什麼程序員下班後只關顯示器從不關電腦?

  • 算法警告!該圖片涉嫌違規不予顯示

  • 交易機器人春天已來?先看完這篇再說吧

  • 2019年中國IT市場趨勢熱點

  • 2019年最值得關注的五大微服務發展趨勢

Spring精華問答 | Spring框架有哪些主要模塊?

喜歡就點擊“好看”吧

相关文章