AbstractBeanFactory 详解
AbstractBeanFactory 是 BeanFactory 实现类的抽象基类,提供了 ConfigurableBeanFactory SPI 的全部功能。该类不仅支持基于列表的 Bean 工厂,还可以作为基于其他后端资源获取 Bean 定义的工厂实现的基类。
该类提供了非常全面的功能,包括:单例缓存、单例和原型 Bean 的区分、FactoryBean 的处理、别名、子 Bean 定义的合并和 Bean 销毁等。此外,它还能够管理 Bean 工厂的层次结构,通过实现 org.springframework.beans.factory.HierarchicalBeanFactory 接口自动委托给父工厂,以实现未知 Bean 的获取。
子类需要实现的主要模板方法是 getBeanDefinition 和 createBean。前者用于检索给定 Bean 名称的 Bean 定义,后者根据给定 Bean 定义创建 Bean 实例。这些操作通常在 DefaultListableBeanFactory 和 AbstractAutowireCapableBeanFactory 中实现。
总的来说,AbstractBeanFactory 提供了丰富的功能和通用的 SPI 支持,非常适合作为 BeanFactory 实现类的基类。
AbstractBeanFactory 是 Spring 容器中 BeanFactory 接口的一个抽象实现类,它包含以下属性:
1. parentBeanFactory:父级BeanFactory,如果当前BeanFactory无法解析请求Bean,则会委托父级BeanFactory进行解析。
2. beanClassLoader:Bean类的类加载器。
3. tempClassLoader:用于创建Bean的临时类加载器。
4. cacheBeanMetadata:是否缓存Bean元数据。
5. beanExpressionResolver:用于解析SpEL表达式的BeanExpressionResolver对象。
6. conversionService:用于处理类型转换的ConversionService对象。
7. propertyEditorRegistrars:PropertyEditorRegistrar对象列表,用于定制Bean属性编辑器。
8. customEditors:自定义PropertyEditor对象的映射,用于转换Bean属性的值。
9. typeConverter:类型转换器,用于处理类型转换的操作。
10. embeddedValueResolvers:EmbeddedValueResolver对象列表,用于处理Bean属性中的占位符。
11. beanPostProcessors:BeanPostProcessor对象列表,用于在Bean的初始化前或后执行一些回调操作,用于实现AOP和其他功能。
12. beanPostProcessorCache:用于缓存BeanPostProcessor对象的ConcurrentMap。
13. scopes:一组注册的BeanScope对象。BeanScope表示Bean的生命周期范围。
14. mergedBeanDefinitions:所有Bean定义的缓存,包括原始和包装的Bean定义。
15. alreadyCreated:已创建的Bean的缓存,包括用于提前实例化的单例Bean和非单例Bean的缓存。
16. prototypesCurrentlyInCreation:当前正在创建的原型模式Bean的缓存。
17. applicationStartup:应用程序启动的时间戳。
东方甄选的“小号”,悄悄超越罗永浩
东方甄选模仿秀大都没能获得成功,除了东方甄选自己。第三方数据平台飞瓜数据显示,在618收官之战当天,东方甄选旗下账号“东方甄选美丽生活”带货额为1000万-2500万元,超过了交个朋友抖音直播间的500万-750万元。而抖音整个618期间(5月25日-6月18日),东方甄选美丽生活带货直播销售额为2.5亿-5亿元,交个朋友抖音直播间销售额同样为2.5亿-5亿元。站长网2023-06-24 14:17:060000宋铮直播救天涯
小黑变成老黑在开始的6分钟里,麦克风收到的都是后台工作人员淅淅索索的杂音,主播老黑坐在椅子上,两只无处安放的手紧紧握在一起。在美颜的效果下,51岁的他在镜头里粉面桃腮,瘦削的脸型显出不自然的尖。因为紧张,麦克风的收音刚刚恢复,他就把嘉宾的名字喊错了。兵荒马乱的开场后,老黑急忙连线其他会场的天涯老用户,结果几次连线,老黑和对面各说各的,麦克风里时不时爆发出尖锐的电流声,场面乱成一锅粥。站长网2023-05-29 11:37:020000周鸿祎称已拜俞敏洪为师:努力在网红领域取得一席之地
近日,在备受瞩目的亚布力中国企业家论坛第24届年会上,知名企业家周鸿祎以一身红衣亮相,并发表了引人深思的演讲。在大会上,周鸿祎以幽默的方式首先澄清了自己的身份,他强调自己是“红衣大叔”,而非外界所称的“红衣主教”、“红衣教主”或“红衣大炮”。这一自嘲式的开场白为整个演讲增添了几分轻松和幽默。站长网2024-02-23 09:02:460000谷歌计划将在印度和日本推广人工智能搜索
站长之家(ChinaZ.com)8月31日消息:谷歌日前宣布,其人工智能驱动的搜索生成体验(SGE)计划正在进军印度和日本市场,以进一步拓展其在人工智能搜索领域的布局。该功能目前仍处于邀请加入的阶段。站长网2023-08-31 10:13:160000OpenAI 就其 DALL-E 3 人工智能生成图像检测工具发表犹豫立场
站长之家(ChinaZ.com)10月20日消息:OpenAI一直在就何时发布一款工具,用于确定一张图像是否由DALL-E3生成,OpenAI的生成式人工智能艺术模型,进行了广泛的「讨论和辩论」。但这家初创公司并不打算在短期内做出决定。站长网2023-10-20 09:11:150003