美文网首页
boot-简单队列

boot-简单队列

作者: 指尖架构141319 | 来源:发表于2019-07-25 17:28 被阅读0次

1.总配置文件

  • pom文件
<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-amqp</artifactId>
</dependency>
  • application.properties
spring.application.name=spirng-boot-rabbitmq
spring.rabbitmq.host=127.0.0.1
spring.rabbitmq.port=5672
spring.rabbitmq.username=admin
spring.rabbitmq.password=admin
  • 配置队列
package com.zpc.rabbitmq;
import org.springframework.amqp.core.Queue;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class RabbitConfig {
    @Bean
    public Queue queue() {
        return new Queue("q_hello");
    }
}

2.撸代码

  • 生产者
package com.zpc.rabbitmq;

import org.springframework.amqp.core.AmqpTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.text.SimpleDateFormat;
import java.util.Date;

@Component
public class HelloSender {
    @Autowired
    private AmqpTemplate rabbitTemplate;

    public void send() {
        String date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());//24小时制
        String context = "hello " + date;
        System.out.println("Sender : " + context);
        //简单对列的情况下routingKey即为Q名
        this.rabbitTemplate.convertAndSend("q_hello", context);
    }
}
  • 接收者
package com.zpc.rabbitmq;

import org.springframework.amqp.rabbit.annotation.RabbitHandler;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.stereotype.Component;

@Component
@RabbitListener(queues = "q_hello")
public class HelloReceiver {

    @RabbitHandler
    public void process(String hello) {
        System.out.println("Receiver  : " + hello);
    }
}
  • 测试
package com.zpc.rabbitmq;

import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;

@RunWith(SpringRunner.class)
@SpringBootTest
public class RabbitMqHelloTest {

    @Autowired
    private HelloSender helloSender;

    @Test
    public void hello() throws Exception {
        helloSender.send();
    }
}

相关文章

  • boot-简单队列

    1.总配置文件 pom文件 application.properties 配置队列 2.撸代码 生产者 接收者 测试

  • springboot logback配置模版

    (转载 Spring Boot-日志配置) 在src/main/resources下创建logback-sprin...

  • 简单队列

    直接上代码 简单队列只是简单的发一个去一个而已。不足:耦合性高,生产者一一对应消费者,如果想多个消费者消费队列中的...

  • RabbitMQ六种队列模式-工作队列模式

    上文我们了解了 RabbitMQ 六种队列模式中的简单队列,代码也是非常的简单,比较容易理解。 但是简单队列有个缺...

  • Spring Boot 日志配置(超详细)

    Spring Boot-日志配置(超详细) 更新日志:20170810 更新通过 application.yml传...

  • springBoot对日志的配置(转载)

    Spring Boot-日志配置超详细 默认日志 Logback: 默认情况下,Spring Boot会用Logb...

  • RabbitMQ-简单队列

    简单队列 添加依赖 P:消息的生产者-->队列-->消费者 连接rabbitmq 发送消息 监听(接收消息) 简单...

  • AskMe项目 异步队列

    异步队列简单介绍 队列实现异步可以用单向队列,任务放到队列中,先进先出,或者使用优先队列,按照优先级来选择谁先执行...

  • redis消息队列的四种实现方式之Sorted Set的延时队列

    目录 《redis消息队列的四种实现方式之List的简单队列和延时队列》[https://www.jianshu....

  • 4 简单队列

    1 图解 2 代码 3 代码介绍 3.1 引入必须依赖 3.2 获取MQ连接 3.3 消息生产者 3.4 启动生产...

网友评论

      本文标题:boot-简单队列

      本文链接:https://www.haomeiwen.com/subject/xdfkrctx.html