又再開始讀 Spring 源碼,做一下筆記猎提,方便自己回顧。
最基礎(chǔ)的旁蔼,關(guān)于 BeanFactory
接口锨苏,可以認(rèn)為是容器的根基,其它功能更多的接口都是從這里擴展而來棺聊。
@Test
public void testSimpleLoad() {
BeanFactory bf = new XmlBeanFactory(new ClassPathResource("spring.xml"));
MyTestBean bean = (MyTestBean) bf.getBean("myTestBean");
Assertions.assertEquals("testString", bean.getTestStr());
}
上面代碼就是最基本的使用伞租。
而對應(yīng)的 xml 配置文件是這樣的:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="myTestBean" class="io.zwt.spring001.MyTestBean"/>
</beans>
至于 MyTestBean
只是一個簡單的 POJO 就不列出來了。
實際開發(fā)中限佩,很少會直接使用 BeanFactory
接口葵诈,一般使用 ApplicationContext
等。
從配置文件祟同,到可以使用的 Bean驯击,這個過程里邊主要有以下一些步驟:
- 讀取配置文件。
- 根據(jù)配置文件找到對應(yīng)的類耐亏,并進行實例化。
- 調(diào)用實例化后的實例沪斟。