spring的IOC的简单理解

之前看了一下源码,看的挺吃力,只能是慢慢看了。

简单说一下springIOC的我的理解,IOC也叫控制反转,可以有效的减低各个组件之间的耦合度

想象一下,如果不用IOC,那么系统里面会有大量的new 的对象,这些对象什么时候创建什么时候销毁,哪些里面有数据,想想就觉得很乱对不对。

然后IOC就出来了,就是简单的吧bean交由spring容器来进行处理,在开发的过程中不必去new一个对象,因为在spring容器启动的时候

就已经帮你创建好 了,你只需要去调用即可,就像之前那篇文章写的一样,把bean注入spring容器里面

然后调用,通过bean注册的ID拿到bean,然后进行使用即可

@Test    
    public void test02() {
    //    ApplicationContext applicationContext=new ClassPathXmlApplicationContext("bean.xml");
        //通过AnnotationConfigApplicationContext获取配置文件
        //然后通过bean的ID 获取bean
        ApplicationContext applicationContext=new AnnotationConfigApplicationContext(MainConfigII.class);
        Color c= (Color) applicationContext.getBean("Color");
     System.out.println(c.toString());
    //    Person person2=(Person) applicationContext.getBean("person");
        //System.out.println(person==person2);
    }

这看似简单的代码后面,有一大堆底层的实现,目前就简单的说一下,后面再慢慢把源码看清,把笔记写出来。

总的来说,就是通过类名和反射来实现IOC。

猜你喜欢

转载自www.cnblogs.com/hickup089/p/9916917.html
今日推荐