好吧,我承认自己在写blog方面很不好,经常一个链接或者文章直接粘贴复制过来,一点自己的读后感都没有,慢慢改正咯!
ActiveMQ这个东西,我之前都不知道,是我的领导(old)在QQ上跟我说的,他们的系统用到了这个方面知识,他叫我有时间就了解一下,故而baidu看了相关例子。
来源:http://www.cnblogs.com/xwdreamer/archive/2012/02/21/2360818.html
1.下载ActiveMQ
去官方网站下载:http://activemq.apache.org/ (我是直接百度下载的,没去官网)
2.运行ActiveMQ
解压缩apache-activemq-5.2.0-bin.zip(上传不了),然后双击apache-activemq-5.2.0\bin\activemq.bat运行ActiveMQ程序。
启动ActiveMQ以后,登陆:http://localhost:8161/admin/,如图mq.png所属
3.创建Eclipse项目并运行
创建project:ActiveMQ,并导入apache-activemq-5.2.0\lib目录下需要用到的jar文件(反正就是导入需要用到的jar包,我也忘记了是不是在这个目录下找到的),项目结构如ActiveMQ.png所示:
3.1.Sender.java
package com.dxy.activemq; import javax.jms.Connection; import javax.jms.ConnectionFactory; import javax.jms.DeliveryMode; import javax.jms.Destination; import javax.jms.MessageProducer; import javax.jms.Session; import javax.jms.TextMessage; import org.apache.activemq.ActiveMQConnection; import org.apache.activemq.ActiveMQConnectionFactory; public class Sender { private static final int SEND_NUMBER=5; /** * @param args */ public static void main(String[] args) { //连接工厂,JMS用它创建连接 ConnectionFactory connectionFactory; //JMS客户端到JMS Provider的连接 Connection connection=null; //一个发送或接收消息的线程 Session session; //消息的目的地;消息发送给谁 Destination destination; MessageProducer producer; connectionFactory=new ActiveMQConnectionFactory(ActiveMQConnection.DEFAULT_USER,ActiveMQConnection.DEFAULT_PASSWORD,"tcp://localhost:61616"); try{ connection=connectionFactory.createConnection(); connection.start(); session=connection.createSession(Boolean.TRUE,Session.AUTO_ACKNOWLEDGE); destination=session.createQueue("FirstQueue"); producer=session.createProducer(destination); producer.setDeliveryMode(DeliveryMode.NON_PERSISTENT); sendMessage(session,producer); session.commit(); }catch(Exception e){ e.printStackTrace(); }finally{ try{ if(null!=connection){ connection.close(); } }catch(Throwable ignore){ } } } public static void sendMessage(Session session,MessageProducer producer)throws Exception{ for(int i=1;i<=SEND_NUMBER;i++){ TextMessage message=session.createTextMessage("ActiveMq 发送的消息"+i); System.out.println("发送信息:"+"ActiveMq 发送消息"+i); producer.send(message); } } }
3.2.Receiver.java
3.测试过程
在eclipse里面先启动receiver服务,再启动sender服务,在控制台上打印如下信息:
sender服务对应的控制台:
发送信息:ActiveMq 发送消息1
发送信息:ActiveMq 发送消息2
发送信息:ActiveMq 发送消息3
发送信息:ActiveMq 发送消息4
发送信息:ActiveMq 发送消息5
receiver服务对应的控制台:
收到消息ActiveMq 发送的消息1
收到消息ActiveMq 发送的消息2
收到消息ActiveMq 发送的消息3
收到消息ActiveMq 发送的消息4
收到消息ActiveMq 发送的消息5
相关推荐
在"ActiveMQ学习"的完整例子中,你可以通过编写Java代码来创建生产者和消费者,实践发送和接收消息,了解消息的生命周期和状态。同时,通过配置不同的参数,体验ActiveMQ的灵活性和强大功能。例如,你可以创建一个...
- **事务管理**:学习如何在ActiveMQ中使用本地事务和分布式事务来保证消息的一致性。 - **网络和集群**:掌握如何配置和管理ActiveMQ的网络连接和集群,以提高可用性和容错性。 通过深入学习和实践,你可以熟练地...
activemq学习心得 activemq是Apache软件基金会所研发的开放源代码消息队列iddleware,主要用来实现异步消息处理、解耦合和扩展系统。以下是activemq学习心得的知识点总结: 一、activemq配置文件 activemq的配置...
ActiveMQ学习资料 Activemq是Apache软件基金会的一个开源的消息总线系统,使用Java语言编写的,遵循JMS(Java Message Service)规范。下面是Activemq学习资料的知识点总结: JMS基本构件 * 连接工厂...
Spring Boot ActiveMQ学习练习demo项目源码是一个针对Java开发者的学习资源,它涵盖了使用Spring Boot集成ActiveMQ进行消息队列操作的基本实践。ActiveMQ是Apache软件基金会的一个开源项目,它是Java消息服务(JMS)...
这篇"ActiveMQ学习笔记之九--发送消息到队列中"主要探讨的是如何通过编程方式向ActiveMQ队列发送消息,这对于理解和应用消息中间件至关重要。 首先,我们要理解ActiveMQ中的队列(Queue)概念。队列是一种先进先出...
在本篇ActiveMQ学习笔记中,我们将探讨如何通过纯代码方式启动一个嵌入式的Broker,这对于测试、开发或者快速原型构建非常有用。ActiveMQ是一个开源的消息代理,它遵循Java消息服务(JMS)规范,提供了高可靠性的...
总的来说,这个学习资料包提供了从理论到实践的全方位ActiveMQ学习路径。从基础的ActiveMQ使用到高级的集群配置,再到生产环境中的实际应用,每个环节都覆盖到了。对Java开发者和系统架构师而言,这些都是提升技能和...
工作学习-消息中间件ActiveMQ学习总结 本文总结了消息中间件ActiveMQ的学习要点,涵盖了为什么使用消息中间件、消息中间件的组成、JMS规范、ActiveMQ简介、消息中间件的应用场景等方面。 一、为什么使用消息中间件...
本教程将引导你迈入ActiveMQ学习之旅的第一步,帮助你理解其核心概念和基本操作。 1. **ActiveMQ简介** Apache ActiveMQ是一个完全支持JMS 1.1和JMS 2.0规范的消息代理,它允许应用程序通过发送和接收消息来解耦...
标题“activemq学习(1)”提示我们即将探讨的是Apache ActiveMQ,一个开源的消息中间件,它在Java消息服务(JMS)规范下运行。在这个初步的学习阶段,我们将主要了解ActiveMQ的基本概念、功能以及如何开始使用它。 ...
这个压缩包文件包含了一系列与ActiveMQ学习相关的资源,包括案例代码、案例说明文档和技术总结文档,非常适合初学者和进阶者深入理解和实践ActiveMQ。 1. **ActiveMQ基础概念** - **消息队列**:ActiveMQ的核心是...
**ActiveMQ学习笔记之一——ActiveMQ下载** ActiveMQ是Apache软件基金会开发的一个开源消息中间件,它是基于Java消息服务(JMS)规范的,用于在分布式系统中传递消息。作为一个高性能、可伸缩且可靠的解决方案,...
标题 "activemq学习(2) spring+activemq" 暗示了这篇内容将探讨如何在Spring框架中集成ActiveMQ,一个流行的开源消息代理和消息中间件。ActiveMQ允许应用程序之间通过消息传递进行通信,而Spring则是一个广泛使用...
【ActiveMQ 学习总结】 在现代网络通讯中,HTTP 请求通常采用同步方式,基于请求-响应模式。这意味着客户端调用服务端接口后,必须等待服务端返回结果才能继续执行,这种方式称为同步调用。然而,同步调用的缺点...
### 消息队列Activemq学习笔记 #### MQ入门概述 消息队列(Message Queue,简称MQ)是一种用于在应用程序之间传递数据的机制。它允许应用之间通过发送消息进行通信,而无需直接调用对方。 ##### 前言:MQ=消息...
### Apache ActiveMQ 学习笔记 #### 一、ActiveMQ简介与安装 ##### 1.1 ActiveMQ概述 Apache ActiveMQ 是一个完全支持 JMS 1.1 和 J2EE 1.4 规范的消息服务器。它适用于 Java 消息服务 (JMS),并且是一个开源项目...
在本篇ActiveMQ学习笔记中,我们将探讨JMS(Java Message Service)与Spring框架的集成。JMS是一种标准API,用于在分布式环境中进行异步消息传递,而Spring框架则为开发人员提供了强大的依赖注入和管理服务的能力。...
ActiveMQ 是 Apache 开源项目的一款强大且流行的消息中间件,它的主要作用是通过解耦应用程序,减少服务器间的直接依赖,从而提升系统的可扩展性和容错性。消息中间件的引入使得服务之间通过消息传递进行通信,而...