`
zhaohaolin
  • 浏览: 1011204 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

activemq5.2发送和接收BlobMessage简单实例

    博客分类:
  • JMS
阅读更多

 

  1. package com.work.activemq;  
  2.   
  3. /** 
  4.  * @author wangmingjie 
  5.  * @date 2009-7-29上午09:00:48 
  6.  */  
  7.   
  8. import java.io.File;  
  9. import java.io.IOException;  
  10.   
  11. import javax.jms.DeliveryMode;  
  12. import javax.jms.Destination;  
  13. import javax.jms.JMSException;  
  14. import javax.jms.MessageProducer;  
  15. import javax.jms.Session;  
  16.   
  17. import org.apache.activemq.ActiveMQConnection;  
  18. import org.apache.activemq.ActiveMQConnectionFactory;  
  19. import org.apache.activemq.ActiveMQSession;  
  20. import org.apache.activemq.BlobMessage;  
  21. import org.apache.activemq.command.ActiveMQQueue;  
  22.   
  23. public class BlobMessageSendTest {  
  24.     
  25.     private String user = ActiveMQConnection.DEFAULT_USER;      
  26.      
  27.     private String password = ActiveMQConnection.DEFAULT_PASSWORD;      
  28.      
  29. //    private String url = ActiveMQConnection.DEFAULT_BROKER_URL;  
  30.     private String url = "tcp://localhost:61616?jms.blobTransferPolicy.defaultUploadUrl=http://localhost:8161/fileserver/";  
  31.      
  32.     private String subject = "Blob Queue";  
  33.      
  34.     private Destination destination = null;      
  35.      
  36.     private ActiveMQConnection connection = null;      
  37.      
  38.     private ActiveMQSession session = null;      
  39.      
  40.     private MessageProducer producer = null;      
  41.      
  42.     // 初始化      
  43.     private void initialize() throws JMSException, Exception {      
  44.         ActiveMQConnectionFactory connectionFactory = new ActiveMQConnectionFactory(  url);      
  45.         connection = (ActiveMQConnection)connectionFactory.createConnection();      
  46.   /* 
  47.    * !!!!!!!!!!!!!!!!!!!!!!!!! very important. If it is set to true 
  48.    * (default) the uploader is lost in translation ;) 
  49.    * !!!!!!!!!!!!!!!!!!!!!!!!! 
  50.    */  
  51.         connection.setCopyMessageOnSend(false);          
  52.         session = (ActiveMQSession)connection.createSession(false, Session.AUTO_ACKNOWLEDGE);      
  53.         destination = session.createQueue(subject);  
  54. //        destination = session.createTopic(subject);  
  55.         producer = session.createProducer(destination);      
  56.         producer.setDeliveryMode(DeliveryMode.NON_PERSISTENT);      
  57.     }      
  58.      
  59.     // 发送消息      
  60.     public void produceMessage(File file) throws JMSException, Exception {      
  61.         initialize();      
  62.         BlobMessage msg = session.createBlobMessage(file);   
  63.           
  64.         connection.start();      
  65.         System.out.println("Producer:->Sending message: " + file.getName());      
  66.         producer.send(msg);      
  67.         System.out.println("Producer:->Message sent complete!");      
  68.     }      
  69.      
  70.     // 关闭连接      
  71.     public void close() throws JMSException {      
  72.         System.out.println("Producer:->Closing connection");      
  73.         if (producer != null)      
  74.             producer.close();      
  75.         if (session != null)      
  76.             session.close();      
  77.         if (connection != null)      
  78.             connection.close();      
  79.     }      
  80.       
  81.       
  82.       
  83.  /** 
  84.   * 测试成功,能够发送到服务器上。 
  85.   * @param args 
  86.   * @throws IOException 
  87.   */  
  88. padding-top: 0px !important; padding-right: 3
    分享到:
    评论

相关推荐

    activeMQ5.2的jar包及使用实例

    activeMQ5.2的jar包及使用实例,它既支持点到点(point-to-point)(PTP)模型和发布/订阅(Pub/Sub)模型。支持同步与异步消息发送。JDBC持久性管理使用数据库表来存储消息 。

    ActiveMQ 5.2指导手册

    其中,消息是应用程序之间传递的数据单元,客户端可以通过发送消息和接收消息的方式进行通信。 为什么使用ActiveMQ?ActiveMQ的主要优点在于它的高性能、可伸缩性、高可用性以及它的标准化。它支持多种消息协议,如...

    activemq 通过ajax发送接收消息简单例子

    在这个简单的例子中,我们将探讨如何利用Ajax与ActiveMQ交互,发送和接收消息。首先,你需要在服务器端设置一个ActiveMQ实例,可以通过下载并安装ActiveMQ来完成。安装完成后,启动ActiveMQ服务,这通常会开启一个...

    SpringBoot+ActiveMq+MQTT实现消息的发送和接收

    7. 测试与调试:编写测试用例,确保消息能正确发送和接收,同时监控ActiveMQ服务器以查看消息队列的状态。 在实际应用中,你可能还需要考虑消息的可靠性、顺序性、幂等性以及错误处理等复杂问题。例如,使用事务性...

    ActiveMQ发送和接收protobuf协议消息的实例(精心整理,亲测可用)

    以上就是使用ActiveMQ发送和接收protobuf协议消息的实例,以及如何进行封装和配置自动重连机制的基本步骤。通过这种方式,你可以构建高效、可靠的消息传递系统,充分利用protobuf的优势,并确保在网络不稳定时仍能...

    ActiveMQ基于Java和JavaScript的应用实例

    在Java中,我们可以使用ActiveMQ的JMS(Java Message Service)API来发送和接收消息。首先,需要添加ActiveMQ的JAR包到项目类路径中,然后创建一个ConnectionFactory对象,通过它建立连接并创建Session。Session是...

    ActiveMQ消息发送接收封装实现及定时测试.

    实现了ActiveMQ的初步封装,比较适合新手入门学习,简单明了

    activemq-cpp发送接收消息,消息过滤器

    在本文中,我们将深入探讨如何使用`activemq-cpp`库在C++环境中发送和接收消息,并利用消息过滤器来实现特定的消息处理。`activemq-cpp`是Apache ActiveMQ的一个C++客户端,它提供了与ActiveMQ服务器进行交互的能力...

    activeMQ收发工具.rar

    ActiveMQ收发工具的核心功能是通过Java应用程序发送和接收ActiveMQ消息。这个jar包简化了对ActiveMQ服务器的交互过程,使得开发者无需编写复杂的代码就能进行消息传递的测试和调试。通过在命令行中执行`java -jar ...

    springboot集成activemq实现消息接收demo

    这个简单的Demo展示了如何在Spring Boot中集成ActiveMQ进行消息接收。通过这种方式,你可以构建出一个可靠的、异步处理系统,提高应用的性能和可扩展性。在实际生产环境中,ActiveMQ还可以与其他中间件、微服务架构...

    ActiveMQ接受和发送工具.rar

    这个"ActiveMQ接受和发送工具.rar"压缩包包含了用于与ActiveMQ交互的实用工具,方便用户进行消息的接收和发送操作。 在使用ActiveMQ时,了解以下几个关键知识点是至关重要的: 1. **Java Message Service (JMS)**...

    Springboot整合ActiveMQ,实现消息的发送接收功能源码

    在本文中,我们将深入探讨如何使用SpringBoot框架与Apache ActiveMQ集成,以便实现实时的消息发送和接收功能。首先,让我们简要了解一下SpringBoot和ActiveMQ。 **SpringBoot简介** SpringBoot是Spring框架的一个...

    ActiveMQ学习笔记之九--发送消息到队列中

    这篇"ActiveMQ学习笔记之九--发送消息到队列中"主要探讨的是如何通过编程方式向ActiveMQ队列发送消息,这对于理解和应用消息中间件至关重要。 首先,我们要理解ActiveMQ中的队列(Queue)概念。队列是一种先进先出...

    python 发送和接收ActiveMQ消息的实例

    总的来说,Python通过`stomp.py`库与ActiveMQ的集成,提供了简单而强大的方式来发送和接收消息。无论是队列还是主题,都能方便地进行通信,这使得ActiveMQ成为Python应用中实现解耦和异步处理的理想选择。在实际项目...

    采用Spring整合activeMQ与quartz的JMS数据同步实例

    通过使用ActiveMQ,我们可以创建异步通信模式,使得应用程序可以解耦发送和接收消息的过程,从而提高系统的响应速度和可扩展性。 **Spring**:Spring是一个全面的Java企业级应用开发框架,提供了诸如依赖注入、面向...

    基于Maven的ActiveMQ的简单实例

    总结,基于Maven的ActiveMQ简单实例展示了如何利用Maven管理依赖,以及如何使用Java API与ActiveMQ交互进行消息发送和接收。这个实例可以帮助初学者快速理解和入门ActiveMQ的基本用法,为进一步探索分布式系统中的...

    activemq消息发送和监听

    项目使用springboot2.0.4搭建,一个父项目包含两个子项目:发送服务;监听服务;消息服务使用ActiveMQ 5.14.3,在docker中运行。 项目中有两种协议消息:activemq和mqtt。

    activeMQ发送消息返回消息

    在ActiveMQ中,发送和接收消息是一个核心功能,它允许应用程序之间进行异步通信,提高系统的可扩展性和解耦性。 在ActiveMQ中发送消息,通常涉及以下步骤: 1. **创建ConnectionFactory**:ConnectionFactory是...

Global site tag (gtag.js) - Google Analytics