最近在工作中用到了ActiveMQ的点对点模式,在此用一个范例简单描述下使用过程。

1.首先在工程导入ActiveMQ的jar包,此jar包在下载的ActiveMQ资源里,这里用的是ActiveMQ版本是5.9。

2.编写消息发送者

package com.cool.jms;import org.apache.activemq.ActiveMQConnection;
import org.apache.activemq.ActiveMQConnectionFactory;import javax.jms.*;/***  消息生产者* Created by hejin on 2017/4/12 0012.*/
public class JMSProducer {//默认连接用户名private static final String USER= ActiveMQConnection.DEFAULT_USER;//默认连接密码private static final String PASSWORD=ActiveMQConnection.DEFAULT_PASSWORD;//默认连接地址private static final String URL=ActiveMQConnection.DEFAULT_BROKER_URL;//发送的消息数量private static final int SENDNUM=10;public static void main(String[] args) throws JMSException {//连接工厂ConnectionFactory connectionFactory;//连接Connection connection;//会话(接收或发送消息的线程)Session session;//消息目的地Destination destination;//消息生产者MessageProducer messageProducer;//实例化连接工厂connectionFactory=new ActiveMQConnectionFactory(JMSProducer.USER,JMSProducer.PASSWORD,JMSProducer.URL);try {//通过连接工厂获取连接connection = connectionFactory.createConnection();//启动连接connection.start();//创建sessionsession=connection.createSession(true,Session.AUTO_ACKNOWLEDGE);//创建一个名称为HelloWorld的消息队列destination= session.createQueue("HelloWorld");//创建消息生产者messageProducer = session.createProducer(destination);//发送消息sendMessage(session,messageProducer);//提交session.commit();} catch (Exception e) {e.printStackTrace();}}public static void sendMessage(Session session,MessageProducer messageProducer) throws Exception{for (int i=0;i<JMSProducer.SENDNUM;i++){//创建需要发送的消息TextMessage message = session.createTextMessage("ActiveMQ发送消息:" + i);System.out.println("ActiveMQ发送消息:"+i);messageProducer.send(message);}}
}

  

执行上面的代码控制台输出

在浏览器访问MQ的页面:http://127.0.0.1:8161/admin/queues.jsp,可以查看发送的队列的消息信息。

消息详情:

3.编写消费package com.cool.jms;

import org.apache.activemq.ActiveMQConnection;
import org.apache.activemq.ActiveMQConnectionFactory;import javax.jms.*;/*** Created by hejin on 2017/4/12 0012.*/
public class JMSConsumer {//默认连接名称private static  String USER= ActiveMQConnection.DEFAULT_USER;//默认密码private static  String PASSWORD=ActiveMQConnection.DEFAULT_PASSWORD;//默认连接地址private static String URL=ActiveMQConnection.DEFAULT_BROKER_URL;public static void main(String[] args) {//连接工厂ConnectionFactory connectionFactory;//连接Connection connection;//会话 接收或发送消息的进程Session session;//消息的目的地Destination destination;//消息的消费者MessageConsumer messageConsumer;//实例化连接工厂connectionFactory=new ActiveMQConnectionFactory(JMSConsumer.USER,JMSConsumer.PASSWORD,JMSConsumer.URL);//IDEA快速捕获异常快捷键:Ctrl+Alt+Ttry {//通过连接工厂获取连接connection=connectionFactory.createConnection();//启动连接connection.start();//创建sessionsession=connection.createSession(false,Session.AUTO_ACKNOWLEDGE);//创建一个HelloWorld的消息队列destination=session.createQueue("HelloWorld");//创建消息消费者messageConsumer = session.createConsumer(destination);while(true){TextMessage message = (TextMessage) messageConsumer.receive(100000);if(message!=null){System.out.println("收到的消息:"+message.getText());}else{break;}}} catch (JMSException e) {e.printStackTrace();}}
}

控制台输出:



转载于:https://www.cnblogs.com/againn/p/6743510.html

