练习的时候的一个场景,觉得未来会复用就先记录下来

先在公共模块集成先:

    <dependencies><!--rabbitmq消息队列--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId></dependency><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-bus-amqp</artifactId></dependency><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId></dependency></dependencies>

定义好交换机,队列和路由键的名字。

public class MqConst {/*** 短信*/public static final String EXCHANGE_DIRECT_MSM = "exchange.direct.msm";public static final String ROUTING_MSM_ITEM = "msm.item";//队列public static final String QUEUE_MSM_ITEM  = "queue.msm.item";}

消息转换器转换成json

import org.springframework.amqp.support.converter.Jackson2JsonMessageConverter;
import org.springframework.amqp.support.converter.MessageConverter;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;@Configuration
public class MQConfig {@Beanpublic MessageConverter messageConverter(){return new Jackson2JsonMessageConverter();}
}

订单模块中提交订单(记得引入公共模块,以及MsmVo实现Serializable):

    @PostMapping("/auth/submitOrder/{scheduleId}/{patientId}")public Result submitOrder(@PathVariable Long scheduleId,@PathVariable Long patientId){//一堆乱七八糟的业务流程//。。。。//短信提示MsmVo msmVo = new MsmVo();msmVo.setPhone(orderInfo.getPatientPhone());msmVo.setTemplateCode("SMS_194640721");rabbitTemplate.convertAndSend(MqConst.EXCHANGE_DIRECT_MSM, MqConst.ROUTING_MSM_ITEM, msmVo);return Result.ok(orderInfo);}

短信模块中加入component(记得引入公共模块):

@Component
public class SmsReceiver {@Autowiredprivate SmsService msmService;@RabbitListener(bindings = @QueueBinding(value = @Queue(value = MqConst.QUEUE_MSM_ITEM, durable = "true"),exchange = @Exchange(value = MqConst.EXCHANGE_DIRECT_MSM),key = {MqConst.ROUTING_MSM_ITEM}))public void send(MsmVo msmVo, Message message, Channel channel) {msmService.send(msmVo);}
}

使用rabbitmq实现提醒发送短信相关推荐

  1. 41. 整合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 ...

  2. 微服务架构集成RabbitMQ给用户推送消息(发送短信,发送邮件,发送站内信息)

    因为是分布式微服务项目,所以发送方在一个微服务,接收方在另外的一个微服务,在发送方,导入RabbitMQ依赖包 <!--RabbitMQ依赖--><dependency>< ...

  3. 使用PhP免费发送定时短信(用于天气预报、定时提醒、短信祝福等等)

    使用PhP免费发送定时短信 背景:老妈年纪大了,文化程度不高,但是需要每天了解天气信息才能下地工作,也就无法通过网络获取天气,只能通过电视.于是寻思着自己抓取网络上的天气信息,通过手机短信发送给老妈. ...

  4. 【Android】Android6.0发送短信Demo

    整理一下使用SmsManager类发送短信的方法. https://developer.android.com/reference/android/telephony/SmsManager.html ...

  5. java发送短信的发送报告处理

    2019独角兽企业重金招聘Python工程师标准>>> 最近上线了一个推送系统.推送系统作用是将短信,邮件,app push等消息触达到用户.目前功能上只实现了短信通道,并且随着业务 ...

  6. Freeswitch服务+语音网关设备发送短信功能

    本文档主要介绍的是发送短信的场景.语音通讯后续补充. 业务场景:由于产品部署在视频网.或者公安网这种内部网络,无法使用互联网,发送短信提醒的实现方案有两种 一种是是使用短信猫设备,插入手机卡,调用短信 ...

  7. 延迟发送:4款定时发送短信的应用程序

    发送短信已经成为朋友.家人甚至是同事之间最为常见的通讯方式之一.由于短信具备定时发送及发送报告等功能,使用起来非常灵活.当然,短信的应用程序中常常默认带有发送报告功能,而没有定时发送的功能,若是能具备 ...

  8. 短信截取 android,谷歌Android增加语音操作功能 可语音发送短信

    [赛迪网讯]8月13日消息,谷歌发布Android操作系统的语音指令功能"Voice Actions for Android"并且在博客中发布了一个解释这些功能的视频.Androi ...

  9. 使用阿里云的短信服务发送短信

    原文地址使用阿里云的短信服务发送短信 在给客户开发一个信息发送功能的时候,需要涉及到短信的发送,短信发送一般不同的厂商提供的接口不同,处理方式也不太一样,之前用的一个厂商的,提供了一个封装类就很容易发 ...

最新文章

  1. 拆分一个字符串并把每个字符单独输出
  2. 《深度探索C++对象模型》--4 Function语意学
  3. SAP ABAP Netweaver容器化, 不可能完成的任务吗?
  4. php拉取公众号所有关注的人,微信公众平台开发获取关注者列表
  5. 【计算机图形学】实验:VB.net环境下的绘制贝赛尔(Bezier)自由曲线完整实验操作步骤
  6. AutoMapper 9.0的改造(续)
  7. AcWing 885. 求组合数 I(递推式预处理)
  8. MVC 3 数据验证 Model Validation 详解
  9. 用python画明星_Python也能成为毕加索?我用Python给小姐姐画了幅油画
  10. word批量设置图片大小和对齐,使用宏定义
  11. 计算机辅助化学教育,在计算机辅助下的化学教学_计算机辅助制造
  12. SOFARPC —— SPI 解析
  13. eclipse下改变 匹配标签和匹配括号的颜色
  14. 小程序获取用户唯一id php_微信小程序配合PHP获取用户OpenID标识
  15. 蓝桥杯 外卖店的优先级
  16. 推荐系统论文:Personalized News Recommendation Based on ClickBehavior
  17. nodejs 运行在tomcat_nodejs和tomcat的区别是什么?
  18. (云)服务器硬件性能测试
  19. 改掉几个坏习惯,养成几个习惯
  20. 微信公众账号导航平台

热门文章

  1. FOC电机控制矢量控制编程心得(完整实践理论),有需要的看文章找地址进一步了解
  2. 利用红外测温仪测量物体的发射率
  3. asp mysql 可编辑树状,基于数据库动态生成树形目录-ASP教程,数据库相关
  4. 6n137光耦怎么测好坏_测量贴片光耦好坏的方法
  5. Mac下解决以太网不是en0的问题
  6. 暗暗暗暗啊暗暗暗暗啊
  7. Window 由于未经处理的异常,进程终止。
  8. Quartz.NET学习笔记(四) 计划任务触发器
  9. Verilog的运算符及优先级
  10. 快手与NBA达成战略合作 将探索版权内容二创变现新模式