如何注册Spring Bean
- BeanDefinition
- 外部单体对象(对象的生命周期并不由Spring来直接管理)
Rumenz.java
package com.rumenz;
public class Rumenz {public void print(){System.out.println(".......");}
}
BeanDefinition(BeanDefinitionRegistry)
package com.rumenz;public class DemoApplication {public static void main(String[] args) {AnnotationConfigApplicationContext ac = new AnnotationConfigApplicationContext();registerBean(ac,"rumenz");//启动Spring上下文ac.refresh();//依赖查找Rumenz rumenz = (Rumenz) ac.getBean("rumenz");rumenz.print();//关闭Spring上下文ac.close();}private static void registerBean(BeanDefinitionRegistry reg, String beanName){BeanDefinitionBuilder bd=BeanDefinitionBuilder.genericBeanDefinition(Rumenz.class);reg.registerBeanDefinition(beanName,bd.getBeanDefinition());}}
外部单体对象(对象的生命周期并不由Spring来直接管理)
package com.rumenz;public class DemoApplication {public static void main(String[] args) throws InterruptedException {AnnotationConfigApplicationContext ac = new AnnotationConfigApplicationContext();//自己new一个对象Rumenz r=new Rumenz();ConfigurableListableBeanFactory beanFactory = ac.getBeanFactory();//注册一个对象beanFactory.registerSingleton("rumenz",r);//启动Spring上下文ac.refresh();//依赖查找Rumenz rumenz = (Rumenz) ac.getBean("rumenz");rumenz.print();//关闭Spring上下文ac.close();}}
源码:https://github.com/mifunc/Spring-register-bean-new
原文: https://rumenz.com/rumenbiji/.html
如何注册Spring Bean相关推荐
- Spring Bean 是什么?
本文内容如有错误.不足之处,欢迎技术爱好者们一同探讨,在本文下面讨论区留言,感谢. 文章目录 简述 Spring Bean 基础 定义Spring Bean BeanDefinition 元信息 命名 ...
- Spring中实体类为什么不需要注册成bean?
今天偶然想到一个问题,Spring中实体类为什么不需要注册成bean? 要理解为什么不用注入,首先就清楚注入的目的是什么?如果不注入,在程序中要使用某个类对象的方法,则需要去new一个对象.然后我们调 ...
- spring bean注册和注入覆盖
1.注册 //存储注册的俄BeanDefinition private final Map<String, BeanDefinition> beanDefinitionMap = ...
- Spring Bean四种注入方式(Springboot环境)
阅读此文建议参考本人写的Spring常用注解:https://blog.csdn.net/21aspnet/article/details/104042826 给容器中注册组件的四种方法: 1.@C ...
- Spring Bean配置方式之一:Java配置
简介: Spring bean 是使用传统的 XML 方法配置的.在这篇文章中,您将学习使用基于纯 Java 的配置而非 XML 来编写 Spring bean 并配置它们.本文将介绍可用来配置 be ...
- Spring Bean 装配和依赖注入
Spring IOC 容器的依赖注入工作可以分为两个阶段.第一个阶段可以认为是构建和收集 Bean 定义的阶段,在这个阶段中,我们可以通过 xml 或者 Java 代码的方式定义一些 Bean,然后通 ...
- Spring bean依赖注入、bean的装配及相关注解
依赖注入 Spring主要提供以下两种方法用于依赖注入 基于属性Setter方法注入 基于构造方法注入 Setter方法注入 例子: public class Communication {priva ...
- 使用 Java 配置进行 Spring bean 管理--转
概述 众所周知,Spring 框架是控制反转 (IOC) 或依赖性注入 (DI) 模式的推动因素,而这种推动是通过基于容器的配置实现的.过去,Spring 允许开发人员使用基于 XML 的配置,通过利 ...
- Spring5源码 - 07 Spring Bean 生命周期流程 源码解读02
文章目录 Pre 通俗流程 finishBeanFactoryInitialization Pre Spring5源码 - 06 Spring Bean 生命周期流程 概述 01 接上文 通俗流程 下 ...
最新文章
- C#阻塞队列BlockingCollection
- 在AWS第1部分中使用Terraform自动缩放组:基本步骤
- matlab连续型随机变量,matlab连续型随机变量的分布.doc
- UI设计灵感|迷人的概念加载动画设计
- [LeetCode]29 两数相除和一个小坑点
- 后缀转中缀表达式_中缀转后缀表达式代码实现(下)及计算器完整版
- opencv用python进行物体识别_教你用Python+opencv来识别物体的轮廓并标识显示
- 【LeetCode 剑指offer刷题】发散思维题2:43 n个骰子的点数
- 必须掌握的30种SQL语句优化
- HDU 3729 I#39;m Telling the Truth(二部图最大匹配+结果输出)
- 关于STM32xE系列芯片STOP模式下使用RTC唤醒所遇到的问题记录
- 下了一个游戏说计算机丢失,冰封64位win10系统下启动游戏提示计算机丢失XINPUT1-3.dll怎么办...
- python万能装饰器_python装饰器万能模板
- exlc表格怎么换行_在Excel中如何换行?Excel表格换行快捷键是什么?
- TweenMax说明
- mx330属于什么档次的显卡
- python如何返回一个列表_python如何返回元组,列表或字典的?
- dp 部分和问题及其扩展
- 一篇文章读完50篇摄影教程(托马斯的2016总结)
- 通过Mars3d在地图上加载风力发电机车模型
热门文章
- ARM环境中的c语言socket进程通信-转
- 从零开始学习OpenWrt完美教程-转
- POJ1426-Find The Multiple-深度优先搜索BFS
- 【去重和排序】同一个list下,Map或对象内相同属性值取另一个属性值的最小值或最大值
- 五大步完成JBOSS 5 多数据库的多数据源配置
- java.lang.NoClassDefFoundError: weblogic/rmi/extensions/DisconnectListener
- 用私有构造器或枚举类型强化Singleton属性(3)
- 四、CLR执行程序集中代码和IL代码简介
- 懒加载(延迟加载)之后,在使用数据过程中容易出现的bug
- bzoj 2761 平衡树