使用ActiveMQ发送接收队列(Queue)消息

本文介绍如何使用Apache ActiveMQ进行消息传递的基本步骤,包括下载安装、启动服务、创建发送端与接收端等关键操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Apache ActiveMQ is the most popular and powerful open source messaging and Integration Patterns provider.

  • 下载

进入下载页面:http://activemq.apache.org/activemq-541-release.html,下载zip包

然后启动起来,windows下可以直接运行bin下的activemq.bat

  • 创建发送端

ActiveMQConnectionFactory factory = new ActiveMQConnectionFactory("tcp://localhost:61616");
QueueConnection connection = factory.createQueueConnection();
QueueSession session = connection.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);
Queue queue = session.createQueue("queue");
QueueSender sender = session.createSender(queue);
TextMessage message = session.createTextMessage();
message.setText("Hello ActiveMQ");
sender.send(message);
connection.close();
  •  创建接收端

ActiveMQConnectionFactory factory = new ActiveMQConnectionFactory("tcp://localhost:61616");
QueueConnection queueConnection = factory.createQueueConnection();
QueueSession session = queueConnection.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);
Queue queue = session.createQueue(txtKeyWord.getText());
QueueReceiver receiver = session.createReceiver(queue);
receiver.setMessageListener(new MessageListener() {
	public void onMessage(Message message) {
		if(message instanceof TextMessage){
			TextMessage textMessage = (TextMessage)message;
			try {
				textArea.append(">>" + textMessage.getText() + "\n");
				textArea.setCaretPosition(textArea.getDocument().getLength());
				textMessage.acknowledge();
			} catch (JMSException e) {
				e.printStackTrace();
			}
		}
	}
});
queueConnection.start();

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值