apache activemq (消息队列)入门部署demo
1.去官方网站下载:http://activemq.apache.org/
2.运行ActiveMQ
解压缩 apache-activemq-5.14.1-bin,然后双击 apache-activemq-5.14.1\bin\win64\wrapper.exe (如果你的电脑也是64位 )运行ActiveMQ程序
3.创建Eclipse项目并运行
创建project:ActiveMQ-5.5,
并导入apache-activemq-5.14.1\lib目录下需要用到的jar文件,项目结构如下图所示:
(附件)
生成消息
package com.lcl.producer; import javax.jms.Connection; import javax.jms.ConnectionFactory; import javax.jms.Destination; import javax.jms.JMSException; import javax.jms.MessageProducer; import javax.jms.Session; import javax.jms.TextMessage; import org.apache.activemq.ActiveMQConnection; import org.apache.activemq.ActiveMQConnectionFactory; public class JMSproducer { //默认链接用户名 private static final String USERNAME =ActiveMQConnection.DEFAULT_USER; //默认链接密码 private static final String PASSWORD =ActiveMQConnection.DEFAULT_PASSWORD; //默认链接地址 private static final String BROKEURL =ActiveMQConnection.DEFAULT_BROKER_URL; //发送信息的数量 private static final int SENDNUM = 10; public static void main(String[] args) { //连接工厂 ConnectionFactory connectionFactory; //连接 Connection connection = null; //会话 接受或者发送消息的线程 Session session; //消息的目的地 Destination destination; //消息生产者 MessageProducer messageProducer; //实例化连接工厂 connectionFactory = new ActiveMQConnectionFactory(JMSproducer.USERNAME, JMSproducer.PASSWORD, JMSproducer.BROKEURL); try { //通过连接工厂获取连接 connection = connectionFactory.createConnection(); //启动连接 connection.start(); //创建session session = connection.createSession(true, Session.AUTO_ACKNOWLEDGE); //创建一个名字为HelloWord的消息队列 destination = session.createQueue("HelloWord"); //创建消息生产者 messageProducer = session.createProducer(destination); //发送消息 sendMseeage(session,messageProducer); session.commit(); } catch (JMSException e) { // TODO Auto-generated catch block e.printStackTrace(); } } /** * @throws JMSException * * @Title: sendMseeage * @Description: 发送消息 * @param @param session * @param @param messageProducer 消息生产者额 * @return void * @throws */ private static void sendMseeage(Session session, MessageProducer messageProducer) throws JMSException { for(int i=0;i<JMSproducer.SENDNUM;i++){ //创建一跳文本消息 TextMessage message = session.createTextMessage("ActiveMQ 发送消息"+i); System.out.println("发送消息:Activemq 发送消息" + i); messageProducer.send(message); } } }
当消息生成以后去activemq的服务器查看,会发现生成一条消息,未读10条。
package com.lcl.consumer; 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.ActiveMQConnection; import org.apache.activemq.ActiveMQConnectionFactory; public class JMSConsumer { //默认链接用户名 private static final String USERNAME =ActiveMQConnection.DEFAULT_USER; //默认链接密码 private static final String PASSWORD =ActiveMQConnection.DEFAULT_PASSWORD; //默认链接地址 private static final String BROKEURL =ActiveMQConnection.DEFAULT_BROKER_URL; public static void main(String[] args) { //连接工厂 ConnectionFactory connectionFactory; //连接 Connection connection = null; //会话 接受或者发送消息的线程 Session session; //消息的目的地 Destination destination; //消息的消费者 MessageConsumer messageConsumer; //实例化连接工厂 connectionFactory = new ActiveMQConnectionFactory(JMSConsumer.USERNAME, JMSConsumer.PASSWORD, JMSConsumer.BROKEURL); try { //通过连接工厂获取连接 connection = connectionFactory.createConnection(); //启动连接 connection.start(); //创建session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); //创建一个连接HelloWord的消息队列 destination =session.createQueue("HelloWord"); //创建消息的消费者 messageConsumer = session.createConsumer(destination); while(true){ TextMessage textMessage = (TextMessage) messageConsumer.receive(100000); if(textMessage != null){ System.out.println("收到的消息:" + textMessage.getText()); }else{ break; } } } catch (JMSException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
这个时候再去activemq的服务器查看,会发现刚才生成的消息,未读0条,已读10条。
相关推荐
在这个"activeMq消息队列demo"中,我们可以学习到如何在实际开发环境中运用ActiveMQ。 1. **ActiveMQ基本概念** - **消息队列**:是一种先进先出(FIFO)的数据结构,消息按照发送顺序被存储和消费。 - **生产者*...
在"消息队列实践项目"中,你将会学习如何使用Java API实现JMS客户端,创建消息生产者和消费者,以及如何配置和使用常见的消息中间件,如Apache ActiveMQ、RabbitMQ或Kafka。此外,还会涉及到如何设计和实施消息序列...
在Apache ActiveMQ中,消息生产者(Producer)发送消息到队列,而消息消费者(Consumer)从队列中取出并处理这些消息。ActiveMQ支持多种协议,包括OpenWire、STOMP、AMQP、MQTT和WS,这使得它能与各种编程语言和平台...
这只是一个简单的入门起点,实际应用中,ActiveMQ还有许多高级特性和配置,如消息优先级、消息过滤、集群部署等,都需要深入学习和实践。希望这个实例能帮助你打开消息队列的大门,进一步探索分布式系统中的通信奥秘...
Apache ActiveMQ是业界广泛使用的开源消息中间件,它遵循Java Message Service (JMS) 规范,提供高效、可靠的异步消息传递服务。在你提到的"apache-activemq-5.15.2"版本中,包含了"webapps-demo"这个目录,这是一个...
【标题】"activemq-demo" 是一个基于Spring框架与Apache ActiveMQ集成的示例项目,旨在展示如何在实际应用中构建一个高效、可靠的消息传递系统。ActiveMQ是Apache软件基金会开发的一个开源消息代理,它遵循多种消息...
ActiveMQ整合Spring的Demo是一个典型的Java企业级应用示例,它展示了如何在Spring框架中集成Apache ActiveMQ,以便实现消息队列的功能。ActiveMQ是Apache软件基金会的一个开源项目,它是一个功能丰富的Java消息服务...
ActiveMQ是Apache软件基金会开发的一款开源消息中间件,它遵循Java消息服务(JMS)标准,提供高效、可靠的异步消息传递。在分布式系统中,消息中间件扮演着至关重要的角色,它允许不同组件之间通过解耦的方式进行...
而ActiveMQ是Apache出品的一款开源消息中间件,它遵循JMS(Java Message Service)规范,用于处理应用程序之间的异步通信。本教程将详细介绍如何在Spring Boot项目中集成ActiveMQ,实现消息接收的Demo。 首先,我们...
ActiveMQ是中国最流行的开源消息中间件之一,由Apache软件基金会开发。它基于Java Message Service (JMS) API,提供高效、可靠的异步消息传递服务,是企业级应用中实现解耦、可靠传输和数据同步的理想选择。在这个...
【标题】"activemq_demo,activeMQ的简单demo"涉及的是Apache ActiveMQ的实践应用,这是一款开源的消息中间件,广泛应用于分布式系统中的异步通信。ActiveMQ提供了多种消息协议的支持,包括开放消息中间件协议...
ActiveMQ是Apache软件基金会下的一个开源项目,它是一款功能强大的消息中间件,支持多种消息协议,如AMQP、STOMP、OpenWire等。在版本5.1中,ActiveMQ提供了一流的消息传输性能和可靠性,能够处理大规模并发的消息...
在分布式系统中,消息队列(Message Queue)作为解耦组件和异步处理的重要工具,Apache ActiveMQ 是一款广泛使用的开源消息中间件。本篇主要围绕"ActiveMQ中Topic持久化Demo"进行深入探讨,旨在帮助读者理解如何在...
- **消息中间件**:ActiveMQ是Apache软件基金会开发的一个开源项目,作为消息中间件,它的主要任务是解耦生产者和消费者,确保消息的可靠传输。 - **JMS(Java Message Service)**:虽然ActiveMQ最初是基于Java的...
总的来说,"ActiveMQ简单demo"提供了一个基础的学习平台,帮助开发者快速理解和实践消息队列的使用。通过运行和分析这个示例,你可以更好地掌握ActiveMQ的工作原理,为在实际项目中使用打下坚实基础。
在本项目中,"SpringBoot整合ActiveMQ(消息中间件)实现邮件发送功能"是一个典型的企业级应用示例,它展示了如何将SpringBoot框架与Apache ActiveMQ集成,以实现基于消息队列的邮件发送服务。下面我们将详细探讨这个...
通过这个DEMO,你将了解如何在Spring应用中集成ActiveMQ,创建消息的生产者和消费者,并且理解队列和主题这两种不同的通信模式。实际项目中,可以根据需求调整配置,例如设置事务管理、消息确认策略等,以实现更复杂...
Apache ActiveMQ是流行的开源JMS消息中间件,它提供了高性能、可扩展性和高可用性的特性。ActiveMQ支持多种协议,如OpenWire、STOMP、AMQP、MQTT和WebSockets,能够与多种语言和平台集成。 1. **ActiveMQ特性**: ...
本初学使用DEMO将带你走进ActiveMQ的世界,通过队列(Queue)和主题(Topic)两种消息模型来了解其基本用法。 1. **ActiveMQ简介**: - ActiveMQ 是Apache软件基金会的一个项目,它提供了一个跨语言、跨平台的消息...
在本示例项目"spring-boot-activemq-demo"中,我们关注的是如何将Spring Boot与Apache ActiveMQ集成,以实现高效的消息传递功能。ActiveMQ是Apache软件基金会的一个开源项目,它是Java消息服务(JMS)的实现,提供了...