kde*_*mme 5 java activemq-classic
我想构建一个简单的消费者程序(用java)来获取ActiveMQ主题中存储的所有消息。我有一个在队列中发送 TextMessage 的生产者。
但我不知道如何开始编写我的消费者来检索旧消息并等待新消息。
如果有例子的话谢谢!
这是我的制作人:http://pastebin.com/uRy9D8mY
这是我的消费者: http: //pastebin.com/bZh4r66e
当我在消费者之前运行生产者,然后运行消费者时,我什么也得不到。当我运行消费者然后运行生产者时,我在队列中添加了 72 条消息,但我的消费者只收到 24 条消息......
我建议阅读本教程(Apache ActiveMQ 也是如此)SUN Jms 教程
编写 JMS/ActiveMQ 程序的方法有很多种,可以使用 Spring 等各种框架,也可以使用普通的 java。
本质上,编写一个像这样的监听器类:
public class MyListener implements MessageListener{
public void onMessage(Message message){
// Read and handle message here.
}
}
Run Code Online (Sandbox Code Playgroud)
由于您已经在生成消息,我假设您已建立连接并正在运行。
session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
consumer = session.createConsumer("MyQueue");
listener = new MyListener ();
consumer.setMessageListener(listener);
connection.start();
// At this point, messages should arrive from the queue to your listener.
Run Code Online (Sandbox Code Playgroud)
还有一些错误处理代码未包含在本示例中,但您应该能够借助教程和 JMS 文档来弄清楚。
| 归档时间: |
|
| 查看次数: |
17679 次 |
| 最近记录: |