spring ioc 學習(1)

    若是用通俗易懂的語言讓一個徹底不懂計算機的人理解你所謂的技術,那麼說明你真的懂了。這句話是我曾經的一個師傅告訴個人...spring

    spring最大的魅力是IOC、AOP這個是業內公認的了..因此,站在巨人的肩膀上,作爲菜鳥的我天然就從這兩個部分去剖析spring的優美。咱們搞技術的同時千萬不要忘記咱們是有血有肉的人類,不能由於盲目的去實現需求而去搞技術,若是咱們搞了n久的spring開發,可咱們牢牢停留在spring.jar與beans.xml的話,那真的是spring式的悲劇。xml

    就我如今這個理解層次上,我的對IOC的解釋以下:一、依賴查找:譬如你在飯店,你能夠根據菜單去告訴廚房你要點的菜,當廚房將菜作好,你在端菜到本身的位置去吃,這個過程就是依賴查找。二、依賴注入:仍是你在飯店,仍是你根據菜單去點菜,只不過此次你告訴了服務員你要什麼,服務員會用本身的方式搞到你要的菜,放到你的桌子上。繼承

   經過這樣的解釋可讓咱們感受到依賴注入也許會更方便。接口

    若是說到依賴注入,那麼咱們就要先去研究一下springIoc核心的接口:BeanFactory。我我的強烈建議去官網下載spring的源代碼,我寫這篇文章時用的是3.0.5的release版本的。該接口的部分實現類以下圖:ip

該接口的方法如圖。開發

而咱們最常涉及到的就是其中的繼承BeanFactory的ApplicationContext,若是咱們這麼看:it

就能看到若是實現了ApplicationContext這個接口的全部類,包含了其繼承全部接口的方法。用Spring內部揭祕的比喻,比如這些東西都是用來裝水的,當發展到ApplicationContext這個容器的時候,它已是一個很是適合使用的容器了。讓咱們看下他得其中一個父接口(我不知道這麼稱呼對不對哈)ListableBeanFactory其中的一些端倪:這個接口在BeanFactory的基礎上增長了更多的方法,從其中幾個方法的命名中咱們能夠猜想到BeanDefinition這個詞的重要行,還有就是後面幾個方法中Annotation,應該是2.5的時候就加入的註釋resipotory,我的懷疑是跟註釋相關的方法(目前尚未研究到,後續會深刻研究)。io

    啊!時間飛快,十點了,得回去了。還要一個小時的地鐵哦~明天公司年前的最後一次上線!哈哈,要回黑龍江了...老爸老媽我回來啦~ table

    spring,我生活中的一部分... 春節回來落實街舞!...(哈哈,隨意的yy下,但願看到文章的前輩們多多多多的指點)容器

相關文章
相關標籤/搜索