模拟Spring容器
上一篇文章已经学习了,怎么样把bean交给Spring容器来管理,怎样从容器获取bean。这里就有疑问了,Spring到底是怎么样帮我们创建这个bean的?
接下来通过创建模拟Spring容器,新建一个容器类XjjClassPathXMLApplicationContext,帮助我们理解Spring容器是如何管理bean的。
第一步:读取配置文件(用dom4j读取配置文件)
读取配置文件时,每读到一个bean,就把他的内容存放在一个JavaBean(BeanDefinition.java)中去,在配置文件中我们看到bean有两个属性:id和class属性
第二步:对从配置文件中读到的bean进行实例化---用到了反射机制,通过获取的class名称把它变成一个对象,然后用newInstance()进行实例化。
通过循环把bean创建出来