RabbitMq消费信息,对数据处理和编码设置

本文介绍了RabbitMQ的消息消费,包括普通消费和手动确认消费两种方式。普通消费中,消费者只需实现MessageListener接口的onMessage方法。而在手动确认消费模式下,消费者可自定义异常处理,如消息重入队列或持久化,通过实现ChannelAwareMessageListener的onMessage方法来实现。
摘要由CSDN通过智能技术生成

RabbitMq消费信息,对数据处理和编码设置

将消息放到MQ的队列,必然要对消息进行处理,不然使用MQ就显得没有什么意义了。

普通消费

单纯的消费消息只需写一个实现类实现MessageListeneronMessage方法即可,如

public class RabbitmqService implements MessageListener {

    private Logger logger = LoggerFactory.getLogger(RabbitmqService.class);
    
    @Autowired
    private UserService userService;

    @Autowired
    private MsgInfoService msgInfoService;

    public void onMessage(Message message) {
      
        try {
        	//将放入队列的消息已UTF-8的格式转为JSON字符串(前提是放入队列是也是JSON字符串,中文存在乱码)
            String  msg  = new String(message.getBody(),"utf-8");
            logger.info("消息:{}",JSON.toJSONString(msg));
            //将JSON字符串转换为自己想要处理的对象
            User user= JSON.parseObject(msg, User .class);
            //处理逻辑
            User userDto = userService.save(user)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值