RabbitConf.java 1.3 KB
package com.aukey.example.conf;

import com.aukey.example.converter.CharArrayToStringConverter;
import org.springframework.amqp.core.AcknowledgeMode;
import org.springframework.amqp.rabbit.config.SimpleRabbitListenerContainerFactory;
import org.springframework.amqp.rabbit.connection.ConnectionFactory;
import org.springframework.amqp.rabbit.listener.RabbitListenerContainerFactory;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/**
 * @author: wgf
 * @create: 2020-06-10 18:52
 * @description:
 **/
@Configuration
public class RabbitConf {

    /**
     * spring boot 在2.2.7.RELEASE 及以上版本不用配置,因为新版本amqp兼容content-type为空的消息
     * @param connectionFactory
     * @return
     */
    @Bean
    public RabbitListenerContainerFactory rabbitListenerContainerFactory(ConnectionFactory connectionFactory) {
        SimpleRabbitListenerContainerFactory listenerContainerFactory = new SimpleRabbitListenerContainerFactory();
        listenerContainerFactory.setConnectionFactory(connectionFactory);
        //--加上这句
        listenerContainerFactory.setMessageConverter(new CharArrayToStringConverter());
        listenerContainerFactory.setAcknowledgeMode(AcknowledgeMode.MANUAL);
        return listenerContainerFactory;
    }
}