ActiveMQ的签收方式

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/weixin_38959210/article/details/88775230

总共有三种签收方式,注意session的签方式在生产者和消费者中都得修改。

1.自动签收。

       Session session =connection.createSession(false, Session.AUTO_ACKNOWLEDGE);

2.手动签收

       Session session =connection.createSession(false, Session.CLIENT_ACKNOWLEDGE);
         while(true) {
             TextMessage message=(TextMessage) consumer.receive();
             if(null != message ) {
                 System.out.println("收到消息:"+message.getText());
                 message.acknowledge();
          
             }else
                 break;
         }

3.session签收(事务签收)

首先在生产者中提交事务:session.commit();


      Session session =connection.createSession(true, Session.SESSION_TRANSACTED);
         while(true) {
      	   TextMessage message=(TextMessage) consumer.receive();
      	   if(null != message ) {
      		   System.out.println("收到消息:"+message.getText());
      		 session.commit();
      	
      	   }else
      		   break;
         }

猜你喜欢

转载自blog.csdn.net/weixin_38959210/article/details/88775230
今日推荐