Spring4框架---SpringIOC概述

在这里插入图片描述

  • 通俗理解:
    • 生活中如何缺少某样东西,例如缺少一个扳手工具,正常思路是:到商店中买一把扳手,这就是传统资源查找方式:“组件向容器发起请求查找资源”
    • 逆向思维:在家门口放一个篮子,上面写在我缺少一个扳手,之后由商店将扳手送过来放到篮子中,这就是:“反转资源获取方向”

在IOC之前获取对象的方式

  1. 分离接口与实现
  • 在之前如果要实例化一个DAO操作类对象,需要知道这个DAO操作类的父接口,以及这个接口的实现子类,接着才可以实例化该DAO操作类的对象
IDeptDAO deptdao = new DeptDAOImpl();

在这里插入图片描述

  1. 采用工厂模式
  • 第二种方式就是使用代理工厂类来实例化DAO操作对象,通过反射的方式获取DAO操作对象
IDeptDAO deptdao = DAOFactory.newInstance(DeptDaoImpl.class);

在这里插入图片描述

IOC获取对象方式

  • IOC通过IOC容器获取操作对象,这样就不需要知道任何对象操作的实现细节
ApplicationContext app =new ClassPathXmlApplicationContext("spring-config.xml");
//getBean()方法参数为配置文件中\<bean\>标签的id值
HelloWorld helloWorld = (HelloWorld) app.getBean("deptdao");

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_43386754/article/details/88047095