首页 > 其他分享 >SpringBoot学习记录(1)——@Autowired在集合上的作用

SpringBoot学习记录(1)——@Autowired在集合上的作用

时间:2023-02-17 20:11:39浏览次数:43  
标签:Map SpringBoot Autowired 接口 集合 smsScripts

public class SmsHandler extends BaseHandler implements Handler {

    @Autowired
    private Map<String, SmsScript> smsScripts;

    // ......
}

例如如上,一个短信发送的处理模块,@Autowired配置在了Map上。
一般@Autowired是注入接口实现类的,加在Map起的是什么作用呢?

原来,Spring支持在集合上注入实现同一个接口的类,可以用集合的方式来访问这些类。

如下:

// 可以拿到对应的smsScript
List<SmsRecord> recordList = smsScripts.get(messageTypeSmsConfig.getScriptName()).send(smsParam);

 

标签:Map,SpringBoot,Autowired,接口,集合,smsScripts
From: https://www.cnblogs.com/wananniannian/p/17131400.html

相关文章

  • springboot接入kafka
    1、windows下安装、启动kafka,这一步只是搭建环境​​https://blog.51cto.com/u_15595167/6026035​​2、安装kafka管理工具:kafkamanager,推荐linux下安装,windows下编译等很麻......
  • 使用SpringBoot简单实现WebRTC群聊会议室(Mesh方案)
    近期需要做一个类似会议室功能,但网络上大多数是一对一通信,故记录分享希望帮助到有用的人WebRTC一对一聊天原理关于WebRTC建立一对一聊天的模板网上很多,可参考以下博客:spr......
  • 使用springboot cache + redis缓存时使用gzip压缩以提升性能
    背景在高并发的场景中,我们通常会使用缓存提升性能。在使用springbootcache时,我们通常会使用基于JSON的序列化与反序列化。JSON具有可读性强,结构简单的特点,使用灵活。但......
  • springboot加入cloud,并注册到nacos
    pom.xml下新增 <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-context</artifactId> <version>2.2.5.RELEASE</version> ......
  • SpringBoot 整合 RabbitMQ
    SpringBoot整合RabbitMQ生产者application.yml#配置RabbitMQ的基本信息spring:rabbitmq:#iphost:192.168.36.100#usernameuse......
  • 集合 和Collection
    importjava.util.ArrayList;importjava.util.Collection;importjava.util.Iterator;publicclassDemo01{publicstaticvoidmain(String[]args){//......
  • SpringBoot
    SpringBoot2核心技术与响应式编程SpringBoot2核心技术SpringBoot2基础入门Spring能做什么?Spring的生态覆盖了:web开发数据访问安全控制分布式消息服务移动......
  • SpringBoot配置与打包基础
    本篇主要记录SpringBoot使用的基础配置SpringBootMaven配置SpringBootmaven依赖关系我们创建springboot项目后,会发现项目的pom文件都会继承自spring-boot-starter-p......
  • Feign远程调用结合fallback(Springboot包扫描)
    Feign远程调用结合fallback(Springboot包扫描)微服务项目中,各微服务模块间互相调用,通常使用HTTP协议调用,为了优雅和快速调用服务,通常使用HTTP客户端,如Feign为各服务编写......
  • 基于springboot实现SSM整合
    (1)SpringBoot整合Spring(不存在)(2)SpringBoot整合SpringMVC(不存在)(3)SpringBoot整合MyBatis(主要)一、新建springboot项目。  在application.yml配置文件中添加数据源......