zoukankan      html  css  js  c++  java
  • ActiveMQ学习教程

    一、activemq安装

    官网地址:https://activemq.apache.org/

    具体安装过程不赘述,解压即安装,

    二、使用

    activemq有queuetopic两种模式,

    我们以queue模式为例,进行一次java编码

    生产者:

    public class JmsProduce {
        public static void main(String[] args) {
            // 1 创建连接工场
            ConnectionFactory connect = new ActiveMQConnectionFactory("tcp://192.168.2.128:61616");
            try {
                Connection connection = connect.createConnection();
                connection.start();
                Session session = connection.createSession(true, Session.SESSION_TRANSACTED);
                Queue testQueue = session.createQueue("TEST1");
                MessageProducer producer = session.createProducer(testQueue);
                ActiveMQTextMessage textMessage = new ActiveMQTextMessage();
                textMessage.setText("你好!");
                producer.setDeliveryMode(DeliveryMode.PERSISTENT);
                producer.send(textMessage);
                 System.out.println("activemq生产者发送消息");
                session.commit();
                connection.close();
    
            } catch (JMSException e) {
                e.printStackTrace();
            }
        }
    }
    

    消费者:

    public class JmsConsume {
        public static void main(String[] args) {
            ConnectionFactory connect = new ActiveMQConnectionFactory(ActiveMQConnectionFactory.DEFAULT_USER, ActiveMQConnectionFactory.DEFAULT_PASSWORD, "tcp://192.168.2.128:61616");
            try {
                Connection connection = connect.createConnection();
                connection.start();
                Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
                Queue testqueue = session.createQueue("TEST1");
                MessageConsumer consumer = session.createConsumer(testqueue);
                consumer.setMessageListener(new MessageListener() {
                    @Override
                    public void onMessage(Message message) {
                        if (message instanceof TextMessage) {
                            try {
                                String text = ((TextMessage) message).getText();
                                System.out.println(text);
                            } catch (JMSException e) {
                                e.printStackTrace();
                            }
                        }
                    }
                });
            } catch (JMSException e) {
                e.printStackTrace();
            }
        }
    }
    

    其他后续再补

    你所看得到的天才不过是在你看不到的时候还在努力罢了!
  • 相关阅读:
    Vim自动补全神器YouCompleteMe的配置
    sudo apt-get update 时出现的hit、ign、get的含义
    C语言可变参数宏及‘##’在可变参数中的作用
    搬书游戏
    程序中数字取反结果公式
    利用宏定义中的##实现函数模板的作用
    C中的空宏定义,即只有一个参数
    浏览器缓存技术介绍
    Vue相关原理以及手写一个MyVue
    详解JS中的prototype、__proto__与constructor(图解)
  • 原文地址:https://www.cnblogs.com/heliusKing/p/11261099.html
Copyright © 2011-2022 走看看