SpringBoot gradle 中使用RabbitMQ(二)

发送端服务器

注册队列 -- 配置文件实现

@Configuration
public class RabbitConfig {
    //注册队列
    @Bean
    public Queue Queue(){
        return new Queue("hello");
    }
}

消息发送

@Component
public class MessageSender{

    @Autowired
    AmqpTemplate amqpTemplate;

    public void send() {
        String content = "hello " + new Date();
        System.out.println("Sender-message : " + content);
        this.amqpTemplate.convertAndSend("hello", content);
    }
}

接收端服务器

实现方式一

@Component
@RabbitListener(queues = "hello")
public class MessageReceiver {
    
    @RabbitHandler
    public void process(@Payload String foo) {
        System.out.println(foo);
    }
}

实现方式二:

@Component
public class MessageReceiver {

    @RabbitListener(queues = "hello")
    public void process(String content){
        System.out.println("Receiver Value : " + content);
    }

}

测试类

@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest(classes = WebClientCoreApplication.class)
@WebAppConfiguration
public class RabbitTest {

    @Autowired
    MessageSender messageSender;

    @Test
    public void testRabbit(){
        messageSender.send();
    }
}
//WebClientCoreApplication 为当前服务的启动类

测试过程

  • 启动接收服务器
  • 执行测试类

期望值

  • 发送服务器正常打印
  • 接收服务器正常打印
  • RabbitMQ 管理端可以正常查阅发送记录
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,768评论 19 139
  • 来源 RabbitMQ是用Erlang实现的一个高并发高可靠AMQP消息队列服务器。支持消息的持久化、事务、拥塞控...
    jiangmo阅读 13,514评论 2 34
  • 本文章翻译自http://www.rabbitmq.com/api-guide.html,并没有及时更新。 术语对...
    joyenlee阅读 12,266评论 0 3
  • 我和爱人相伴十余载,竟如双生般有了心灵感应。好多次,我正给他拨打电话,电话铃突然响了,吓得我差点把电话摞了,还好我...
    清风徐徐霞笑江湖阅读 3,051评论 4 6
  • (一)红房子 最后一位亲人的离世 是命运让她成为孤女 终年寒意刺骨的盖茨黑德府 只有书籍,抚慰她孤寂的心灵 带她飞...
    千年一眼阅读 923评论 0 3