版权声明:本文为博主原创文章,未经博主允许不得转载。 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;
}