内容简介:为了兼容性和可读性更好,我们一般使用json字符串做为数据载体。以上两点注意好,手动发布队列就没有问题了!
springboot里发布队列消息
为了兼容性和可读性更好,我们一般使用json字符串做为数据载体。
public void decreaseCallMonitor(CallMonitorInfo callMonitorInfo) throws Exception {
try {
rabbitTemplate.convertAndSend(
AmqpConfig.DATA_COLLECTION_EXCHANGE,
AmqpConfig.CALLMONITOR_DECREASE_BINDING,
objectMapper.writeValueAsString(callMonitorInfo)
);
logger.debug("Enter {},message:{}", "decreaseCallMonitor", callMonitorInfo.toString());
} catch (Exception ex) {
logger.error("MQ.decreaseCallMonitor.error", ex);
}
}
springboot里订阅消息
@RabbitHandler
@RabbitListener(queues = AmqpConfig.CUSTOMER_TERMINATE_BINDING)
public void customerTerminate(String data) {
try {
TerminateDTO terminateDTO = objectMapper.readValue(data, TerminateDTO.class);
customerBusinessInfoMapper.updateCustomer_business_info(ImmutableMap.of(
"status", EnumCustomerStatus.TERMINATE.getCode(),
"customerId", terminateDTO.getCustomerId()
));
} catch (Exception ex) {
logger.error("解约同步异常", ex);
}
}
通过UI15672手动发消息要注意的地方
- 添加properties,声明它是utf-8及文本类型
content_encoding:utf-8 content_type:text/plain
- json字符串需要压缩,把回车换行都去掉,否则会出错
{"signSalespersonId":1001,"signSalesperson":"mq","signTime":null,"customerId":501806811767111700}
以上两点注意好,手动发布队列就没有问题了!
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
深入浅出Ajax
(美)Brett McLaughlin / 东南大学出版社 / 2006-5 / 98.00元
本书将教会您如何在很短的时间内掌握使用JavaScript代码来向服务器提交异步请求?同时,您可以学习如何使用诸如动态HTML、XML、JSON、DOM等技术来解决开发过程中遇到的许多问题。让你从那些繁琐而笨拙的网站开发技术中彻底解放出来!本书将是一本指导您进行异步开发的经典参考书籍。 作为一名网站设计人员,您也许时常因为遇到以下情况而烦恼:用户只是移动了鼠标就要从服务器重载数据......一起来看看 《深入浅出Ajax》 这本书的介绍吧!