IoC容器:
IoC容器是具有依赖注入功能的容器,负责对象的实例化、对象的初始化,对象和对象之间依赖关系配 置、对象的销毁、对外提供对象的查找等操作,对象的整个生命周期都是由容器来控制。我们需要使用 的对象都由ioc容器进行管理,不需要我们再去手动通过new的方式去创建对象,由IoC容器直接帮我们 组装好,当我们需要使用的时候直接从ioc容器中直接获取就可以了。
这里所说的IoC容器也是Spring容器。
IoC容器的配置:
- 支持xml的配置文件
- 基于注解的方式
Bean的概念:
就是普通的Java对象,Spring容器管理的对象统称为Bean对象。
Spring容器的使用:
- 创建Maven工程
- pom.xml中引入依赖
- 创建bean配置文件(bean.xml)
- 在bean.xml中定义bean对象
- 创建spring容器,并给容器指定需要装载的bean配置文件,当spring容器启动之后,会加载这些配置文件,然后创建好配置文件中定义好的bean对象,将这些对象放在容器中以供使用
- 直接使用bean对象
Spring容器对象:
BeanFactory接口
org.springframework.beans.factory.BeanFactory
常用方法
//按bean的id或者别名查找容器中的bean
Object getBean(String name) throws BeansException
//这个是一个泛型方法,按照bean的id或者别名查找指定类型的bean,返回指定类型的bean对象
<T> T getBean(String name, Class<T> requiredType) throws BeansException;
//返回容器中指定类型的bean对象
<T> T getBean(Class<T> requiredType) throws BeansException;
//获取指定类型bean对象的获取器
<T> ObjectProvider<T> getBeanProvider(Class<T> requiredType);
ApplicationContext接口
org.springframework.context.ApplicationContext
ClassPathXmlApplicationContext类
org.springframework.context.support.ClassPathXmlApplicationContext
AnnotationConfigApplicationContext类
org.springframework.context.annotation.AnnotationConfigApplicationContext
引入的3个依赖
- spring-core
- spring-context
- spring-beans
<!-- 一个bean标签就代表一个bean对象
id:唯一标识,通过id就可以获取该bean对象
class:全类名
-->
<bean id="" class=""></bean>