iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >springboot整合RabbitMQ发送短信的实现方法
  • 204
分享到

springboot整合RabbitMQ发送短信的实现方法

2023-06-15 02:06:23 204人浏览 薄情痞子
摘要

这篇文章主要介绍SpringBoot整合RabbitMQ发送短信的实现方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!RabbitMQ安装和运行# 安装rpm -ivh erlang-

这篇文章主要介绍SpringBoot整合RabbitMQ发送短信的实现方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

RabbitMQ安装和运行

# 安装rpm -ivh erlang-21.3.8.9-1.el7.x86_64.rpm rpm -ivh socat-1.7.3.2-1.el6.lux.x86_64.rpm rpm -ivh rabbitmq-server-3.8.1-1.el7.noarch.rpm # 卸载#rpm -qa | grep rabbitmq# 启用管理插件rabbitmq-plugins enable rabbitmq_management# 启动RabbitMQsystemctl start rabbitmq-server.service#systemctl status rabbitmq-server.service#systemctl restart rabbitmq-server.service#systemctl stop rabbitmq-server.service# 查看进程ps -ef | grep rabbitmq

默认的用户密码,guest/guest,不允许远程连接,需要添加管理员账户

# 添加管理员账号密码rabbitmqctl add_user admin admin# 分配账号角色rabbitmqctl set_user_tags admin administrator# 修改密码(需要修改一次密码,否则无法登录)rabbitmqctl change_passWord admin 123456# 查看用户列表rabbitmqctl list_users

使用新账号(admin/123456)登录:Http://虚拟机ip:15672

MQ服务器设置

创建用户

创建用户 srbuser,配置管理员权限

springboot整合RabbitMQ发送短信的实现方法

创建虚拟机

创建虚拟机 /srbhost,在Set permission中为新建的用户分配访问虚拟机 /srbhost 和 / 的权限

springboot整合RabbitMQ发送短信的实现方法

springboot整合RabbitMQ发送短信的实现方法

springboot整合RabbitMQ发送短信的实现方法

实现发送短信

rabbit-mq

创建模块

srb下创建rabbit-mq模块

pom

<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-amqp</artifactId></dependency><dependency><groupId>com.alibaba</groupId><artifactId>fastJSON</artifactId></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></dependency></dependencies>

创建MQConfig

MQConfig.java

