我是activemq的新手。我創建了一個隊列並從一個客戶端向該隊列生成一條消息。我想從另一個客戶端使用該消息。對於使用該消息的代碼如下如何獲得消息而不在Activemq中創建隊列
ActiveMQConnectionFactory connectionFactory = new ActiveMQConnectionFactory("tcp://localhost:61616");
// Create a Connection
Connection connection = connectionFactory.createConnection();
connection.start();
// Create a Session
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
// Create the destination (Topic or Queue)
Destination destination = (Destination) session.createQueue("StaticQueueName");
MessageConsumer consumer= session.createConsumer(destination);
Message message = (Message) consumer.receive();
System.out.println(message.getStringProperty("status"));
if (message instanceof TextMessage) {
TextMessage textMessage = (TextMessage) message;
Text = textMessage.getText();
System.out.println("Received: " + Text);
} else {
System.out.println("Received: " + message);
}
,如果我們已經知道隊列名稱,然後無需create.i metioning下面的代碼。
Destination destination = (Destination) session.createQueue("StaticQueueName");
那麼有沒有任何可用的方法,如果我們知道隊列名稱before.so使用隊列名稱,我們可以訪問像getqueue(「隊列名稱」)的消息,而不是創建隊列。
請檢查此鏈接。http://stackoverflow.com/questions/19705413/how-to-get-the-message-from-temporary-queue-in-different-session/19708727?noredirect = 1#19708727 – nichu09