JMS activeMQ Session接口 取值解释

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

以上是Jms   activeMQ的实现,在建立session时接收两个参数,第一个为boolean值,第二个为Session接口定义好的四个常量,分别为:java

static final int AUTO_ACKNOWLEDGE = 1;

static final int CLIENT_ACKNOWLEDGE = 2;

static final int DUPS_OK_ACKNOWLEDGE = 3;

static final int SESSION_TRANSACTED = 0;

 

connection.createSession(paramA,paramB);
paramA是设置事务的,paramB设置acknowledgment mode服务器

paramA设置为false时:
paramB的值可为Session.AUTO_ACKNOWLEDGE,Session.CLIENT_ACKNOWLEDGE,DUPS_OK_ACKNOWLEDGE其中一个。session

paramA设置为true时:
paramB的值忽略, acknowledgment mode被jms服务器设置为SESSION_TRANSACTED 。code

Session.AUTO_ACKNOWLEDGE为自动确认,客户端发送和接收消息不须要作额外的工做。
Session.CLIENT_ACKNOWLEDGE为客户端确认。客户端接收到消息后,必须调用javax.jms.Message的acknowledge方法。jms服务器才会删除消息。
DUPS_OK_ACKNOWLEDGE容许副本的确认模式。一旦接收方应用程序的方法调用从处理消息处返回,会话对象就会确认消息的接收;并且容许重复确认。在须要考虑资源使用时,这种模式很是有效。对象

相关文章
相关标签/搜索