前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Spring核心--容器详解

Spring核心--容器详解

作者头像
哲洛不闹
发布2021-07-01 15:29:36
5420
发布2021-07-01 15:29:36
举报
文章被收录于专栏:java一日一条java一日一条

Spring容器是什么

从概念上讲:Spring 容器是 Spring 框架的核心,是用来管理对象的。容器将创建对象,把它们连接在一起,配置它们,并由其通过IoC技术管理,串联他们的整个生命周期从创建到销毁。

从具象化讲:通过概念的描述有些同学还是一脸懵逼,在我们的项目中哪个东西是Spring容器?在java项目中,我们使用实现了org.springframework.context.ApplicationContext接口的实现类。在web项目中,我们使用spring.xml——Spring的配置文件。

Spring容器的功能包括:

Spring容器的类别及其特点:

具体的源码实现:

创建Spring Bean 是典型的工厂模式

BeanFactory 是最顶层的一个接口类,定义了IOC 容器最基本功能规范。

BeanFactory 有个重要的子类

ListableBeanFactory、HierarchicalBeanFactory、AutowireCapableBeanFactory

从类图中可以看到最终的默认实现类是DefaultListableBeanFactory,实现了所有的接口

定义这么多层接口的目的:每个接口都有它使用的场合,主要是为了区分在Spring 内部操作对象的传递和转化过程,对对象数据访问所做的限制

ListableBeanFactory 这些Bean 是可列表化

HierarchicalBeanFactory 表示Bean是有继承关系的

AutowireCapableBeanFactory bean的自动装配

三个接口总结:Bean的集合、Bean之间的关系、Bean行为

BeanFactory 只定义了IOC 容器的基本行为,不关心bean 是如何定义加载的。 IOC 容器具体的实现需要了解GenericApplicationContext、ClassPathXmlApplicationContext等

BeanDefinition 描述了Spring IOC容器中bean 之间的关系

Bean 的解析主要是对配置文件进行解析,这个过程较复杂,功能被分的很细,这个解析过程就是通过BeanDefinitionReader 来完成

到这里对Spring 框架体系有了一个基本了解,后续会持续更新

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-06-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 java一日一条 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档