39 lines
1.4 KiB
Java
39 lines
1.4 KiB
Java
package com.qihang.jd.mq;
|
||
|
||
|
||
import com.alibaba.fastjson2.JSON;
|
||
import lombok.AllArgsConstructor;
|
||
import org.slf4j.Logger;
|
||
import org.slf4j.LoggerFactory;
|
||
import org.springframework.data.redis.connection.Message;
|
||
import org.springframework.data.redis.connection.MessageListener;
|
||
import org.springframework.data.redis.core.RedisTemplate;
|
||
import org.springframework.data.redis.serializer.RedisSerializer;
|
||
import org.springframework.stereotype.Component;
|
||
@AllArgsConstructor
|
||
@Component
|
||
public class ApiMessageReceiver implements MessageListener {
|
||
private static final Logger logger = LoggerFactory.getLogger(ApiMessageReceiver.class);
|
||
|
||
private final RedisTemplate redisTemplate;
|
||
|
||
|
||
|
||
@Override
|
||
public void onMessage(Message message, byte[] pattern) {
|
||
RedisSerializer<String> valueSerializer = redisTemplate.getStringSerializer();
|
||
String deserialize = valueSerializer.deserialize(message.getBody());
|
||
//message 和 deserialize 都能拿到msg
|
||
logger.info("Received <" + message + ">");
|
||
System.out.println("deserialize = " + deserialize);
|
||
String messageContent = new String(message.getBody());
|
||
MqMessage vo = JSON.parseObject(messageContent, MqMessage.class);
|
||
|
||
System.out.println(vo.getMqType());
|
||
if(vo.getMqType() == 1){
|
||
// 有新订单,插入新订单到shop_order
|
||
logger.info("有新订单,插入新订单到shop_order");
|
||
}
|
||
}
|
||
}
|