package com.indi.srb.rabbitutil.config;@Configurationpublic class MQConfig {    @Bean    public MessageConverter messageConverter(){        // json字符串转换器        return new Jackson2JsonMessageConverter();    }}

创建MQConst

MQConst.java

package com.indi.srb.rabbitutil.constant;public class MQConst {    public static final String EXCHANGE_TOPIC_SMS = "exchange.topic.sms";//交换机    public static final String ROUTING_SMS_ITEM = "routing.sms.item";//路由    public static final String QUEUE_SMS_ITEM  = "queue.sms.item";//消息队列}

创建MQService

MQService.java

package com.indi.srb.rabbitutil.service;@Service@Slf4jpublic class MQService {    @Resource    private AmqpTemplate amqpTemplate;        public boolean sendMessage(String exchange,String routingKey, Object message){        log.info("发送消息");        amqpTemplate.convertAndSend(exchange,routingKey,message);        return true;    }}

service-base

dto

SmsDTO.java

package com.indi.srb.base.dto;@Data@apiModel(description = "短信")public class SmsDTO {    @ApiModelProperty(value = "手机号")    private String mobile;    @ApiModelProperty(value = "消息内容")    private String message;}

service-core中发送消息

pom

<!-- 需要依赖rabbit-mq --><dependency><groupId>com.indi</groupId><artifactId>rabbit-mq</artifactId><version>1.0-SNAPSHOT</version></dependency>

yml

application.yaml

  #spring:  rabbitmq:    host: 虚拟机ip    port: 5672    virtual-host: /srbhost    username: srbuser    password: 123456

UserInfoService

UserInfoService.java

// 根据bindCode获取手机号String getMobileByBindCode(String bindCode);

UserInfoServiceImpl.java

@Override    public String getMobileByBindCode(String bindCode) {        QueryWrapper<UserInfo> queryWrapper = new QueryWrapper<>();        queryWrapper.select("mobile").eq("bind_code",bindCode);        UserInfo userInfo = baseMapper.selectOne(queryWrapper);        return userInfo.getMobile();    }

向MQ发送消息

UserAccountServiceImpl.java 充值回调方法的最后添加发送消息的代码

@Resource    private UserInfoService userInfoService;    @Resource    private MQService mqService;    @Transactional(rollbackFor = Exception.class)    @Override    public String notify(Map<String, Object> paramMap) {        log.info("发消息");        String mobile = userInfoService.getMobileByBindCode(bindCode);        SmsDTO smsDTO = new SmsDTO();        smsDTO.setMobile(mobile);        smsDTO.setMessage("充值成功");        mqService.sendMessage(MQConst.EXCHANGE_TOPIC_SMS,MQConst.ROUTING_SMS_ITEM,smsDTO);        return "success";    }

service-sms中监听消息

pom

<!-- 需要依赖rabbit-mq --><dependency><groupId>com.indi</groupId><artifactId>rabbit-mq</artifactId><version>1.0-SNAPSHOT</version></dependency>

yml

application.yml

  #spring:  rabbitmq:    host: 虚拟机ip    port: 5672    virtual-host: /srbhost    username: srbuser    password: 123456

创建MQ监听器

SmsReceiver.java

package com.indi.srb.sms.receiver;@Component@Slf4jpublic class SmsReceiver {    @Resource    private SmsService smsService;    // 此处的exchange与key必须与发消息传的一致    @RabbitListener(bindings = @QueueBinding(            value = @Queue(value = MQConst.QUEUE_SMS_ITEM, durable = "true"),            exchange = @Exchange(value = MQConst.EXCHANGE_TOPIC_SMS),            key = {MQConst.ROUTING_SMS_ITEM}    ))    public void send(SmsDTO smsDTO) throws IOException {        log.info("SmsReceiver 消息监听");        Map<String, Object> param = new HashMap<>();        param.put("code", smsDTO.getMessage());        smsService.send(smsDTO.getMobile(), SmsProperties.TEMPLATE_CODE, param);    }}

测试

完成充值之后,登录的用户,手机上会收到充值成功的短信提醒。

springboot整合RabbitMQ发送短信的实现方法

springboot整合RabbitMQ发送短信的实现方法

springboot整合RabbitMQ发送短信的实现方法

springboot是什么

springboot一种全新的编程规范,其设计目的是用来简化新Spring应用的初始搭建以及开发过程,SpringBoot也是一个服务于框架的框架,服务范围是简化配置文件。

以上是“springboot整合RabbitMQ发送短信的实现方法”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网精选频道!

--结束END--

本文标题: springboot整合RabbitMQ发送短信的实现方法

本文链接: https://www.lsjlt.com/news/276882.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • springboot整合RabbitMQ发送短信的实现方法
    这篇文章主要介绍springboot整合RabbitMQ发送短信的实现方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!RabbitMQ安装和运行# 安装rpm -ivh erlang-...
    99+
    2023-06-15
  • springboot整合RabbitMQ发送短信的实现
    目录RabbitMQ安装和运行MQ服务器设置创建用户创建虚拟机实现发送短信rabbit-mqservice-baseservice-core中发送消息service-sms中监听消息...
    99+
    2022-11-12
  • Springboot整合RabbitMQ实现发送验证码的示例代码
    目录1.RabbitMQ的介绍2.搭建环境2.1引入jar包2.2生产者配置2.2.1Rabbit配置类2.2.2application.yml文件配置2.3消费者配置2.3.1消费...
    99+
    2022-11-13
  • SpringBoot怎么实现短信发送
    这篇“SpringBoot怎么实现短信发送”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“SpringBoot怎么实现短信发送...
    99+
    2023-06-29
  • springBoot整合rabbitMQ的方法详解
    引入pom <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://mave...
    99+
    2022-11-12
  • Android短信发送器实现方法
    本文实例讲述了Android短信发送器实现方法。分享给大家供大家参考。具体如下: 这里模拟android短信发送器的实现 AndroidManifest.xml清单文件: &...
    99+
    2022-06-06
    方法 Android
  • SpringBoot整合阿里云短信服务的方法
    目录一、新建短信微服务1、在service模块下创建子模块service-msm3.配置application.properties4、创建启动类二、阿里云短信服务三、编写发送短信接...
    99+
    2022-11-12
  • Java整合腾讯云短信发送实例代码
    目录1. 引入相关maven依赖2. 编写短信发送工具类3. 业务层3. 相关工具类1. 引入相关maven依赖 <dependency> <groupId>...
    99+
    2022-11-12
  • SpringBoot如何整合RabbitMQ实现死信交换机
    本篇内容介绍了“SpringBoot如何整合RabbitMQ实现死信交换机”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!环境Windows1...
    99+
    2023-07-02
  • SpringBoot整合Javamail实现邮件发送
    博客主页:踏风彡的博客 博主介绍:一枚在学习的大学生,希望在这里和各位一起学习。 所属专栏:SpringBoot学习笔记 文章创作不易,期待各位朋友的互动,有什么学习问题都可在评论区留言或者私信我...
    99+
    2023-08-31
    spring boot java spring
  • Android使用Intent发送短信的实现方法
    本文实例讲述了Android使用Intent发送短信的实现方法。分享给大家供大家参考,具体如下: 在一个Activity中使用Intent发送短信 package com.z...
    99+
    2022-06-06
    方法 intent Android
  • SpringBoot发送短信验证码的实例
    目录1、注册短信通账号2、导入依赖3、随机验证码的工具类4、短信发送工具类5、测试1、注册短信通账号 网址:http://sms.webchinese.cn 2、导入依赖 &...
    99+
    2022-11-13
  • Springboot整合RabbitMq测试TTL的方法详解
    目录什么是TTL?如何设置TTL?设定整个队列的过期时间配置类编写测试配置测试总结代码下载什么是TTL? 在RabbitMq中,存在一种高级特性 TTL。 TTL即Time To L...
    99+
    2022-11-13
  • SpringBoot项目实现短信发送接口开发的实践
    一. 短信接口实现 描述:请求第三方短信接口平台(而第三方短信平台的接口请求是webservice方式实现的),此时我们要测试接口是否通,要用的工具SoapUI测试工具, 不能用P...
    99+
    2022-11-12
  • PHP调用聚合数据短信接口实现短信发送
    在现代化的互联网时代中,短信已成为人们生活中不可或缺的一部分,尤其是在移动互联网时代,短信的使用率日益提高。而短信接口的使用,更是成为各大企业和开发者必备的一环。那么,在使用PHP语言进行短信发送时,如何调用聚合数据短信接口呢?本篇文章将通...
    99+
    2023-05-21
    PHP 短信发送 聚合数据短信接口
  • Android实现将已发送的短信写入短信数据库的方法
    短信是手机常见的功能,本文就以实例形式讲述了Android实现将已发送的短信写入短信数据库的方法。分享给大家供大家参考之用。具体如下: 一般来说,把短信发送出去以后,需要把已发...
    99+
    2022-06-06
    方法 数据 数据库 Android
  • springboot与vue详解实现短信发送流程
    目录一、前期工作1.开启邮箱服务2.导入依赖3.配置application.yaml文件二、实现流程1.导入数据库2.后端实现编写实体类编写工具类ResultVo编写dao层接口配置...
    99+
    2022-11-13
  • Android发送短信方法实例详解
    本文实例讲述了Android发送短信方法。分享给大家供大家参考,具体如下: 短信和打电话一样,都是android手机的基本功能,下面以实例说明android如何实现发送短信的功...
    99+
    2022-06-06
    方法 Android
  • springboot整合mail实现邮箱的发送功能
    第一步添加mail的依赖 <!--引入mail的依赖 --> <dependency> <groupId>org.springfr...
    99+
    2022-11-12
  • SpringBoot实现阿里云短信发送的示例代码
    阿里云accessID和secret请自行进入阿里云申请 sms.template.code 请进入阿里云,进行短信服务进行魔板添加 开源代码地址在文章末尾 话不多说,直接上代码: ...
    99+
    2022-11-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作