SpringBoot2整合ActiveMQ發送接收消息

SpringBoot2整合ActiveMQ發送接收消息

一、消息生產者

(一)加入依賴

創建一個springboot項目,加入ActiveMQ starter包:

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

(二)application.yml中添加activemq配置

server:
  port: 30000
spring:
  activemq:
    broker-url: tcp://localhost:61616
    user: admin
    password: admin

(三)發送消息

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.jms.core.JmsTemplate;
import org.springframework.web.bind.annotation.*;

@RestController
@CrossOrigin
@RequestMapping("/test")
public class TestController {

    @Autowired
    private JmsTemplate jmsTemplate;

    @GetMapping
    public ResponseEntity<String> test(){
        // 向test隊列發送消息
        jmsTemplate.convertAndSend("test", "Hello,chushiyan");
        return ResponseEntity.ok().body("測試成功");
    }
}

二、消息消費者

一般都是另一個項目。依賴、配置同消息生產者。

(一)定義一個listener

import org.springframework.jms.annotation.JmsListener;
import org.springframework.stereotype.Component;

@Component
public class MyListener {
    
    @JmsListener(destination = "test") // 監聽test隊列
    public void receiveQueue(String text) {
        System.out.println("Message Received: " + text);
    }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章