最近老是听朋友说mq, 趁着工作不忙, 学习了一下 apache 的 activeMQ. 第一次接触, 许多东西都不懂, 请大家多多指教.
此次学习只涉及到接收消息.
1. activeMQ 官方下载地址: http://activemq.apache.org/download-archives.html. 我下载的版本是 5.12.0(Windows)
2. 将下载的 zip 包解压到指定目录: 例如: c:\activeMQ
3. 解压后目录如下
4. 进入 docs, 里面有 index.html 和 user-guide.html 两个文件, 可以看一下, 里面介绍了一些准备工作和启动方式.
5. 看过文档之后, 发现启动 activeMQ 的命令在 bin 目录下, 尝试启动: 打开 command , 进入到对应目录, 运行 activemq.bat start 命令, 启动成功如图所示:
6. 根据文档介绍, 此时可访问http://127.0.0.1:8161/admin, 用户名和密码 admin/admin , 进去之后 如图
7, 点击 Queues 菜单, 创建一个名字为 test 的 queues ,
8. 点击 Send 菜单, 发送消息, 默认的Destination 是foo.bar , 可以改为我们刚才创建的 test, 填写发送条数和内容, 点击发送, 可以在 Queues 中看到
9. 接收消息.参考的是examples\openwire\java\src\main\java\example 下的 listener.java
<pre name="code" class="java"> ActiveMQConnectionFactory factory = new ActiveMQConnectionFactory("tcp://localhost:61616"); Connection connection = null; try { connection = factory.createConnection("admin", "admin"); connection.start(); Session session = connection.createSession(Boolean.FALSE, Session.AUTO_ACKNOWLEDGE); //如果在http://127.0.0.1:8161/admin中创建的是Queues, 就用createQueue, 如果是topic, 就用createTopic Destination queue = session.createQueue("test"); //Destination queue = session.createTopic("test2"); MessageConsumer consumer = session.createConsumer(queue); while(true){ TextMessage message = (TextMessage) consumer.receive(100000); if(message!=null){ System.out.println(message.getText()); }else { break; } } } catch (JMSException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally{ if(connection!=null){ try { connection.close(); } catch (JMSException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
10. 运行此方法即可
相关推荐
总之,ActiveMQ是一个强大且灵活的消息中间件,学习和掌握它的使用,将有助于你构建更加稳定、可扩展的分布式系统。通过实际操作和不断实践,你可以更好地理解和利用ActiveMQ的特性,解决复杂系统中的通信问题。
根据提供的文件信息:“activeMQ入门到精通”,我们可以深入探讨ActiveMQ的相关知识点,包括其基本概念、安装配置步骤、核心功能特性以及应用场景等。 ### ActiveMQ简介 ActiveMQ是一款开源的消息中间件,它支持...
本教程将引导你迈入ActiveMQ学习之旅的第一步,帮助你理解其核心概念和基本操作。 1. **ActiveMQ简介** Apache ActiveMQ是一个完全支持JMS 1.1和JMS 2.0规范的消息代理,它允许应用程序通过发送和接收消息来解耦...
**ActiveMQ 入门示例代码详解** ActiveMQ 是 Apache 开源组织开发的一款高效、可靠的开源消息中间件,它...同时,ActiveMQ 还提供了丰富的特性,如事务、消息确认、消息分页、网络连接等,等待你在后续的学习中探索。
这个压缩包文件包含了一系列与ActiveMQ学习相关的资源,包括案例代码、案例说明文档和技术总结文档,非常适合初学者和进阶者深入理解和实践ActiveMQ。 1. **ActiveMQ基础概念** - **消息队列**:ActiveMQ的核心是...
通过深入学习和实践,你可以更好地掌握ActiveMQ的使用,为你的分布式系统构建稳定、高效的通信桥梁。阅读提供的"ActiveMQ实践入门指南.pdf"文件,将为你提供更详细的步骤和实例,助你进一步提升ActiveMQ的应用技能。
无论是对于初学者还是经验丰富的开发者而言,学习并掌握 ActiveMQ 都是一项非常有价值的技能。通过本文的介绍,希望能帮助读者深入了解 ActiveMQ 的核心特性和应用场景,为实际项目的实施提供参考。
在“activemq入门实例”中,你将学习到以下几个关键知识点: 1. **ActiveMQ的基本概念**:ActiveMQ作为JMS提供商,它提供一个服务器端(broker)来存储和转发消息,客户端则通过连接到这个服务器来发送和接收消息。...
**ActiveMQ** 是Apache出品的一款开源消息中间件,它实现了JMS规范,并提供了额外的功能和扩展性。ActiveMQ支持多种协议,如AMQP、STOMP等,这使得它可以与其他非Java环境下的消息系统集成。 #### 五、ActiveMQ的...
SpringActiveMQ入门示例是关于如何在Java环境中利用Spring框架与Apache ActiveMQ集成的一个实践教程。这个示例主要适用于开发者想要了解如何在Spring应用中使用消息队列进行异步通信和解耦。在这个项目中,开发环境...
总结来说,这个JMS-ActiveMQ入门实例将帮助我们理解如何在Java应用程序中使用消息队列和主题,实现可靠的异步通信,并处理网络故障。通过实践这些例子,我们可以更好地掌握JMS和ActiveMQ的使用,为构建可扩展和高...
标题"**HETF-ActiveMQ入门手册.zip**"表明这是一个关于ActiveMQ的入门学习资源,可能包含详细的文档或教程,旨在帮助初学者理解并使用ActiveMQ。"HETF"可能是某个组织、项目或者教程系列的缩写。由于描述中并未提供...
在使用ActiveMQ入门消息中间件的过程中,通常会涉及以下几个关键知识点: 1. 消息中间件的基本概念:消息中间件提供了消息队列模型,使消息的发送者和接收者能够异步通信。这种机制允许系统组件之间不直接相互依赖...
Spring Boot ActiveMQ学习练习demo项目源码是一个针对Java开发者的学习资源,它涵盖了使用Spring Boot集成ActiveMQ进行消息队列操作的基本实践。ActiveMQ是Apache软件基金会的一个开源项目,它是Java消息服务(JMS)...
深入学习ActiveMQ的安全特性,掌握如何为消息中间件实施安全策略,是构建安全可靠消息传递系统的基础。 在分布式系统设计中,ActiveMQ还支持集群和负载均衡。了解如何配置和管理ActiveMQ集群,如何实现消息的负载...
这个压缩包包含了一系列关于ActiveMQ的学习资源,包括API参考手册、笔记、整合教程以及深入的书籍,为理解和使用ActiveMQ提供了丰富的材料。 1. **ActiveMQ Core API.chm**: 这是ActiveMQ核心API的离线帮助文档,...
8. **事务处理**:学习如何在ActiveMQ中使用JMS事务确保消息的一致性和可靠性。 9. **性能监控**:ActiveMQ提供了一套强大的监控工具,包括Web控制台,可以用来查看消息的发送、接收和堆积情况,帮助优化系统性能。...
ActiveMQ学习资料 Activemq是Apache软件基金会的一个开源的消息总线系统,使用Java语言编写的,遵循JMS...Activemq学习资料涵盖了JMS规范的基本概念和ActiveMQ的实现细节,为学习和使用Activemq提供了良好的基础。
本篇文章将围绕 ActiveMQ 在 Java 中的应用进行深入探讨,通过分析【Java学习】activemq消息中间件学习demo.zip压缩包中的内容,为读者提供一个全面的ActiveMQ学习实践指南。 首先,需要明确的是,ActiveMQ 是 ...
### ActiveMQ实践入门指南知识点详解 #### 一、ActiveMQ简介与重要性 - **Apache ActiveMQ**: Apache ActiveMQ是一款由Apache...通过学习和应用ActiveMQ,开发者可以构建出更加健壮、灵活和易于维护的分布式系统。