日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ActiveMQ queue 代码示例

發布時間:2023/11/29 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ActiveMQ queue 代码示例 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

生產者:

package com.111.activemq;import javax.jms.Connection; import javax.jms.ConnectionFactory; import javax.jms.Destination; import javax.jms.JMSException; import javax.jms.MessageProducer; import javax.jms.Session; import javax.jms.TextMessage;import org.apache.activemq.ActiveMQConnection; import org.apache.activemq.ActiveMQConnectionFactory;public class JMSProducer {//默認連接用戶名private static final String USERNAME = ActiveMQConnection.DEFAULT_USER;//默認連接密碼private static final String PASSWORD = ActiveMQConnection.DEFAULT_PASSWORD;//默認連接地址private static final String BROKEURL = ActiveMQConnection.DEFAULT_BROKER_URL;//發送的消息數量private static final int SENDNUM = 10;public static void main(String[] args) {//連接工廠 ConnectionFactory connectionFactory;//連接Connection connection = null;//會話 接受或者發送消息的線程Session session = null;//消息的目的地 Destination destination;//消息生產者 MessageProducer messageProducer;//消息隊列名稱String queueName = "helloWord"; //實例化連接工廠connectionFactory = new ActiveMQConnectionFactory(USERNAME, PASSWORD, BROKEURL);try {//通過連接工廠獲取連接connection = connectionFactory.createConnection();//啟動連接 connection.start();//創建sessionsession = connection.createSession(true, Session.AUTO_ACKNOWLEDGE);//創建一個連接自定義隊列名稱的消息隊列destination = session.createQueue(queueName);//創建消息生產者messageProducer = session.createProducer(destination);//發送消息 sendMessage(session, messageProducer);session.commit();} catch (Exception e) {e.printStackTrace();}finally{if(connection != null){try {session.close();connection.close();} catch (JMSException e) {e.printStackTrace();}}}}/*** 發送消息* @param session* @param messageProducer 消息生產者* @throws Exception*/public static void sendMessage(Session session,MessageProducer messageProducer) throws Exception{for (int i = 0; i < SENDNUM; i++) {//創建一條文本消息 TextMessage message = session.createTextMessage("ActiveMQ 發送消息" +i);System.out.println("發送消息:Activemq 發送消息" + i);//通過消息生產者發出消息 messageProducer.send(message);}} }

消費者:

package com.111.activemq;import javax.jms.Connection; import javax.jms.ConnectionFactory; import javax.jms.Destination; import javax.jms.JMSException; import javax.jms.MessageConsumer; import javax.jms.Session; import javax.jms.TextMessage;import org.apache.activemq.ActiveMQConnection; import org.apache.activemq.ActiveMQConnectionFactory; public class JMSConsumer {//默認連接用戶名private static final String USERNAME = ActiveMQConnection.DEFAULT_USER;//默認連接密碼private static final String PASSWORD = ActiveMQConnection.DEFAULT_PASSWORD;//默認連接地址private static final String BROKEURL = ActiveMQConnection.DEFAULT_BROKER_URL;public static void main(String[] args) {//連接工廠 ConnectionFactory connectionFactory;//連接Connection connection = null;//會話 接受或者發送消息的線程 Session session;//消息的目的地 Destination destination;//消息的消費者 MessageConsumer messageConsumer;//消息隊列名稱String queueName = "helloWord";//實例化連接工廠connectionFactory = new ActiveMQConnectionFactory(USERNAME, PASSWORD, BROKEURL);try {//通過連接工廠獲取連接connection = connectionFactory.createConnection();//啟動連接 connection.start();//創建sessionsession = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);//創建一個連接自定義隊列名稱的消息隊列destination = session.createQueue(queueName);//創建消息消費者messageConsumer = session.createConsumer(destination);while (true) {TextMessage textMessage = (TextMessage) messageConsumer.receive(100000);if(textMessage != null){System.out.println("收到的消息:" + textMessage.getText());}else {break;}}} catch (JMSException e) {e.printStackTrace();}} }

多線程生產者:

package com.111.activemq;import javax.jms.Connection; import javax.jms.ConnectionFactory; import javax.jms.Destination; import javax.jms.JMSException; import javax.jms.MessageProducer; import javax.jms.Session; import javax.jms.TextMessage;import org.apache.activemq.ActiveMQConnection; import org.apache.activemq.ActiveMQConnectionFactory;public class JMSProducerMultithreading implements Runnable{//默認連接用戶名private static final String USERNAME = ActiveMQConnection.DEFAULT_USER;//默認連接密碼private static final String PASSWORD = ActiveMQConnection.DEFAULT_PASSWORD;//默認連接地址private static final String BROKEURL = ActiveMQConnection.DEFAULT_BROKER_URL;//發送的消息數量private static final int SENDNUM = 3;/*** 發送消息* @param session* @param messageProducer 消息生產者* @throws Exception*/public static void sendMessage(Session session,MessageProducer messageProducer) throws Exception{for (int i = 0; i < SENDNUM; i++) {//獲取當前線程idString threadId = Thread.currentThread().getId()+"";//創建一條文本消息 TextMessage message = session.createTextMessage("ActiveMQ 發送消息" +i+"生產者線程編號="+threadId);//控制臺打印System.out.println("ActiveMQ 發送消息" +i+"生產者線程編號="+threadId);//通過消息生產者發出消息 messageProducer.send(message);}}@Overridepublic void run() {//連接工廠 ConnectionFactory connectionFactory;//連接Connection connection = null;//會話 接受或者發送消息的線程Session session = null;//消息的目的地 Destination destination;//消息生產者 MessageProducer messageProducer;//消息隊列名稱String queueName = "Multithreading";//實例化連接工廠connectionFactory = new ActiveMQConnectionFactory(USERNAME, PASSWORD, BROKEURL);try {//通過連接工廠獲取連接connection = connectionFactory.createConnection();//啟動連接 connection.start();//創建sessionsession = connection.createSession(true, Session.AUTO_ACKNOWLEDGE);//創建一個名稱為HelloWorld的消息隊列destination = session.createQueue(queueName);//創建消息生產者messageProducer = session.createProducer(destination);//發送消息 sendMessage(session, messageProducer);session.commit();} catch (Exception e) {e.printStackTrace();}finally{if(connection != null){try {session.close();connection.close();} catch (JMSException e) {e.printStackTrace();}}}} }

多線程消費者:

package com.111.activemq;import javax.jms.Connection; import javax.jms.ConnectionFactory; import javax.jms.Destination; import javax.jms.JMSException; import javax.jms.MessageConsumer; import javax.jms.Session; import javax.jms.TextMessage;import org.apache.activemq.ActiveMQConnection; import org.apache.activemq.ActiveMQConnectionFactory;public class JMSConsumerMultithreading implements Runnable{//默認連接用戶名private static final String USERNAME = ActiveMQConnection.DEFAULT_USER;//默認連接密碼private static final String PASSWORD = ActiveMQConnection.DEFAULT_PASSWORD;//默認連接地址private static final String BROKEURL = ActiveMQConnection.DEFAULT_BROKER_URL;@Overridepublic void run() {ConnectionFactory connectionFactory;//連接工廠Connection connection = null;//連接 Session session;//會話 接受或者發送消息的線程Destination destination;//消息的目的地 MessageConsumer messageConsumer;//消息的消費者//消息隊列名稱String queueName = "Multithreading";//實例化連接工廠connectionFactory = new ActiveMQConnectionFactory(USERNAME, PASSWORD, BROKEURL);try {//通過連接工廠獲取連接connection = connectionFactory.createConnection();//啟動連接 connection.start();//創建sessionsession = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);//創建一個連接HelloWorld的消息隊列destination = session.createQueue(queueName);//創建消息消費者messageConsumer = session.createConsumer(destination);String threadId = Thread.currentThread().getId()+""; while (true) {TextMessage textMessage = (TextMessage) messageConsumer.receive(100000);if(textMessage != null){System.out.println("收到的消息:" + textMessage.getText()+" 消費者線程編號="+threadId);}else {break;}}} catch (JMSException e) {e.printStackTrace();}} }

多線程生產者測試類:

package com.111.activemq;public class JMSProducerMultithreadingTest {public static void main(String[] args) {JMSProducerMultithreading jpm = new JMSProducerMultithreading();//啟動10個生產者線程for(int i = 0 ; i < 10 ; i++){Thread t = new Thread(jpm);t.start();}} }

多線程消費者測試類:

package com.111.activemq;public class JMSConsumerMultithreadingTest {public static void main(String[] args) {JMSConsumerMultithreading jcm = new JMSConsumerMultithreading();//啟動3個消費者者線程for(int i = 0 ; i < 3 ; i++){Thread t = new Thread(jcm);t.start();}} }

?

轉載于:https://www.cnblogs.com/MIC2016/p/6098647.html

總結

以上是生活随笔為你收集整理的ActiveMQ queue 代码示例的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 在线观看黄网址 | 日本黄色免费视频 | 国产麻豆精品久久一二三 | 欧美综合亚洲 | 红桃视频一区二区三区免费 | 日韩三级国产精品 | 亚洲视频欧美视频 | 日韩激情一区二区三区 | 免费成人福利视频 | 蜜臀99久久精品久久久久小说 | 亚洲 欧美 另类 综合 偷拍 | 人人看人人射 | 国产一级免费大片 | 在线观看一级片 | 成年人性生活免费视频 | 91免费看国产 | 欧美一区二区三区久久成人精品 | 波多野结衣视频免费看 | 最新超碰 | 中日韩在线视频 | 亚洲污片 | 亚洲精品粉嫩小泬20p | 日本三级吃奶头添泬 | 91精品综合久久久久久五月天 | 亚洲性图视频 | 一区二区三区视频观看 | 人人射人人插 | 有声小说 成人专区 | 五月婷丁香 | 日本在线一 | 青青青网| 精品一区二区三区在线免费观看 | 一本大道久久 | 亚洲91精品 | 黄色片久久久 | 91视频一区 | 毛片一级在线观看 | 樱花动漫无圣光 | 国产av一区二区三区传媒 | 婷婷在线免费视频 | 多啪啪免费视频 | 日日摸日日碰夜夜爽无码 | 成人网在线看 | 好吊视频一区二区 | 一本亚洲| 精品人妻互换一区二区三区 | 日日狠狠久久 | 久久久亚洲天堂 | 欧美精品二区三区四区免费看视频 | 国产三级小视频 | 国产91免费在线观看 | 成年人av| 制服丝袜在线播放 | 亚洲欧美日韩在线不卡 | 中文字幕一区三区 | 丰满岳跪趴高撅肥臀尤物在线观看 | 日韩一区中文字幕 | 在线视频三区 | 91精品欧美| 小草av在线 | 另类激情亚洲 | 波多野结衣av在线免费观看 | 色91精品久久久久久久久 | 国产成人无码久久久精品天美传媒 | 色视频一区 | 精品日韩在线观看 | 午夜a级片 | 国产农村妇女毛片精品久久麻豆 | 色网站在线免费观看 | 亚洲AV综合色区无码国产播放 | 日批视频在线播放 | 日韩午夜在线视频 | 免费看毛片的网站 | 各种含道具高h调教1v1男男 | 亚洲一区av在线 | 三级在线看中文字幕完整版 | 国产精品第12页 | 五月丁香花 | 亚洲天堂资源 | 黄视频网站在线看 | www日本www | 精品人妻一区二区三区四区五区 | 极品少妇xxxx精品少妇 | 亚洲国产精品99久久久久久久久 | 欧美成人自拍视频 | av在线网址大全 | 久久四色 | 丁香八月婷婷 | 成人免费看片入口 | 婷婷黄色网 | 中文字幕网址在线 | 香港三日本8a三级少妇三级99 | 亚洲777 | 无毒黄色网址 | 美女扒开内裤让男人桶 | 五月丁香 | 亚洲av综合色区无码一二三区 | 国产乡下妇女做爰 | 久久99深爱久久99精品 |