文章目录

  • 一、Spring IOC 注入Map接口

写在前面: 我是「境里婆娑」。我还是从前那个少年,没有一丝丝改变,时间只不过是考验,种在心中信念丝毫未减,眼前这个少年,还是最初那张脸,面前再多艰险不退却。
写博客的目的就是分享给大家一起学习交流,如果您对 Java感兴趣,可以关注我,我们一起学习。

一、Spring IOC 注入Map接口

在平常我们写代码时候,可能会遇到这样的情况定义一个Map<String,xxxInterface>,key为string字符串,value值为一个接口。把所有的实现类都初始化到map里面。用的时候方面调用。

1、定义接口

public interface ChannelProcessor {void processor();
}

2、定义实现类

@Component
public class CupChannelProcessor implements ChannelProcessor {@Overridepublic void processor() {System.out.println("cup...");}
}
@Component
public class JcbChannelProcessor implements ChannelProcessor {@Overridepublic void processor() {System.out.println("jcb...");}
}

3、启动项目测试。
项目启动测试map中已经把所有的实现类都加载完成。

使用的时候直接通过map.get就可以把对应的子类取出。

打印结果为:jcb。

Spring IOC注入Map接口小技巧相关推荐

  1. 【Spring 源码阅读】Spring IoC、AOP 原理小总结

    Spring IoC.AOP 原理小总结 前言 版本约定 正文 Spring BeanFactory 容器初始化过程 IoC 的过程 bean 完整的创建流程如下 AOP 的过程 Annotation ...

  2. Spring Boot 配置随机数那些小技巧

    转载自  Spring Boot 配置随机数那些小技巧 Spring Boot支持在系统加载的时候配置随机数. 添加config/random.properties文件,添加以下内容: #随机32位M ...

  3. 吐血整理!14个编写Spring MVC控制器的实用小技巧

    全文共4248字,预计学习时长9分钟 编写Spring MVC控制器的最佳技巧 本文介绍了编写Spring MVC框架的控制器(controller)的基础技巧和最佳操作.在Spring MVC框架中 ...

  4. Spring依赖注入的接口为null

    昨天碰到一个问题,做大量Excel导入时,Spring依赖注入接口总是null. 因为之前使用的时候都是可以的,所以我就各种尝试,我的类进行实现接口,进行组件定义等等都不行.今早重新看看依赖注入的定义 ...

  5. 调试接口小技巧-通过接口调试工具去下载上传文件

    前言 在一些开发场景,比如文件的下载,在我们自己调试的时候,会有一些伙伴不知道怎么调试,其实是和普通的接口一样的,只是有一些小技巧,多余的设置需要知道 我最常用的两个接口调试工具是PostMan和Ap ...

  6. sql注入联合查询小技巧绕过验证

    来源为一道ctf题目 <!--MMZFM422K5HDASKDN5TVU3SKOZRFGQRRMMZFM6KJJBSG6WSYJJWESSCWPJNFQSTVLFLTC3CJIQYGOSTZKJ ...

  7. spring容器注入一个接口的两个实现类

    转载自:https://www.cnblogs.com/linjiaxin/p/5897749.html spring容器中能拥有两个同种类型的bean吗?我有两个dao类同时实现一个接口,这两个接口 ...

  8. Spring IOC 注入方式

    2019独角兽企业重金招聘Python工程师标准>>> 1. setter注入. 2. 构造函数注入. 3.工厂方法注入. 4.自动注入. 转载于:https://my.oschin ...

  9. Spring IoC注入三种方式

    三种注入方式: setter & getter 注入 构造函数注入 p命名空间注入 有两个实体类 student: public class Student {String name;int ...

最新文章

  1. CentOS7.5(64位)安装Anaconda
  2. 减法公式运算法则_人教版数学七年级上册1.3.2有理数的减法视频讲解+知识点+同步练习...
  3. Ubuntu下安装vscode c++环境
  4. linux sftp自动输入密码,使用autoexpect避免sftp输入密码
  5. cesium鼠标左键获取经纬度_效率达人们怎么充分利用鼠标提高效率?
  6. parsel安装老是失败_Photoshop安装失败解决办法
  7. java 继承调用_【JAVA学习】继承中函数调用机制
  8. stringbuffer判断是否为空
  9. 我最开始学dancing link的HTML5的时候
  10. python编程入门-Python 基础教程
  11. 使用WebDeployment Project改善VS2005发布网站
  12. windows如何根据句柄hwnd显示和隐藏窗口
  13. 情侣间常犯的7个沟通问题
  14. 详解Gem5模拟器的4种CPU模型
  15. 涂鸦模组二次开发Zigbee 模组烧录
  16. 电磁场与仿真软件(19)
  17. 论文参考文献(持续更新...)
  18. Generalizing to Unseen Domains via Adversarial Data Augmentation 正文
  19. office 365 ppt创意操作2
  20. 7-1 厘米换算英尺英寸 (JAVA)

热门文章

  1. 虚拟化服务器故障,修复vSphere vCenter服务器故障的技巧
  2. 50万数据生成6位数不重复字符串_JAVA技术分享:单号的生成
  3. C语言实现离散余弦变换(DCT)并用MATLAB和Python验证
  4. html5和前端精要(2)-架构与基础(2)
  5. tensorflow-tf.train.shuffle_batch
  6. 【NLP】基于TF-IDF和KNN的模糊字符串匹配优化
  7. 【论文解读】深度学习网络架构新视角:通过相关图表达理解神经网络(何恺明团队新作)...
  8. 【零基础入门数据挖掘】-建模调参
  9. 【科普】一文把数据科学、人工智能与机器学习讲清楚
  10. 深度学习笔记第三门课 结构化机器学习项目 第二周 机器学习(ML)策略(2)...