use*_*202 6 activemq-classic jms
我想知道是否有任何方法可以读取jms和actibemq消息而不消耗它?我知道消息可以从队列中消耗,但我仍然想问这个问题.!!
您可以通过JMS QueueBrowser浏览队列上的消息,或者在ActiveMQ中,您可以通过JMX或使用命令行工具浏览内容:
小智 6
您需要使用该类QueueBrowser来执行此操作,而不是使用消息消费者:
ConnectionFactory connectionFactory =
new ActiveMQConnectionFactory("tcp://127.0.0.1:61616");
Connection connection =
connectionFactory.createConnection("admin","admin");
connection.start();
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
Queue queue = session.createQueue("Test");
QueueBrowser queueBrowser = session.createBrowser(queue);
Enumeration msgs = queueBrowser.getEnumeration();
while (msgs.hasMoreElements()) {
//do your things here
}
Run Code Online (Sandbox Code Playgroud)