使用BeanFactory注册自定义bean,非注解方式

spring-全量自定义-BeanFactory BeanFactory是接入spring-bean容器的基本客户端视图。有比较复杂的实现。其中,bean的完整初始化顺序如下:具体请参照BeanFactory源码 <ol> * <li>BeanNameAware's {@code setBeanName} * <li>BeanClassLoaderAware's {@code setBeanClassLoa... 阅读详情

1.注册bean代码

@Service
public class CommandLineIoc implements InitializingBean, BeanFactoryAware {

    private ConfigurableListableBeanFactory beanFactory;

	//注入beanFactory
    @Override
    public void setBeanFactory(BeanFactory beanFactory) throws BeansException {
        this.beanFactory = (beanFactory instanceof ConfigurableListableBeanFactory)
                ? (ConfigurableListableBeanFactory) beanFactory : null;
    }


	//初始化时将自定义的bean放入spring容器中使用
    @Override
    public void afterPropertiesSet() throws Exception {
        Mybean myBean = new Mybean ();
        //注入属性到Mybean中
        myBean.setEntity	("属性1");
        beanFactory.registerSingleton("myBean ", myBean );
    }
}

2.使用spring注解注入bean并获取属性

 @Resource
    private MyBean myBean ;

    @RequestMapping(path = "/hh", method = RequestMethod.GET)
    @ResponseBody
    public Object testApiOrign(){
     	System.out.println("------1-------" );
        System.out.println(myBean.getEntity() +  "======" );
 
    }

在这里插入图片描述

Spring条件化Bean注册机制与@Conditional注解实战 条件化Bean注册是Spring框架的核心特性之一,通过@Conditional注解实现动态控制Bean的创建。其原理是基于Condition接口的条件判断,在容器启动阶段决定是否注册特定Bean。这种机制在微服务架构和多环境配置中尤为重要,能够实现按需加载组件,有效管理依赖关系。SpringBoot进一步扩展了该机制,提供@ConditionalOnClass、@ConditionalOnProperty等实用注解。典型应用场景包括支付渠道动态加载、多数据源切换、功能模块按需启用等。合理使用条件注册可以提 阅读详情

相关推荐

【Spring源码】7. 如何添加自定义的BeanFactoryPostProcessor

如何添加自定义的BeanFactoryPostProcessor? 新建两个类,分别实现BeanFactoryPostProcessor接口和BeanDefinitionRegistryPostProcessor接口(任选一个也可以,本文为了介绍全面,两个同时举例🌰)

aqin1012的博客 2221

自定义BeanFactory动态工厂

​ package com.pojo; import java.util.Map; public class Bean { //根据反射来设计Bean类 private String id;//bean的id private String className;//全类名 private Map&lt;String,Object&gt; pro...

baidu_36583119的博客 1978

深入瑞芯微SDK:手把手解析Uboot、Kernel到Rootfs的镜像生成与烧录

本文深入解析瑞芯微SDK中从Uboot、Kernel到Rootfs的镜像生成与烧录全流程,揭示编译背后的技术细节。通过详细分析SDK架构、镜像生成流水线、分区表定制、Rootfs构建及烧录科学,帮助开发者从会编译进阶到懂原理,掌握系统级开发的关键技术。

weixin_29193359的博客 274

Spring系列 BeanFactory是如何注册Bean 代码实现(超通俗易懂版)

BeanFactory 作为Spring框架最顶层的一个接口类,它定义了 IOC 容器的基本功能规范,BeanFactory 有三个子类:ListableBeanFactory、HierarchicalBeanFactory 和 AutowireCapableBeanFactory。但是从上图中我们可以发现最终的默认实现类是 DefaultListableBeanFactory,实现了所有的接口。因此本文就DefaultListableBeanFactory类来实现BeanFactory操作Bean。

weixin_45663027的博客 806

深入解析数据通信中的码元速率与比特率:从基础到实战应用

本文深入解析了数据通信中的核心概念码元速率与比特率,通过生动的比喻和公式(比特率=波特率×log₂(M))揭示其本质关系。文章结合BPSK、QPSK、16QAM等调制技术,剖析了从4G/5G到LoRa等实战场景中如何权衡速率、距离与可靠性,并提供了软考真题解析与系统设计建议,帮助读者从理论到应用全面掌握数据速率优化。

weixin_29324877的博客 214

图像特征(一)——颜色特征(颜色直方图,颜色矩,颜色集,颜色聚合向量和颜色相关图)

本文主要是为了更好地理解图像特征,理解各方法的原理。转载请注明出处https://mp.youkuaiyun.com/console/editor/html/105090183 图像模式识别的一般步骤为:输入图像--图像预处理--特征提取--特征选择--图像分类--输出结果。 图像特征主要有:颜色特征、形状特征、纹理特征和空间关系特征。 本文主要介绍颜色特征,并给出matlab上实现的demo。 颜...

gloria_iris的博客 3万+

java自定义工厂类_自定义Spring工厂类BeanFactory

自定义Spring工厂类BeanFactorySpring的概述概述:Spring是一个轻量级开源框架,整合了大量的第三方框架。优势:方便解耦,简化开发Aop编程的支持声明式事务的支持方便程序的测试方便集成各种优秀框架解耦:耦合:程序间的依赖关系,类之间的解耦,方法之间的解耦。解耦:降低程序间的依赖。类之间的解耦:1.使用反射来创建对象,而避免使用new关键字。2.通过读取配置文件来获取要创建对象...

weixin_30670103的博客 526

TI C2000 , .cmd文件,.TI.ramfunc,将程序分配为在RAM中运行/Flash运行的配置方法和原理讲解,(如28375S ,280049,28335等等芯片)

1 基础知识讲解 1.1 在RAM中运行还是在flash中运行指的是什么? 1.1.1 背景:程序编译完之后生成的.bin文件,.bin文件中包含代码段,代码段中全是汇编指令,而汇编指令中包含多个函数,各函数头的地址不同,如存在A函数和B函数,假设RAM地址区间是0x0000-0x8000,flash的地址区间是0xA000-0xF000,A函数要调用B函数,则A函数调用B函数的那段汇编指令中包含的是B函数头的存储地址,A函数和B函数都在flash中有存储 1.1.2 情况1:B函数是配置为在RAM中运行,

weixin_43776284的博客 8069

项目导入第三方jar包,添加依赖,将包内的非自定义类的对象放入IoC容器中

在启动类上添加注解@Import(XXX.class),Spring会自动的把XXX类(可以是普通类或配置类)对应的bean对象注入到IoC容器中。注意:CommonConfig类需要放到启动类所在的包及其子包中,才可被扫描。在启动类声明方法,返回值创建一个类的对象,并在方法上面添加注解@Bean。、AOP、事件、国际化、资源加载、注解扫描等)。日常开发基本都用它。更改名字:在@Bean("new name"):最基础的 IoC 容器(懒加载、功能少)。,也就是 IoC 容器 的实现与扩展:负责。

sbxbjjj的博客 337

ROS水下仿真神器uuv_simulator:从零搭建水下机器人测试环境(附Gazebo配置全流程)

本文详细介绍了如何使用ROS和uuv_simulator从零搭建水下机器人仿真测试环境,包括Gazebo配置全流程。通过系统环境准备、水下世界构建、机器人模型定制开发等步骤,帮助开发者在虚拟海洋环境中高效验证算法,大幅降低研发成本。特别适合水下机器人研发人员参考。

ujm5678901的博客 263

RT-DETR改进策略【RT-DETR和Mamba】| 替换骨干 Mamba-RT-DETR-T !!! 最新的发文热点

模块是模型中的一个重要组成部分,其主要作用是在模型的初始阶段对输入图像进行处理,方便后续的特征提取和目标检测。以下是对。

Limiiiing的博客 1324

Spring之BeanFactory详解

Spring的本质是一个bean工厂(beanFactory)或者说bean容器,它按照我们的要求,生产我们需要的各种各样的bean,提供给我们使用。只是在生产bean的过程中,需要解决bean之间的依赖问题,才引入了依赖注入(DI)这种技术。也就是说依赖注入是beanFactory生产bean时为了解决bean之间的依赖的一种技术而已。 beanFactory会在bean的生命周期的各个阶段中对bean进行各种管理,并且spring将这些阶段通过各种接口暴露给我们,让我们可以对bean进行各种处理,我们

weixin_44399827的博客 1万+

3. LangGraph快速入门

本示例中,我们将使用 Claude Sonnet 4.5 模型,并定义加法、乘法、除法工具。# 定义工具@toolArgs:"""@toolArgs:"""@toolArgs:"""# 为大模型绑定工具图的状态用于存储消息和大模型调用次数。LangGraph 中的状态在整个智能体执行过程中保持持久化。使用带的Annotated类型可以确保新消息追加到现有列表,而不是替换列表。模型节点用于调用大模型,并决定是否调用工具。return {],

Long_像风一样自由 842

Bean专题——什么是Bean?怎么注册、使用?生命周期?作用域?

1.什么是Bean? Bean是被实例的、组装的、及被Spring容器管理的Java对象。 Spring容器会自动完成Bean对象的实例化。 创建应用对象之间的协作关系的行为被称为:装配,这就是依赖注入的本质。 2.Spring三种装配方案 1.隐式的bean发现机制和自动装配; 1.涉及注册Bean的注解:@Component , @Repository , @ Controller , @Service , @Configration;(这些注解只局限于自己编写的类)。 2.使用Bean的注解:@

m0_38057941的博客 3754

在 SAP HANA 与 HANA Cloud 中,用 SQL DDL 创建数据库视图:从设计时工件到运行时对象的全链路实践

本文介绍了在SAP HANA中通过HDI容器使用DDL定义视图的方法。主要内容包括:1)采用.hdbview设计时工件存储视图定义,构建时自动转换为运行时视图,实现版本控制和权限隔离;2)开发前需准备HDI容器、MTA项目及配置.hdiconfig文件;3)详细说明.hdbview语法结构,重点讲解WITH READ ONLY和WITH STRUCTURED PRIVILEGE CHECK的使用场景;4)提供了从创建文件到构建验证的完整流程示例;5)强调跨容器访问时需通过.hdbgrants为#OO用户授予

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 275

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

