消息的消費者接收消息可以採用兩種方式:
1、consumer.receive() 或 consumer.receive(int timeout);
2、註冊一個MessageListener。
採用第一種方式,消息的接收者會一直等待下去,直到有消息到達,或者超時。
後一種方式會註冊一個監聽器,當有消息到達的時候,會回調它的onMessage()方法。
下面舉例說明:
- MessageConsumer consumer = session.createConsumer(queue);
- consumer.setMessageListener(new MessageListener(){
- @Override
- public void onMessage(Message m) {
- TextMessage textMsg = (TextMessage) m;
- try{
- System.out.println(textMsg.getText());
- } catch (JMSException e) {
- e.printStackTrace();
- }
- }
- });
轉載自:http://blog.csdn.net/iamfafa/article/details/6264535