1,首先知道String容器管理bean的原理:

     创建一个类,定义构造方法的参数为bean.xml文件,然后通过dom4j去读取bean.xml文件,得到一个或者多个javabean(id,class)对象(如果是多个bean节点就创建一个list集合来存储读取到的bean节点),然后实例化bean的节点,从list中遍历出所有的bean节点,并通过反射去实例化bean,建立一个Map<String,object>集合来存储实例化的bean对象,String的值为每个bean节点,object的值是通过java反射机制得到的bean的实例对象,最后可以从Map集合中得到bean的实例对象并返回。


2,String容器的依赖注入的原理:

      是在String容器管理bean的基础上,bean节点中加入了property属性,还是通过dom4i读取bean.xml获得所有的bean节点,并获取节点中的所有property属性(大多数是多个property属性,使用一个list集合还保存),封装到一个javabean中,遍历bean节点,并通过反射去实例化bean,然后通过java操作bean的内省来操作bean的属性获取property属性,通过java的反射机制获取属性的setter方法,调用setter.invoke(bean,value)来完成注入。

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