springboot 使用activemq消息组件发送接收消息

在上一章接里面讲了activemq的安装 ,这一节我们讲一下消息的生产者和消费者:

代码结构如下:

首先我们设置一个公共类,配置为:

# activemq
## 配置消息的类型,true:topic消息,false:Queue消息
#jms.pub-sub-domain=false
## 用户名
activemq.user=admin
## 密码
activemq.password=admin
## 连接主机
activemq.broker-url=tcp://192.168.33.10:61616
## 是否信任所有包
activemq.packages.trust-all=true

消费者的代码如下:

@Service
public class MqQueueConsumerOne {

    @JmsListener(destination = ActiveMQConstants.QUEUE_NAME , containerFactory = "queueListenerFactory")
    public void receiveQueueMessage(String message){
        System.out.println("MqQueueConsumerOne ---> receiveQueueMessage:接收队列模式发送的消息,内容为:" + message);
    }

}

生产者的代码如下 :

@RestController
@RequestMapping("queue")
public class MqQueueController {

    @Autowired
    private MqQueueProducer mqQueueProducer;

    @RequestMapping("/send")
    @ResponseBody
    public String sendMqQueueProducer(){
        try {
            mqQueueProducer.sendQueueMessage();
            return "success";
        } catch (Exception e) {
            e.printStackTrace();
            return "fial";
        }
    }

}
@Service
public class MqQueueProducer {

    @Autowired
    private QueueUtil queueUtil;


    public void sendQueueMessage(){
        queueUtil.send(ActiveMQConstants.QUEUE_NAME,"注意啦lch发送队列消息啦");
    }

}

启动消费者/生产者项目 :

通过接口发送: 

查看消费:

 通过后台的管理界面可以看到队列发送的消息:

 通过命令消费 消息:

消费:  

sudo ./activemq consumer queue://foo.bar --messageCount 1 --clientId vagrant-37314-1626579367569-4:1:1:1:1      --durable true --bytesAsText true

 

 

 

可以看到手动发送的已经消费掉了! 

 

 上面已经介绍了activemq使用队列生产和消费,关于activemq更多介绍参考官网

Guess you like

Origin blog.csdn.net/lchmyhua88/article/details/118876005