SpringIOC原理

手写SpringIOC框架
    什么是SpringIOC
    什么是SpringIOC,就是把每一个bean(实体类)与bean(实体了)之间的关系交给第三方容器进行管理。

什么是SpringIOC底层实现原理
    1.读取bean的XML配置文件
    2.使用beanId查找bean配置,并获取配置文件中class地址。
    3.使用Java反射技术实例化对象
    4.获取属性配置,使用反射技术进行赋值。
详细步骤
    1.利用传入的参数获取xml文件的流,并且利用dom4j解析成Document对象
    2.对于Document对象获取根元素对象<beans>后对下面的<bean>标签进行遍历,判断是否有符合的id.
    3.如果找到对应的id,相当于找到了一个Element元素,开始创建对象,先获取class属性,根据属性值利用反射建立对象.
    4.遍历<bean>标签下的property标签,并对属性赋值.注意,需要单独处理int,float类型的属性.因为在xml配置中这些属性都是以字符串的形式来配置的,因此需要额外处理.
    5.如果属性property标签有ref属性,说明某个属性的值是一个对象,那么根据id(ref属性的值)去获取ref对应的对象,再给属性赋值.
    6.返回建立的对象,如果没有对应的id,或者<beans>下没有子标签都会返回null

简单来说:

    先解析XML格式,然后获取到class,name,value, 在通过java反射机制获取到类,在给属性进行赋值

 

 

 

转载于:https://my.oschina.net/u/3578766/blog/1602333

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值