ActiveMQ 在 Spring 中的應用

2021-09-12 04:04:40 字數 1906 閱讀 6489

生產者:

需要 特別注意的是:兩個專案【消費者】 和【生產者】中都有乙個model目錄,而且目錄下面都有user實體類,我們的 【生產者】 向 【消費者】傳送 object型別的訊息的時候,需要確保,【消費者】中的user類中的序列號 要與 【生產者】中的user類中的序列號相同,這樣才能正常的 序列化和發序列化。

消費者: 同步接收

非同步接收:

(1)我們建立的 jmstemplate 模板物件,是不能直接建立非同步接收所使用到的***的。

(2)既然jmstemplate模板物件沒辦法建立***,那麼 我們就從 xml配置檔案中建立 乙個***。

配置檔案中建立 預設訊息***容器,然後這個容器會為我們建立真正的訊息***物件:

需要注意的是:

當 建立乙個 spring容器的時候就會載入xml配置檔案,載入配置檔案的時候就會為我們建立 xml檔案中 所有的bean物件。 預設***容器物件也會被建立,這個訊息***物件被建立完成之後就開始自動工作了,也就是監聽activemq 中對應的訊息,當監聽到對應的訊息後,會自動呼叫onmessage方法,然後將這個message訊息傳遞給我們的onmessage方法,然後執行方法中的業務邏輯。

從上面可以看出,我們只需要做一步:就是建立spring容器。

main方法中建立spring容器的**:

上面是 兩種 接收訊息的方法:【同步接收】 和 【非同步接收】。

傳送【訊息】的兩種方法:【點對點傳送模式】和【發布/訂閱模式】:

配置 spring配置檔案的時候,配置jmstmeplate bean物件的時候,為這個bean物件新增乙個屬性標籤:

nam標籤的 value 為 true,表示採取【發布/訂閱模式】。

標籤的value預設為false,表示採取【點對點模式】。

當我們採取【點對點模式】的時候,【生產者】和【消費者】兩個spring配置檔案中的jmstemplate對應的bean標籤不用做任何的修改,因為」pubsubdomainvalue=false/>預設為 false。所以不配置就是false,預設採用點對點模式。

當我們採取【發布訂閱模式】的時候,【生產者】和【消費者】兩個專案的spring配置檔案中的jmstemplate對應的bean物件中,都需要新增上」pubsubdomainvalue=true/> ,【生產者】配置這個屬性的原因是:告訴activemq採用什麼方式 管理訊息和**訊息,【消費者】配置這個屬性的原因是:採取什麼樣的方式來獲取這個資訊。

在Spring下整合ActiveMQ

spring整合activemq配置 spring jms非同步發收訊息 activemq 在前面的一篇 activemq入門例項中我們實現了訊息的非同步傳送,這篇博文將如何在spring環境下整合activemq。如果要在spring下整合activemq,那麼就需要將如下jar包匯入專案 專案結...

spring 專案整合ActiveMQ

org.apache.activemq activemq core 5.7.0 org.apache.activemq activemq pool 5.15.9 org.springframework spring jms 4.2.5.release 注意 這邊引入的依賴如果版本過高,在農汙專案中會...

使用 Spring 配置activemq

開發需要,所以了解了一些,整理一下作為筆記。1.首先匯入相應的xsi schemalocation,2.配置jms連線工廠 通過properties檔案來進行的配置 3.配置jms模板 queue spring 提供的jms工具類,用於傳送接收訊息 topic模板 connectionfactory...