当前位置: 首页 > news >正文

spring如何给bean动态取不同的别名

开源项目SDK:https://github.com/mingyang66/spring-parent
个人文档:https://mingyang66.github.io/raccoon-docs/#/

spring、springboot向容器中注入bean的时候一般情况下只有一个别名,在某些特殊场景需要指定多个别名。

方案一:通过@Bean注解指定多个不同的别名
    @Bean(name = {"name1", "name2"})public People people() {return new People();}

上述方案可以指定多个beanname,但是有一个缺点,不可以动态的指定别名,即服务启动后通过配置文件或其它条件判定来指定不同的别名。

方案二:通过DefaultListableBeanFactory容器对象指定别名

    @Autowiredprivate DefaultListableBeanFactory factory;@Beanpublic People people() {People people = new People();factory.registerSingleton("name1", people);factory.registerSingleton("name2", people);return people;}

上述方案给同一个实例对象命名了三个别名,分别是默认值people、name1、name2,这样就可以在服务启动后通过配置文件或其它方式动态的给bean取不同的别名。

相关文章:

  • Windows编程上
  • 现代工作场所中的睡岗检测算法应用
  • 操作系统缓存与缓冲
  • wordpress企业主题和wordpress免费主题
  • ai智能语音机器人电销系统:让销售更快速高效
  • 基于Teager-Kaiser能量算子的肌电信号降噪方法(MATLAB)
  • Python基础入门知识
  • 巴西社交APP出海热潮!本土网盟CPI流量助力海外广告引流新方向
  • 六西格玛绿带培训ROI:你的投资究竟值不值?
  • Qt——升级系列(Level Eight):界面优化
  • Hi3861 OpenHarmony嵌入式应用入门--TCP Server
  • 什么是前端开发?
  • odoo google插件(2)
  • 自组装mid360便捷化bag包采集设备
  • Elasticsearch:Painless scripting 语言(一)
  • 2018一半小结一波
  • Java读取Properties文件的六种方法
  • js面向对象
  • NSTimer学习笔记
  • PermissionScope Swift4 兼容问题
  • Python实现BT种子转化为磁力链接【实战】
  • React 快速上手 - 07 前端路由 react-router
  • Spring Boot快速入门(一):Hello Spring Boot
  • uva 10370 Above Average
  • 对象引论
  • 区块链分支循环
  • 如何选择开源的机器学习框架?
  • 设计模式 开闭原则
  • 数据结构java版之冒泡排序及优化
  • 数据科学 第 3 章 11 字符串处理
  • 微信端页面使用-webkit-box和绝对定位时,元素上移的问题
  • 微信支付JSAPI,实测!终极方案
  • 掌握面试——弹出框的实现(一道题中包含布局/js设计模式)
  • 职业生涯 一个六年开发经验的女程序员的心声。
  • const的用法,特别是用在函数前面与后面的区别
  • ​软考-高级-系统架构设计师教程(清华第2版)【第15章 面向服务架构设计理论与实践(P527~554)-思维导图】​
  • #Java第九次作业--输入输出流和文件操作
  • %check_box% in rails :coditions={:has_many , :through}
  • (13)Latex:基于ΤΕΧ的自动排版系统——写论文必备
  • (Redis使用系列) Springboot 在redis中使用BloomFilter布隆过滤器机制 六
  • (免费领源码)python#django#mysql校园校园宿舍管理系统84831-计算机毕业设计项目选题推荐
  • (三)Kafka 监控之 Streams 监控(Streams Monitoring)和其他
  • (原+转)Ubuntu16.04软件中心闪退及wifi消失
  • (原創) 如何動態建立二維陣列(多維陣列)? (.NET) (C#)
  • ./configure,make,make install的作用(转)
  • .aanva
  • .MSSQLSERVER 导入导出 命令集--堪称经典,值得借鉴!
  • .NET 6 在已知拓扑路径的情况下使用 Dijkstra,A*算法搜索最短路径
  • .NET Core日志内容详解,详解不同日志级别的区别和有关日志记录的实用工具和第三方库详解与示例
  • .Net Winform开发笔记(一)
  • .NET简谈互操作(五:基础知识之Dynamic平台调用)
  • .NET中使用Protobuffer 实现序列化和反序列化
  • @WebService和@WebMethod注解的用法
  • [20180312]进程管理其中的SQL Server进程占用内存远远大于SQL server内部统计出来的内存...
  • [C# 开发技巧]实现属于自己的截图工具