`
babydeed
  • 浏览: 238014 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

ActiveMQ之Topic 例子

    博客分类:
  • jms
 
阅读更多

1:http://activemq.apache.org 下载最新版

2:直接解压至任意目录

3:、启动 ActiveMQ服务器 直接运行 bin\activemq.bat 

4:跑个小例子:

import javax.jms.Connection;
import javax.jms.DeliveryMode;
import javax.jms.JMSException;
import javax.jms.MessageProducer;
import javax.jms.Session;
import javax.jms.TextMessage;
import javax.jms.Topic;

import org.apache.activemq.ActiveMQConnectionFactory;


public class TopicPublisher {
	 public static void main(String[] args) throws JMSException {
		         ActiveMQConnectionFactory factory = new ActiveMQConnectionFactory("tcp://localhost:61616");
		         Connection connection = factory.createConnection();
		         connection.start();
		         Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
		         Topic topic = session.createTopic("myTopic.messages");
		         MessageProducer producer = session.createProducer(topic);
		         producer.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
		         for(int i =0;i<10;i++){
		             TextMessage message = session.createTextMessage();
		             message.setText("message_" + System.currentTimeMillis());
		             producer.send(message);
		             System.out.println("Sent message: " + message.getText());
		             try {
		                 Thread.sleep(1000);
		             } catch (InterruptedException e) {
		                 e.printStackTrace();
		             }
		         }
//		       session.close();
//		       connection.stop();
//		       connection.close();
		    }

}

 

import javax.jms.Connection;
import javax.jms.JMSException;
import javax.jms.Message;
import javax.jms.MessageConsumer;
import javax.jms.MessageListener;
import javax.jms.Session;
import javax.jms.TextMessage;
import javax.jms.Topic;

import org.apache.activemq.ActiveMQConnectionFactory;


public class TopicSubscriber {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		ActiveMQConnectionFactory factory = new ActiveMQConnectionFactory("tcp://localhost:61616");
		        try {
					Connection connection = factory.createConnection();
					connection.start();
					Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
					Topic topic = session.createTopic("myTopic.messages");
					MessageConsumer consumer = session.createConsumer(topic);
					consumer.setMessageListener(new MessageListener() {
					    public void onMessage(Message message) {
					        TextMessage tm = (TextMessage) message;
					        try {
					            System.out.println("Received message: " + tm.getText());
					        } catch (JMSException e) {
					            e.printStackTrace();
					        }
					    }
					});
				} catch (JMSException e) {
					e.printStackTrace();
				}
	}

}

 

  运行main 测试

 

 

分享到:
评论

相关推荐

    一个activeMQ的简单例子

    这个简单的ActiveMQ例子可能是为了演示如何设置和使用基本的生产者和消费者,以及如何通过消息队列实现异步通信。在实际应用中,我们还可以利用ActiveMQ的高级特性,如持久化、优先级、消息筛选等,以满足更复杂的...

    ActiveMQ学习 完整例子

    下面将详细介绍ActiveMQ的学习内容,以及如何通过实际例子来理解和掌握它。 1. **ActiveMQ基本概念** - **消息中间件**:ActiveMQ作为一个消息中间件,负责在分布式系统中传递消息,解耦生产者和消费者。 - **JMS...

    activeMQ JMS WEB 例子

    在这个"ActiveMQ JMS WEB 例子"中,我们将探讨如何在Web环境中使用ActiveMQ进行消息通信。 首先,了解ActiveMQ的基本概念是必要的。ActiveMQ支持多种协议,如OpenWire、AMQP、STOMP、XMPP和MQTT,使其能够广泛应用...

    activemq的小例子

    标题中的“ActiveMQ的小例子”指的是Apache ActiveMQ的使用示例。ActiveMQ是Apache软件基金会开发的一款开源消息中间件,它遵循Java Message Service (JMS) 规范,用于在分布式系统中进行异步通信。这个小例子可能是...

    ActiveMQ的简单例子

    本教程将通过一个简单的例子介绍ActiveMQ的两个核心模式:点对点(Point-to-Point,P2P)和发布/订阅(Publish/Subscribe,Pub/Sub)。我们将使用IntelliJ IDEA作为集成开发环境来实现这些示例。 首先,我们需要...

    ActiveMQ例子

    ActiveMQ是中国最流行的开源消息中间件之一,由Apache软件基金会开发。它是一个强大的消息代理,支持多种消息协议,如OpenWire、STOMP、AMQP、MQTT和XMPP,为分布式系统提供高效率的消息传递服务。这个“ActiveMQ...

    springMVC+activeMQ例子

    整合Spring MVC和ActiveMQ的例子会涵盖以上所述的各个方面,通过这些文件,我们可以进一步分析和理解这个示例的具体实现细节。这个例子展示了如何在一个Web应用中有效地利用消息队列来处理异步任务,提升系统的性能...

    自己写的ActiveMQ的Demo例子

    5. **主题(Topic)**:主题支持多播,即多个消费者可以订阅同一个主题,接收到相同的消息。 **持久化机制** ActiveMQ 提供了两种主要的持久化机制:持久化到文件和持久化到数据库。 1. **持久化到文件**:这是 ...

    Apache ActiveMQ 入门最简单例子

    Session可以创建一个Destination(可能是Queue或Topic),接着创建一个Producer,并通过Producer发送消息。 ```java import javax.jms.*; public class MessageProducer { public static void main(String[] args...

    ActiveMQ的入门例子

    2. **主题(Topic)与队列(Queue)**:主题适用于广播消息,所有订阅者都能收到消息;队列则是一对一的通信,消息由一个消费者接收并处理。 3. **生产者(Producer)**:发布消息到消息队列或主题的组件。 4. **...

    java ActiveMQ的例子

    在这个例子中,我们有`apache-activemq-5.9.0`的压缩包,这包含了ActiveMQ的一个早期版本。这个包通常会包含服务器的可执行文件、配置文件、示例代码以及相关的文档,非常适合初学者来学习和理解ActiveMQ的工作原理...

    ActiveMQ入门及深入使用的例子

    ActiveMQ是中国最流行的开源消息中间件之一,它基于Java Message Service (JMS) 规范,为分布式系统提供高效、可靠的消息传递服务。本教程将引导你从基础到深入理解如何使用ActiveMQ,并通过实际的例子进行操作。 ...

    JMS之ActiveMQ工具类+使用例子.zip

    **使用例子** 1. **连接ActiveMQ服务器**:首先,我们需要配置连接工厂,指定ActiveMQ服务器的URL和任何必要的认证信息。 ```java ConnectionFactory connectionFactory = new ActiveMQConnectionFactory("tcp:...

    jms之activeMQ 队列和广播模式例子(主要给初学者提供入门知识)

    这篇博客"jms之activeMQ 队列和广播模式例子"主要面向初学者,旨在提供ActiveMQ入门级的知识,通过实例解释队列(Queue)和主题(Topic)这两种基本的消息模式。 首先,我们要理解JMS中的队列和主题的区别。队列...

    activemq-web-console-5.11.2

    activemq-web-console的默认使用方式是通过在...2.一个是demo,有一些使用jms和activemq的简单例子。 3.还有一个fileserver,用来支持通过activemq发送文件时的中转服务器。blob message时配置的http文件服务器。

    jms+activeMq+spring学习简单例子

    标题“jms+activeMq+spring学习简单例子”表明这个压缩包包含了一些示例代码,用于演示如何在Spring框架中集成JMS和ActiveMQ,以便于理解和学习。通过这个例子,开发者可以了解如何在实际应用中实现基于消息的通信。...

    activeMQ与spring整合开发的例子程序

    本例子程序的主题是"activeMQ与spring整合开发",这意味着它将展示如何在Spring应用中集成ActiveMQ,以便利用消息队列进行异步通信和解耦组件。以下是一些关键知识点: 1. **Spring集成ActiveMQ的基本配置**:在...

    activeMQ完整例子

    ActiveMQ是中国最流行的开源消息中间件之一,它基于Java Message Service (JMS) 规范,为分布式系统提供高效、可靠的消息传递服务。这个“activeMQ完整例子”压缩包文件很可能是包含了一系列示例代码和配置,帮助...

    springboot2整合activemq的demo内含queue消息和topic消息

    这个“springboot2整合activemq的demo”提供了一个实际的例子,帮助开发者理解如何在Spring Boot应用中使用ActiveMQ实现消息队列的功能。以下是关于这个主题的详细知识点: 1. **Spring Boot 2**: - Spring Boot ...

Global site tag (gtag.js) - Google Analytics