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容許副本的確認模式。一旦接收方應用程序的方法調用從處理消息處返回,會話對象就會確認消息的接收;並且容許重複確認。在須要考慮資源使用時,這種模式很是有效。對象

相關文章
相關標籤/搜索