Spring-春天的故事1

概念

【参考:SpringIOC的理解博客

IOC(Inversion of Control):控制反转,是一种spring的核心思想。对于spring框架来说,就是由spring来负责控制对象的生命周期和对象间的关系。所有的类都会在spring容器中登记,告诉spring你是个什么东西,你需要什么东西,然后spring会在系统运行到适当的时候,把你要的东西主动给你,同时也把你交给其他需要你的东西。所有的类的创建、销毁都由 spring来控制,也就是说控制对象生存周期的不再是引用它的对象,而是spring。对于某个具体的对象而言,以前是它控制其他对象,现在是所有对象都被spring控制,所以这叫控制反转。

DI(Dependency Injection):依赖注入,IoC的一个重点是在系统运行中,动态的向某个对象提供它所需要的其他对象,这一点是通过DI(Dependency Injection,依赖注入)来实现的。

spring容器

在SpringIOC容器读取Bean配置创建Bean实例之前,必须对其进行实例化。
实例化IOC容器的方法:
1、BeanFactory:IOC容器的基本实现,是Spring框架的基础设施,面向Spring本身。
2、ApplicationContext:是BeanFactory的子接口,提供了更多的高级特性。面向Spring框架的开发者,所有的应用场合都是直接使用它,而非底层的BeanFactory。

//ClassPathXmlApplicationContext是ApplicationContext实现类,从类路径中加载配置文件。
ApplicationContext ctx=new ClassPathXmlApplicationContext("applicationContext.xml");

依赖注入的方式

-属性注入

通过setter方法注入Bean的属性值或依赖的对象,使用< property>元素,使用name属性指定Bean的属性名称,使用value属性或value子节点指定属性值

-构造器注入

使用< constructor>元素进行配置,指定参数的位置index和参数的类型type去区分重载的构造器

-工厂方法注入(较少使用)

猜你喜欢

转载自blog.csdn.net/yeshenlucky/article/details/52854454