ActiveMq安装以及简单的测试

onlylixiaobei 2020-06-09

如果你还没有使用过消息中间件,这篇文章可以带你初步感受一下消息中间件。下面就带大家简单测试一下ActiveMq;

一、第一部分下载以及安装:

1、首先ActiveMq属于Apache下,下载路径:http://activemq.apache.org/  Classic(经典的)

ActiveMq安装以及简单的测试

2、这里有Windows版本和linux版本 ,大家可以根据自己不同的需求来下载。

 ActiveMq安装以及简单的测试

3、下载完了直接解压就可以使用了;

ActiveMq安装以及简单的测试

 4、进入bin目录下找到对应的bat文件点击运行,这里运行.exe文件也可以只是程序运行出错时,exe文件会直接闪退;

ActiveMq安装以及简单的测试

5、启动以后界面看下图:如果不进行修改配置文件的话  会有默认的账号密码和端口号(8161)

 ActiveMq安装以及简单的测试

5、 ActiveMq做的还是比较友好的:看下图的Client界面你就明白了 http://localhost:8161/

 ActiveMq安装以及简单的测试

ActiveMq安装以及简单的测试

 二、测试阶段:

1、ActiveMq已经下载安装完成,接下来进入测试阶段;

    1. 先创建一个maven项目;
    2. 添加pom依赖(如何查找pom依赖:浏览器中直接搜索 Maven Repository: activemq-all )ActiveMq安装以及简单的测试
    3. 点击进入找到对应的maven依赖;

ActiveMq安装以及简单的测试

2、消息发送者的代码:

package com.example.dongl.activemq.simple;

import org.apache.activemq.ActiveMQConnectionFactory;

import javax.jms.*;

/**
 * ActiveMq  Queue 简单的测试 * 消息发送者
 */
public class Sender {
    public static void main(String[] args) throws JMSException {
        //获取连接工厂
        ActiveMQConnectionFactory connectionFactory = new ActiveMQConnectionFactory(
                //如果你没有修改配置文件时,可以这么写,如果你修改了账户密码 直接替换就好了
                ActiveMQConnectionFactory.DEFAULT_USER,
                ActiveMQConnectionFactory.DEFAULT_PASSWORD,
                "tcp://localhost:61616"
        );
        //获取一个指向ActiveMq的连接
        Connection connection = connectionFactory.createConnection();
        //获取session  这里事务 先写成false ACK也写成默认提交
        Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
        //找到目的地 获取destination,然后向这个目的地写数据 ,消费端也会从这个目的地取数据
        Queue queue = session.createQueue("dongliang");
        //  producer->创建者   消息创建者
        MessageProducer producer = session.createProducer(queue);
        //创建消息
        for (int i = 0; i < 100; i++) {
            TextMessage textMessage = session.createTextMessage("测试数据");
            //向目的地写消息
            producer.send(textMessage);
        }
        //关闭连接(根据情况一般为短连接  也有情况一直向mq写消息)
        connection.close();
        System.out.println("exit code 0 !!!!!!!!!");
    }

}

3、运行完生产者代码,看一下客户端界面:

ActiveMq安装以及简单的测试

4、消息接受者代码:

package com.example.dongl.activemq.simple;

import org.apache.activemq.ActiveMQConnectionFactory;

import javax.jms.*;

public class Receiver {
    public static void main(String[] args) throws JMSException {
        //获取连接工厂
        ActiveMQConnectionFactory connectionFactory = new ActiveMQConnectionFactory(
                ActiveMQConnectionFactory.DEFAULT_USER,
                ActiveMQConnectionFactory.DEFAULT_PASSWORD,
                "tcp://localhost:61616"
        );
        //获取一个指向ActiveMq的连接
        Connection connection = connectionFactory.createConnection();
        connection.start();
        //获取session
        Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
        //找到目的地 获取destination,然后向这个目的地写数据 ,消费端也会从这个目的地取数据
        Destination queue = session.createQueue("dongliang");
        //  producer->创建者   消息创建者
        MessageConsumer consumer = session.createConsumer(queue);

        //获取消息
//        while(true){
//            Message message = consumer.receive();
//            System.out.println("message"+message);
//        }

        for(int i = 0 ; ; i++){
            TextMessage message = (TextMessage)consumer.receive();
            System.out.println(message.getText());
        }
    }
}

5、运行一下接收者代码:

ActiveMq安装以及简单的测试

6、 看一下客户端界面:

ActiveMq安装以及简单的测试

 结果显示:产生的消息已经被消费;

初步的介绍就简单写到这里,以后会陆续介绍一些高级用法,如果有兴趣一起学习,可以关注一下,一起讨论一起学习。

相关推荐

xinglun / 0评论 2020-06-14