JMS Session session = connection.createSession(paramA,paramB) 兩個參數不同組合下的含義和區別

Session session = connection.createSession(paramA,paramB);

paramA是設置事務,paramB是設置acknowledgment mode

paramA 取值有:

1、true:支持事務

爲true時:paramB的值忽略, acknowledgment mode被jms服務器設置爲SESSION_TRANSACTED 。  

2、false:不支持事務

爲false時:paramB的值可爲Session.AUTO_ACKNOWLEDGE、Session.CLIENT_ACKNOWLEDGE、DUPS_OK_ACKNOWLEDGE其中一個。

paramB 取值有:

1、Session.AUTO_ACKNOWLEDGE:爲自動確認,客戶端發送和接收消息不需要做額外的工作。

2、Session.CLIENT_ACKNOWLEDGE:爲客戶端確認。客戶端接收到消息後,必須調用javax.jms.Message的acknowledge方法。jms服務器纔會刪除消息。

3、DUPS_OK_ACKNOWLEDGE:允許副本的確認模式。一旦接收方應用程序的方法調用從處理消息處返回,會話對象就會確認消息的接收;而且允許重複確認。在需要考慮資源使用時,這種模式非常有效。

4、SESSION_TRANSACTED

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章