主仆调教SM束缚绳索捆绑,成品人和精品人的区别三叶草,双性受被各种性器调教学生小说,精品一区二区三区水蜜桃

Spring框架

第2章 ?IOC容器和Bean的配置

2.1 IOC和DI

2.1.1 IOC(Inversion of Control):反轉(zhuǎn)控制

在應(yīng)用程序中的組件需要獲取資源時(shí),傳統(tǒng)的方式是組件主動(dòng)的從容器中獲取所需要的資源,在這樣的模式下開(kāi)發(fā)人員往往需要知道在具體容器中特定資源的獲取方式,增加了學(xué)習(xí)成本,同時(shí)降低了開(kāi)發(fā)效率。

反轉(zhuǎn)控制的思想完全顛覆了應(yīng)用程序組件獲取資源的傳統(tǒng)方式:反轉(zhuǎn)了資源的獲取方向——改由容器主動(dòng)的將資源推送給需要的組件,開(kāi)發(fā)人員不需要知道容器是如何創(chuàng)建資源對(duì)象的,只需要提供接收資源的方式即可,極大的降低了學(xué)習(xí)成本,提高了開(kāi)發(fā)的效率。這種行為也稱為查找的被動(dòng)形式。

 

2.1.2 DI(Dependency Injection):依賴注入

IOC的另一種表述方式:即組件以一些預(yù)先定義好的方式(例如:setter 方法)接受來(lái)自于容器的資源注入。相對(duì)于IOC而言,這種表述更直接。

2.1.3 IOC容器在Spring中的實(shí)現(xiàn)

1)在通過(guò)IOC容器讀取Bean的實(shí)例之前,需要先將IOC容器本身實(shí)例化。

2)Spring提供了IOC容器的兩種實(shí)現(xiàn)方式

① BeanFactory:IOC容器的基本實(shí)現(xiàn),是Spring內(nèi)部的基礎(chǔ)設(shè)施,是面向Spring本身的,不是提供給開(kāi)發(fā)人員使用的。

② ApplicationContext:BeanFactory的子接口,提供了更多高級(jí)特性。面向Spring的使用者,幾乎所有場(chǎng)合都使用ApplicationContext而不是底層的BeanFactory。

 

2.1.4 ApplicationContext的主要實(shí)現(xiàn)類

  • ClassPathXmlApplicationContext:對(duì)應(yīng)類路徑下的XML格式的配置文件
  • FileSystemXmlApplicationContext:對(duì)應(yīng)文件系統(tǒng)中的XML格式的配置文件
  • 在初始化時(shí)就創(chuàng)建單例的bean,也可以通過(guò)配置的方式指定創(chuàng)建的Bean是多實(shí)例的。

 

2.1.5 ConfigurableApplicationContext

  • 是ApplicationContext的子接口,包含一些擴(kuò)展方法
  • refresh()和close()讓ApplicationContext具有啟動(dòng)、關(guān)閉和刷新上下文的能力。

 

2.1.6 WebApplicationContext

  • 專門為WEB應(yīng)用而準(zhǔn)備的,它允許從相對(duì)于WEB根目錄的路徑中完成初始化工作

 

  1. 主站蜘蛛池模板: 晋中市| 柘荣县| 贵溪市| 南木林县| 藁城市| 蒙山县| 黔西| 乐平市| 吉首市| 红河县| 建始县| 漳浦县| 昭苏县| 翁源县| 沈阳市| 勐海县| 黄浦区| 甘德县| 桦甸市| 乐业县| 永济市| 惠安县| 炉霍县| 萨迦县| 兖州市| 溆浦县| 保靖县| 嵊泗县| 岳西县| 图木舒克市| 天柱县| 新兴县| 诏安县| 竹北市| 马公市| 卢氏县| 麦盖提县| 德兴市| 江津市| 西昌市| 游戏|