-
概念
- 在每个框架的中都有一个容器的概念,所谓的容器就是将常用的服务,封装起来,然后,用户只需要遵循一定的规则,就可以达到统一、灵活、安全、方便、快速的目的
- 具有依赖注入功能的容器,负责实例化、定位、配置应用程序中的对象及建立这些对象间的依赖
-
Bean的概念
- 由IoC容器管理的那些组成你应用程序的对象我们就叫它Bean
- Bean就是由Spring容器初始化、装配及管理的对象,除此之外,bean就与应用程序中的其他对象没有什么区别了
-
元数据BeanDefinition
- 确定如何实例化Bean、管理Bean之间的依赖关系以及管理Bean,这就需要配置元数据,在Spring中由BeanDefinition代表
-
如何工作的
- 以xml配置方式,简单解释
-
准备配置文件
- 配置文件中声明Bean定义也就是为Bean配置元数据。
-
由IoC容器进行解析元数据
- IoC容器的Bean Reader读取并解析配置文件,根据定义生成BeanDefinition配置元数据对象,IoC容器根据BeanDefinition进行实例化、配置及组装Bean
-
实例化IoC容器
- 由客户端实例化容器,获取需要的Bean
-
hello world
- @Test
public void testHelloWorld() {
//1、读取配置文件实例化一个IoC容器
ApplicationContext context = new ClassPathXmlApplicationContext("helloworld.xml");
//2、从容器中获取Bean,注意此处完全“面向接口编程,而不是面向实现”
HelloApi helloApi = context.getBean("hello", HelloApi.class);
//3、执行业务逻辑
helloApi.sayHello();
}