mq 消费消息 与发送消息传参问题

1.以map 方式传参

if(StringUtils.isNotEmpty(topic)) {
Response<Map> message = new Response();
Map map = new HashMap();
map.put("payUid", payUid);
message.setData(map);
rocketmqProducer.send(topic, message);
}

2.接收参数:

if(Topic.BUY_BY_TIME_TOPIC.name().equals(msg.getTopic())){
if (StringUtils.isNotEmpty(messageStr)) {
Response<Map> mapResponse = JSON.parseObject(messageStr, new TypeReference<Response<Map>>() {
});
Map data = mapResponse.getData();
String payUid = data.get("payUid").toString();
String goodsNum = data.get("goodsNum").toString();
RequestQuery<RightsInterestsSaveReq> reqRequestQuery =new RequestQuery<>();
RightsInterestsSaveReq responseData = new RightsInterestsSaveReq();
log.info("按次-RightsInterestsSaveReq={}", JSON.toJSONString(data));
if (StringUtils.isNotEmpty(payUid) && StringUtils.isNotEmpty(goodsNum)) {
//添加
responseData.setOwnerId(Long.valueOf(payUid));
responseData.setTotalTimes(Integer.valueOf(goodsNum));
responseData.setSource(SourceType.BUY_BY_TIME.name());
interestsService.saveRightsInterests(responseData);
}
}
}


posted @ 2021-08-16 10:37  星空物语之韵  阅读(222)  评论(0编辑  收藏  举报