一 .spring容器
我們先來了解一些spring 中的關(guān)鍵詞spring 的IOC容器, XML配置文件 ,@Configuration净宵, @Bean 汇跨,javaConfig 呛占, Annotation承粤。
以前的java spring開發(fā)中 許多關(guān)于文件配置的相關(guān)信息都存放在xml文件中暴区。文件的一些作用在筆記一中有提起闯团。注冊bean(聲明需要收集資源),收集bean(收集資源),分析bean(分析資源中的依賴關(guān)系),還有組裝bean(按什么方法給組件返回資源) 仙粱。與之相對應的后期我們大多使用javaConfig 這種方式 即通過Annotation(@關(guān)鍵字)的方式來進行配置 與xml文件相對應的便有@Configuration 配置類.
IOC容器:常常用到的代碼
//創(chuàng)建spring ioc對象
//ApplicationContext 代表IOC容器
ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");
spring 提供了有兩種類型的IOC容器實現(xiàn)
第一種
BeanFactory(IOC容器的基本實現(xiàn)):BeanFactory是Spring框架的基礎(chǔ)設(shè)施房交,面向Spring本身;
第二種
ApplicationContext(提供了更多的高級特性伐割,是BeanFactory的子接口)ApplicationContext面向使用Spring框架的開發(fā)者
幾乎所有的應用場合都直接使用ApplicationContext而非底層的BeanFactory候味。
ApplicationContext的主要實現(xiàn)類有兩個
一個是ClassPathXmlApplicationContext類,另一個是FileSystemXmlApplicationContext
ClassPathXmlApplicationContext:從類路徑下加載配置文件隔心,該實現(xiàn)類擴展于ApplicationContext白群,新增加了兩個主要方法:refresh()和close(),讓ApplicationContext具有啟動、刷新和關(guān)閉上下文的能力济炎。(上下文具體指的是資源所在路勁)川抡。ApplicationContext在初始化上下文時就實例化所有單例的Bean辐真。WebApplicationContext是專門為WEB應用而準備的须尚,它允許從相對于WEB根目錄的路徑中完成初始化工作。
FileSystemXmlApplicationContext:從文件系統(tǒng)中加載配置文件侍咱。