讓我們首先從概念開始,這是一個簡單的JMS架構:

必須首先創建連接工廠才能連接到目標。 客戶端(應用程序)必須創建一個連接實例并創建一個生產者類,以便它可以創建將發送到目的地的消息。 消息使用者類(外部應用程序)必須訂閱目標,才能使用生產者產生的消息。
考慮一下這種情況(如果您緊急需要示例,請跳過此部分):您想開發一個問答應用程序,希望它對用戶非常有效。 您不希望用戶登錄并登錄網站來檢查問題和答案,而是希望在遇到任何問題或找到新答案時盡快通知他們。 然后,您想到了放置桌面應用程序并放置通知欄的方式,這樣,將通知用戶,他們可以答復或檢查新存儲的數據。
顯然,您不希望用戶單擊“刷新”只是為了檢查新數據,您不允許這樣做嗎? 那對于使用它的任何人來說都是低效率的。 輪詢怎么樣? 使用goog方法,但這可能會分配過多的資源。 您想要的是每次將新數據推入數據庫時??向客戶端創建一個自動拉取請求。 執行客戶端推送的服務器。
像這樣思考:將消息引發到數據庫后,同一條消息將引發到消息目標(主題或隊列)上,并將其發送給所有訂閱目標的客戶端。 就像訂閱時事通訊一樣,您作為用戶已訂閱,并且每次發送時事通訊時,所有用戶都將收到時事通訊電子郵件。
這只是JMS在您的開發方案中可以解決的眾多可能性之一。 顯然,使用此功能,您可以想象它有多有用。
那么,我如何顯示一個小例子來說明如何做到這一點呢?,只需按照以下說明進行操作,然后自己檢查一下即可:
首先,下載并設置ActiveMQ( http://activemq.apache.org/ )-“ Apache ActiveMQ ?是最流行,功能最強大的開源消息傳遞和集成模式服務器。 ” –根據其網站。 實際上,除了強大而開放的源代碼之外,我不會爭辯說,它是迄今為止我使用過的最輕便的消息傳遞服務器(我已經使用WeblogicMQ并嘗試了JBossMQ)。

下載源代碼后,將其放在您喜歡的目錄中并運行activemq命令。 該文件位于<activemq root> / bin。

運行ActiveMQ之后,您現在應該可以訪問MQ Admin Console網站。 在這里可以看到MQ的所有指標,包括使用者,主題,隊列,消息等。默認情況下,它使用端口8161(http:// localhost:8161 /)。

如果您可以看到上面的站點,則意味著您已經成功啟動了Apache ActiveMQ! 現在開始發展我們的客戶。 在本文中,我將使用Eclipse開發代碼,但是您可以使用自己喜歡的任何IDE。
打開Eclipse并創建一個新的Java項目。
獲取并將activemq-all- <version> .jar文件導入您的項目。 請注意,這是重要的一步,因為我們將使用jar中的類來訪問MQ管理服務。 培養生產者:–生產者將是發送實際消息的人。
制片人
開發消費者–消費者將是接收生產者創建的消息的人。
消費者
在此處下載完整項目。
請享用!
參考: JCG合作伙伴 Alvin Reyes 使用Apache ActiveMQ的JMS開發基礎 ? 在Alvin“ Jay” Reyes博客上 。
翻譯自: https://www.javacodegeeks.com/2012/03/jms-development-fundamentals-using.html