1. 程式人生 > >springBoot(24):集成rabbitmq

springBoot(24):集成rabbitmq

springboot rabbitmq

註意:springboot支持的amqp規範的中間件只有rabbitmq

第一步:添加依賴

<!-- amqp -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-amqp</artifactId>
</dependency>

第二步:配置application.yml

spring:
  application:
    name: boot-rabbitmq
  rabbitmq:
    host: 192.168.175.13
    port: 5672
    username: liuy
    password: 123456

第三步:編寫amqp隊列配置

package com.liuy.config;

import org.springframework.amqp.core.Queue;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/**
 * amqp隊列配置
 * @description amqp隊列配置
 * @author luis
 * @version 1.0
 * @date:2017年8月22日下午12:33:36
 */
@Configuration
public class AmqpConfiguration {
	@Bean
	public Queue queue() {
		return new Queue("test.queue");
	}
}

第四步:編寫監聽與發送

package com.liuy.component;

import org.springframework.amqp.core.AmqpTemplate;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

/**
 * 監聽與發送
 * @description 監聽與發送
 * @author luis
 * @version 1.0
 * @date:2017年8月22日下午12:34:55
 */
@Component
public class AmqpComponent {
	@Autowired
	private AmqpTemplate amqpTemplate;

	public void send(String msg) {
		this.amqpTemplate.convertAndSend("test.queue", msg);
	}

	@RabbitListener(queues = "test.queue")
	public void receiveQueue(String text) {
		System.out.println("接受到:" + text);
	}
}

第五步:編寫啟動類

package com.liuy;

import org.springframework.amqp.rabbit.annotation.EnableRabbit;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.ServletComponentScan;

/**
 * 集成rabbitmq--啟動類
 * @description 集成rabbitmq--啟動類
 * @author luis
 * @version 1.0
 * @date:2017年8月22日下午12:39:04
 */
@EnableRabbit
@ServletComponentScan
@SpringBootApplication
public class Application {
	public static void main(String[] args) {
		SpringApplication.run(Application.class, args);
	}
}

第六步:測試

package com.liuy;

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;
import com.liuy.component.AmqpComponent;

/**
 * 集成rabbitmq監聽與發送測試
 * @description 集成rabbitmq監聽與發送測試
 * @author luis
 * @version 1.0
 * @date:2017年8月22日下午12:35:43
 */
@RunWith(SpringRunner.class)
@SpringBootTest
public class AmqpComponentTest {
	@Autowired
	private AmqpComponent amqpComponent;

	@Test
	public void send() {
		amqpComponent.send("集成rabbitmq監聽與發送測試");
	}
}

效果:

技術分享


本文出自 “我愛大金子” 博客,請務必保留此出處http://1754966750.blog.51cto.com/7455444/1958300

springBoot(24):集成rabbitmq