若要傳送或接收訊息,JMS 用戶端必須先連線到通常作為訊息代理程式實作的 JMS 提供者:開啟用戶端與代理程式之間通訊通道的連線。然後,用戶端必須設定建立、產生和使用訊息的階段作業。您可以將階段作業想成是定義用戶端與代理程式之間特定對話的訊息串流。用戶端本身是訊息產生器和 (或) 訊息用戶。訊息產生器會傳送訊息到代理程式管理的目標。訊息用戶會存取目標以使用訊息。訊息包括標頭、可選特性和內文。內文會保留資料;標頭則包含代理程式需要路由及傳送訊息的資訊;而特性可由用戶端應用程式或提供者定義,以滿足其處理訊息的需求。連線、階段作業、目標、訊息、產生器和用戶是組成 JMS 應用程式的基本物件。
用戶端應用程式藉由這些基本物件,可以使用兩種訊息傳送式樣 (或網域) 來傳送與接收訊息。如圖 1–4 所示。
用戶端 A 和 B 是訊息產生器,經由兩種不同的目標傳送訊息到用戶端 C、 D 和 E。
用戶端 A、 C 和 D 之間的訊息傳送可說明點對點的式樣。用戶端可以使用此式樣,傳送訊息到佇列目標,僅讓一個接收者從該目標取得訊息。其他存取該目標的接收者無法取得此訊息。
用戶端 B、 E 和 F 之間的訊息傳送可說明發佈/訂閱的式樣。用戶端可以使用此廣播式樣,傳送訊息到主題目標,讓任意多的使用訂閱者從中接收訊息。每個用戶皆可取得各自的訊息副本。
不管是哪個網域,訊息用戶均能選擇同步或非同步取得訊息。同步用戶經由明確的呼叫可擷取訊息,而非同步用戶則可指定回呼方法,呼叫該方法可傳送擱置訊息。用戶也可以指定內送訊息的選取條件,以過濾訊息。