ActiveMQ点对点的发送和接收相关推荐

  1. java activeMQ消息的发送与接收

    java activeMQ消息的发送与接收 activemq是我们经常用到的消息队列之一,比如说速度快,对spring的很好的支持,支持多种协议等等,今天我们就来看一下activeMQ消息的发送与接收 ...

  2. 物联网LoRa系列-12:LoRa终端--数据发送和接收的整个过程

    在上文<全面拆解和构建5G物联网-11:LoRa终端--基于物理层协议的PingPong应用程序的软件架构>中,我们已经通过开发板提供商提供的软件工程文件,在两个LoRa节点之间进行了点对 ...

  3. ActiveMQ 发送和接收消息

    一.添加 jar 包 <dependency><groupId>org.apache.activemq</groupId><artifactId>act ...

  4. ActiveMQ的消息的(含附件)发送和接收使用

    首先介绍一下ActiveMQ的版本:apache-activemq-5.10.2 启动MQ:activemq.bat 下面来编写MQ的发送类: 里面的发送ip和模式名称可以根据具体的实际情况填写. S ...

  5. JAVA ActiveMQ消息发送和接收

    JMS即Java消息服务(Java Message Service)应用程序接口是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信. ...

  6. ActiveMQ 部署及发送接收消息

    ActiveMQ 部署及发送接收消息 一.           下载 下载地址:http://activemq.apache.org/ 我这里使用的版本为当前最新5.8.0. 下载版本有Windows ...

  7. springboot整合ActiveMQ(点对点和发布订阅)

    springboot整合ActiveMQ(点对点和发布订阅) ActiveMQ是什么,为什么使用MQ 是基于 Java 中的 JMS 消息服务规范实现的一个消息中间件. 1.系统解耦 采用中间件之后, ...

  8. ActiveMQ点对点消息通信demo

    2019独角兽企业重金招聘Python工程师标准>>> 1.下载ActiveMQ,安装并启动activeMQ, 2.登录控制台,http://localhost:8161/admin ...

  9. ActiveMQ点对点通讯,生产者-消费者

    首先引入pom依赖: <!--activemq的依赖 -->         <dependency>             <groupId>org.apach ...

最新文章

  1. 2022-2028年中国氮肥行业投资分析及前景预测报告
  2. Qt 事件处理和事件过滤器的返回值总结
  3. 数据库架构优化的12种组合方式与风险解读
  4. Kotlin项目实践指南(上)
  5. java jsonalias_将多个JSON字段映射到单个Java字段
  6. java生产者消费者gui_java理论之java--GUI(图形用户管理)与 IO/流
  7. PHP导出MySQL数据字典 Summer-Mysql-Dic
  8. 谈论高并发(三)锁的一些基本概念
  9. Docker使用link建立容器之间的连接
  10. opencv-python版本问题
  11. natapp反向代理
  12. 电机控制-H 桥电路 控制方式简单解析
  13. poj 1840(数的hah)
  14. Discuz最全的常见问题及故障整理
  15. win10更新右键没有卸载怎么解决?
  16. React中实现keepalive组件缓存效果
  17. 连接Apple ID服务器时出错
  18. 数学建模中的插值问题
  19. 用GAN的方法来进行图片匹配!休斯顿大学提出用于文本图像匹配的对抗表示学习,消除模态差异!
  20. 伊斯坦布尔之旅第二天:托普卡帕宫与神圣和平教堂与考古博物馆

热门文章

  1. 使用Bochs调试Linux内核初级入门
  2. 不同浏览器前端调试查看返回页面的json数据
  3. 绕过web认证学习总结
  4. VC++源码分析 - 中国象棋源码分析
  5. opencv 图像去噪要点总结
  6. DataSnap 2009 系列之二 (方法篇)
  7. java高级之Io流
  8. 服务器保存所有用户的操作指令(history)
  9. ORACLE内存结构简介
  10. Google Map API V3开发(5)