Spring core是核心層,擁有這BeanFactory這個強大的工廠,是所有bean的管理器;
spring context是上下文運行環境,基於spring core之上的一個架構。
Spring core是用來負責發現、創建並處理bean之間的關係的一個工具包;可以這麼理解,core把bean的創建、bean的互相注入的方法定義好了,上層服務只需要調用就好了;提供功能但不調用就是spring core的存在意義。
Context就是一個Bean關係的集合,這個關係集合又叫Ioc容器,一旦建立起這個Ioc容器後Spring就可以爲你工作了。
Context作爲Spring的Ioc容器,基本上整合了Spring的大部分功能,或者說是大部分功能的基礎,所以它調用了大部分的spring core中的方法。
Context給 Spring 提供一個運行時的環境,用以保存各個對象的狀態
1.工廠BeanFactory,,如果使用BeanFactory來加載Spring配置文件,那麼是在調用getBean時,框架調用對象的默認構造方法來創建對象。BeanFactory功能是對bean對象的生命週期進行管理的。(創建,初始化,銷燬)。
2.ApplicationContext(推薦,也是框架默認的)對象來加載Spring配置文件,會在加載時解析配置文件,創建對象,而不是在getBean時創建。其實,ApplicationContext接口繼承了BeanFactory,所以具備BeanFactory所有功能,同時增加擴展的功能,例如加載資源配置文件