Bean的存取、五大注解、对象的注入方式、Bean的作用域和生命周期

PS:Java语言中的对象也叫作 Bean。PS:要在 pom.xml 中添加 spring 框架支持启动类(包含main方法即可):创建bean:配置文件: 注册bean:类注解:@Controller、@Service、@Repository、@Component、@Configuration注解的作用:便于直接了解类的作用。1.1.1、@Controller(控制器)——表示的是业务逻辑层,接口的最外层,验证参数接口的正确性或者参数的转换、返回。存储 bean:读取 bean: 1.1.2、@Se

qq_56324572的博客 2264

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

Spring解密笔记: BeanFactory的对象注册与依赖绑定方式

通过阅读spring解密 笔记

c568468995的博客 522

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Spring关于Bean的一些注入方式

目录注册方式需要注册的Bean具体实现1. 通过配置XML注册2. 通过@Bean注册2. 通过Beanfactory动态注入总结附录 注册方式 通过配置XML注册 通过@Bean注册 通过Beanfactory注入 需要注册的Bean /** * @Description: 自定义Bean * @Author: Jonas * @Date: 2020-06-01 22:52 */ @Data @Slf4j public class MyBean { private String n

龙喵先森的博客 709

Spring容器之BeanFactory

引言 Spring提供了两种容器类型: BeanFactory ApplicationContext 其中ApplicationContext间接继承自BeanFactory,两者最大的不同是容器初始化策略。 BeanFactory采用懒加载(lazy-load)策略,即当客户端需要访问容器内的某个对象时,才对该对象进行初始化以及依赖注入操作。所以该模式下,启动速度较快,适用于资源有限,对功...

打酱油的葫芦娃 5558

spring导入bean的多种方式

ClasspathXmlApplicationContext也是IOC容器工厂中的一员,默认 从classpath中获取XML配置,使用 XmlBeanDefinitionReader 进行解析配置,这是一个简单的、一站式便利的ApplicationContext。你可以指定包路径,也可以不指定包路径,你不指定包路径的话,他会默认扫描本层和子目录下带有controller,service,等,然后把bean注入到spring容器中管理。它是核心,是 Spring 注册及加载Bean 的默认实现。

m0_51798113的博客 786

怎么使用Sprng提供的容器去注册一个Bean对象(BeanFactory工厂)

beanFactory 不会做的事不会主动调用BeanFactory的后处理器不会主动添加Bean的后处理器不会主动初始化单例(懒加载)不会解析BeanFactory,还不会解析 ${}, #{}

qq_48575500的博客 488

BeanFactory和它的对象注册和依赖绑定的三种方式

一、Spring中的BeanFactory是什么?   BeanFactory是个基本的IoC容器,提供完整的IoC服务支持,负责对象创建的管理和依赖注入服务   如果没有特殊指定,默认采用延迟初始化策略(lazy-load)。只有当客户端对象需要访问容器中的某个受管对象的时候,才对该受管对象进行初始化以及依赖注入操作 public interface BeanFactory { ...

子衿_青青的博客 1859

第 4 章 Spring IoC容器之BeanFactory

Spring 的 IoC 容器是一个提供 IoC 支持的轻量级容器,除了基本的 IoC 支持,它作为轻量级容器还提供了 IoC 之外的支持。和BeanFactory 肯定会公开一个取得组装完成的对象的方法接口。

weixin_45740473的博客 986

2.spring中注册bean的几个组件(conditional,import,beanfactory)

一.conditional Spring4提供了一个更通用的基于条件的Bean的创建,即使用@Conditional注解。 @Conditional根据满足某一个特定条件创建一个特定的Bean。 实现方式:自定义一个类实现org.springframework.context.annotation.Condition接口,在其matches方法中写自己的校验方式 package com....

m0_38125704的博客 244

Spring容器初始化-BeanFactory及Bean定义初始化

系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 例如:第一章 Python 机器学习入门之pandas的使用 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录系列文章目录前言 前言 上下文对象初始化,也就是容器初始化,首先创建BeanFactory,以及Bean定义初始化 XmlWebApplicationContext继承AbstractApplicationContext 调用AbstractApplicationContext.refre

雾林湘竹 718

Spring之多种注入Bean方式

1.使用@Configuration配置容器 //MySpringConfig.java @Configuration //等同于配置的spring配置文件 @Lazy//默认开启懒加载(True) public class MySpringConfig { @Bean public User user() { return new User(10, "小明"); ...

Dreamer. 794
上一篇: mysql 慢查询排查流程
下一篇: spring.factories 注入bean,以切面为例
维诺菌
博客等级 码龄10年 32粉丝 39原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值