• RMQ HelloWorld


    原创转载请注明出处:https://www.cnblogs.com/agilestyle/p/11791681.html

    Project Directory

    Maven Dependency

     1 <?xml version="1.0" encoding="UTF-8"?>
     2 <project xmlns="http://maven.apache.org/POM/4.0.0"
     3          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     4          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
     5     <modelVersion>4.0.0</modelVersion>
     6 
     7     <groupId>org.fool.rmq</groupId>
     8     <artifactId>rmq</artifactId>
     9     <version>1.0-SNAPSHOT</version>
    10 
    11     <parent>
    12         <groupId>org.springframework.boot</groupId>
    13         <artifactId>spring-boot-starter-parent</artifactId>
    14         <version>2.2.0.RELEASE</version>
    15     </parent>
    16 
    17     <dependencies>
    18         <dependency>
    19             <groupId>org.springframework.boot</groupId>
    20             <artifactId>spring-boot-starter-amqp</artifactId>
    21         </dependency>
    22 
    23         <dependency>
    24             <groupId>org.springframework.boot</groupId>
    25             <artifactId>spring-boot-starter-web</artifactId>
    26         </dependency>
    27 
    28         <dependency>
    29             <groupId>org.springframework.boot</groupId>
    30             <artifactId>spring-boot-starter-test</artifactId>
    31             <scope>test</scope>
    32         </dependency>
    33     </dependencies>
    34 
    35     <build>
    36         <plugins>
    37             <plugin>
    38                 <groupId>org.springframework.boot</groupId>
    39                 <artifactId>spring-boot-maven-plugin</artifactId>
    40             </plugin>
    41         </plugins>
    42     </build>
    43 </project>
    View Code

    application.properties

    1 spring.application.name=rmq
    2 server.port=8888
    3 
    4 spring.rabbitmq.host=localhost
    5 spring.rabbitmq.port=5672
    6 spring.rabbitmq.username=admin
    7 spring.rabbitmq.password=admin

    Source Code

    Application.java

     1 package org.fool.rmq;
     2 
     3 import org.springframework.boot.SpringApplication;
     4 import org.springframework.boot.autoconfigure.SpringBootApplication;
     5 
     6 @SpringBootApplication
     7 public class Application {
     8     public static void main(String[] args) {
     9         SpringApplication.run(Application.class, args);
    10     }
    11 }

    RmqConfig.java

     1 package org.fool.rmq.config;
     2 
     3 import org.springframework.amqp.core.Queue;
     4 import org.springframework.context.annotation.Bean;
     5 import org.springframework.context.annotation.Configuration;
     6 
     7 @Configuration
     8 public class RmqConfig {
     9 
    10     @Bean
    11     public Queue queue() {
    12         return new Queue("hello-rmq");
    13     }
    14 }

    Producer.java

     1 package org.fool.rmq.producer;
     2 
     3 import org.springframework.amqp.core.AmqpTemplate;
     4 import org.springframework.beans.factory.annotation.Autowired;
     5 import org.springframework.stereotype.Component;
     6 
     7 import java.util.Date;
     8 
     9 @Component
    10 public class Producer {
    11     @Autowired
    12     private AmqpTemplate rmqTemplate;
    13 
    14     public void send() {
    15         String message = "Hello " + new Date();
    16         rmqTemplate.convertAndSend("hello-rmq", message);
    17     }
    18 }

    Consumer.java

     1 package org.fool.rmq.consumer;
     2 
     3 import org.springframework.amqp.rabbit.annotation.RabbitListener;
     4 import org.springframework.stereotype.Component;
     5 
     6 @Component
     7 public class Consumer {
     8     @RabbitListener(queues = "hello-rmq")
     9     public void handle(String message) {
    10         System.out.println("consume: " + message);
    11     }
    12 }

    ApplicationTest.java

     1 package org.fool.rmq.test;
     2 
     3 import org.fool.rmq.Application;
     4 import org.fool.rmq.producer.Producer;
     5 import org.junit.Test;
     6 import org.junit.runner.RunWith;
     7 import org.springframework.beans.factory.annotation.Autowired;
     8 import org.springframework.boot.test.context.SpringBootTest;
     9 import org.springframework.test.context.junit4.SpringRunner;
    10 
    11 @RunWith(SpringRunner.class)
    12 @SpringBootTest(classes = Application.class)
    13 public class ApplicationTest {
    14 
    15     @Autowired
    16     private Producer producer;
    17 
    18     @Test
    19     public void test() {
    20         producer.send();
    21     }
    22 }

    Console Output

    RMQ Management

  • 相关阅读:
    iOS6和iOS7代码的适配(3)——坐标适配
    iOS6和iOS7代码的适配(2)——status bar
    iOS6和iOS7代码的适配(1)
    深入Blocks分析
    文字溢出加省略号
    点击图表每一部分触发某事件
    图表添加红线
    比较月份是否存在封装数据
    云上示范区项目总结
    页面之间通过地址栏传参
  • 原文地址:https://www.cnblogs.com/agilestyle/p/11791681.html
Copyright © 2020-2023  润新知