千家信息网

ActiveMQ简易入门

发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,ActiveMQ官方下载地址:http://activemq.apache.org/download.html下载解压后,执行bin目录下activemq.bat启动mq服务找到lib目录并引入相关j
千家信息网最后更新 2025年12月03日ActiveMQ简易入门

ActiveMQ官方下载地址:http://activemq.apache.org/download.html


下载解压后,执行bin目录下activemq.bat启动mq服务


找到lib目录并引入相关jar包


Sender消息发送者类

package com.ycj.activemq;import javax.jms.Connection;import javax.jms.ConnectionFactory;import javax.jms.DeliveryMode;import javax.jms.Destination;import javax.jms.JMSException;import javax.jms.Message;import javax.jms.MessageProducer;import javax.jms.Session;import org.apache.activemq.ActiveMQConnectionFactory;public class Sender {    private static final String MQ_USER = "admin";        private static final String MQ_PWD = "admin";        private static final String MQ_URL = "tcp://localhost:61616";        private static final String MQ_QUEUE_DEFAULT = "testQueue";                public static void main(String[] args) throws JMSException {                // 创建JMS连接工厂                ConnectionFactory factory = new ActiveMQConnectionFactory(MQ_USER, MQ_PWD, MQ_URL);                // 通过工厂获取链接并启动                Connection connection = factory.createConnection();                connection.start();                // 创建session                Session session = connection.createSession(Boolean.TRUE, Session.AUTO_ACKNOWLEDGE);                // 创建destination 消息目的地                Destination destination = session.createQueue(MQ_QUEUE_DEFAULT);                // 根据destination初始化一个生产者                MessageProducer producer = session.createProducer(destination);                // 生产者消息不持久化            producer.setDeliveryMode(DeliveryMode.NON_PERSISTENT);            // 生成消息 并发送            Message msg1 = session.createTextMessage("I'm msg1");            Message msg2 = session.createTextMessage("I'm msg2");            producer.send(msg1);            producer.send(msg2);            session.commit();            connection.close();            System.out.println("producer send msg done!");        }}


Receiver消息接收者类

package com.ycj.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.ActiveMQConnectionFactory;public class Receiver {        private static final String MQ_USER = "admin";        private static final String MQ_PWD = "admin";        private static final String MQ_URL = "tcp://localhost:61616";        private static final String MQ_QUEUE_DEFAULT = "testQueue";                public static void main(String[] args) throws JMSException {                // 创建JMS连接工厂                ConnectionFactory factory = new ActiveMQConnectionFactory(MQ_USER, MQ_PWD, MQ_URL);                // 通过工厂获取链接并启动                Connection connection = factory.createConnection();                connection.start();                // 创建session                Session session = connection.createSession(Boolean.TRUE, Session.AUTO_ACKNOWLEDGE);                // 创建destination 消息目的地                Destination destination = session.createQueue(MQ_QUEUE_DEFAULT);                // 根据destination初始化一个消费者                MessageConsumer consumer = session.createConsumer(destination);                while (true) {          TextMessage msg = (TextMessage) consumer.receive(1000*1000);          if (null != msg) {              System.out.println("message has been received:" + msg.getText());          }                 }        }}


依次运行Receiver和Sender,控制台输出:

Sender

Receiver


打开浏览器输入http://localhost:8161/admin/index.jsp,选择Queues可以监控队列消费情况

消息 工厂 生产者 目录 目的 目的地 链接 消费 生产 发送者 地址 官方 情况 接收者 控制台 浏览器 消费者 队列 控制 服务 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 游戏机软件开发 网络安全提示内容 联想服务器有合格证吗 数据库字段长度最好是多少 运动会管理系统数据库分析与实现 计算机网络技术专业相关调查报告 有限元仿真软件开发招聘 江苏综合软件开发哪家好 中国大学生网络安全答题答案 杭州服务器机房搭建报价 远程服务器为什么不能登陆 ppt软件开发模板 生死狙击2服务器几点开放 转服务器清CD吗 软件开发职业规划面试 江苏常州服务器托管云服务器 部队网络安全防范警示语 河北c语言软件开发哪家实惠 i3 服务器系统3220 天津有软件开发学习的地方吗 魔兽世界怀旧服务器试玩 网络连接不上服务器是为什么 荒野的召唤服务器名称怎么改 2019年网络安全热点问题 江苏省网络安全宣传周是 如何用云服务器搭建内网穿透平台 数据库中检查视图是什么 第一道防线网络安全 学校网络安全规划方案 广州盛祺网络技术科技有限公司
0