在面试中问到spring怎么加载bean的   最好的答案应该是什么   越简单越好

解决方案 »

  1.   

    反射,绝对的。
    properties或XML中有如下配置
    beanname_xxx=fullclassnameyyy有个BeanFactory
    简单的
    public Object getBean(String className){
      String realClassName = props.get(ClassName); //props(Properties,通过getResourceAsStream等..加载配置文件),或用xml相加的工具加载出配置文件中的键值对或其它的配置信息等。
      return Class.forName(realClassName).newInstance(); //异常处理下...
    }
      

  2.   

    IOC(Inverser Of Control)控制反转机制,就是对象的创建不是由硬代码来决定,而是由Spring来给对象赋值,也就是DI(Dependency injection)依赖注入同时也利用了反射机制,基本上没有反射机制就没有框架的智能性了
      

  3.   

    通过读取xml文件,获取相关信息。然后通过反射技术构造对象