Spring框架IOC的入门理解

IOC(Inversion Of Control):控制反转。创建对象由以前的程序员自己new 构造方法来调用,变成了交由Spring创建对象,将创建对象管理对象的权限反转,教给spring容器控制。

DI 依赖注入 Dependency Inject. 简单地说就是拿到的对象的属性,已经被注入好相关值了,直接使用即可。

配置文件xml:

如下图是创建了两个bean,第二个ref=""注入类对象category1。。。有的写得是name,有的是id

(bean中的id和name的区别?试过了都可以加载。。。目前得到的解释:xml配置文件中<bean>标签的id属性和name属性基本上没有什么区别,但是使用id会更加符合规范,因为xml中id要求是唯一的。如果一个bean只配置了name属性,但是没有配置ID属性,默认会ID属性=name属性)。这个id相当于对象的一个标识号,通过getBean(“xml文件中定义的id”)来创建对象。class:为类路径。

加载配置文件:

加载配置文件通过getBean(“xml文件中定义的id”);

 

ApplicationContext  ac = new ClassPathXmlApplicationContext(“applicationContext.xml”)

如果是两个以上的配置文件:

 

ApplicationContext ac = new ClassPathXmlApplicationContext(new String[]{"applicationContext.xml","dao.xml"});

 

或者使用通配符:加载当前路径下所有的xml文件

ApplicationContext ac = new ClassPathXmlApplicationContext("classpath:/*.xml");

 

 

  比较:

      传统方式:通过new 关键字主动创建一个对象

      IOC方式:对象的生命周期由Spring来管理,直接从Spring那里去获取一个对象。 IOC是反转控制 (Inversion Of Control)的缩写,就像控制权从本来在自己手里,交给了Spring

      比喻:

传统方式:相当于你自己去菜市场new 了一只鸡,不过是生鸡,要自己拔毛,去内脏,再上花椒,酱油,烤制,经过各种工序之后,才可以食用。

      IOC:相当于去馆子(Spring)点了一只鸡,交到你手上的时候,已经五味俱全,你就只管吃就行了。。。

 

 

 

 

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值