ActiveMQ点对点通讯,生产者-消费者
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                ActiveMQ点对点通讯,生产者-消费者
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.                        
                                首先引入pom依賴:
?? ??? ?<!--activemq的依賴 -->
 ?? ??? ?<dependency>
 ?? ??? ??? ?<groupId>org.apache.activemq</groupId>
 ?? ??? ??? ?<artifactId>activemq-all</artifactId>
 ?? ??? ??? ?<version>5.12.0</version>
 ?? ??? ?</dependency>
生產者Producter:?
import javax.jms.Connection; import javax.jms.ConnectionFactory; import javax.jms.DeliveryMode; import javax.jms.Destination; import javax.jms.JMSException; import javax.jms.MessageProducer; import javax.jms.Queue; import javax.jms.Session; import javax.jms.TextMessage;import org.apache.activemq.ActiveMQConnectionFactory;public class Producter {private static final int SEND_NUMBER=5;public static void main(String[] args) throws JMSException {//構造ConnectionFactory實例對象,此處采用ActiveMq的實現jar//ConnectionFactory:連接工廠。JMS用它創建連接ConnectionFactory connectionFactory=new ActiveMQConnectionFactory(ActiveMQConnectionFactory.DEFAULT_USER,ActiveMQConnectionFactory.DEFAULT_PASSWORD,"tcp://localhost:61616");//Connection:JMS 客戶端到JMS Privider的連接Connection connection =connectionFactory.createConnection();connection.start();//Session :一個發送或接收消息的線程Session session =connection.createSession(false, Session.AUTO_ACKNOWLEDGE);//Destination :消息的目的地,消息發送給誰Destination destination = session.createQueue("qushen-queue");//消息的發送者/生產者MessageProducer producer =session.createProducer(destination);//設置不持久producer.setDeliveryMode(DeliveryMode.NON_PERSISTENT);//發送一條消息sendMessage(session,producer,"qushen");connection.close();}public static void sendMessage(Session session,MessageProducer producer,String msg) throws JMSException {TextMessage message=session.createTextMessage("Hello AcitiveMQ Msg:"+msg);producer.send(message);} }消費者Consumer:
package com.qushen.acitivemq.consumer;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.ActiveMQConnectionFactory;public class Consumer {public static void main(String[] args) throws JMSException {//構造ConnectionFactory實例對象,此處采用ActiveMq的實現jar//ConnectionFactory:連接工廠。JMS用它創建連接ConnectionFactory connectionFactory=new ActiveMQConnectionFactory(ActiveMQConnectionFactory.DEFAULT_USER,ActiveMQConnectionFactory.DEFAULT_PASSWORD,"tcp://localhost:61616");//Connection:JMS 客戶端到JMS Privider的連接Connection connection =connectionFactory.createConnection();connection.start();//Session :一個發送或接收消息的線程Session session =connection.createSession(false, Session.AUTO_ACKNOWLEDGE);//Destination :消息的目的地,消息發送給誰Destination destination = session.createQueue("qushen-queue");//消息的接受者/消費者MessageConsumer consumer =session.createConsumer(destination);while(true) {TextMessage message=(TextMessage) consumer.receive();if(null != message ) {System.out.println("收到消息:"+message.getText());}elsebreak;}}}?啟動生產者之后啟動消費者輸出面板如下顯示:
?
總結
以上是生活随笔為你收集整理的ActiveMQ点对点通讯,生产者-消费者的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: Spring boot 默认日志配置
- 下一篇: CloudCone升级配置和重装系统图文
