深入掌握JMS(三):MessageListener

消息的消费者接收消息可以采用两种方式:

1、consumer.receive() 或 consumer.receive(int timeout);
2、注册一个MessageListener。

采用第一种方式,消息的接收者会一直等待下去,直到有消息到达,或者超时。后一种方式会注册一个监听器,当有消息到达的时候,会回调它的onMessage()方法。下面举例说明:

  1. MessageConsumercomsumer=session.createConsumer(queue);
  2. comsumer.setMessageListener(newMessageListener(){
  3. @Override
  4. publicvoidonMessage(Messagem){
  5. TextMessagetextMsg=(TextMessage)m;
  6. try{
  7. System.out.println(textMsg.getText());
  8. }catch(JMSExceptione){
  9. e.printStackTrace();
  10. }
  11. }
  12. });

你可能感兴趣的:(MessageListener)