Java手写简易spring ioc实战。

准备环境

1.一个maven web工程
2.引入dom4j依赖

<dependency>
      <groupId>org.dom4j</groupId>
      <artifactId>dom4j</artifactId>
      <version>2.1.3</version>
    </dependency>

3.创建一个spring.xml
Java手写简易spring ioc实战。_第1张图片
4.创建BeanFactory用于解析xml,注册bean等操作
Java手写简易spring ioc实战。_第2张图片

实现思路

1.首先解析spring.xml, 如下关键代码,得到一个document
Java手写简易spring ioc实战。_第3张图片
2.得到beans下的所有bean,然后全部注册到ioc中去, 关键代码如标记处
Java手写简易spring ioc实战。_第4张图片
3. 还需要检查bean是否需要注入属性比如图中 userDao需要注入值
Java手写简易spring ioc实战。_第5张图片
且xml中明确定义了需要注入Java手写简易spring ioc实战。_第6张图片

  1. 用一个List记录哪些bean标签需要注入属性
    在这里插入图片描述
    5.执行注入属性的值
    Java手写简易spring ioc实战。_第7张图片

源码

源码放gitee上 模拟spring ioc: 码云.

你可能感兴趣的:(Java,spring,spring,bean,xml,java,ioc)