mq小程序二
来源:互联网 发布:身份证sql判断 编辑:程序博客网 时间:2024/04/29 23:51
public class Sender { public static void main(String[] args)throws Exception{ //第一步建立connection工厂对象 需要填入用户名 密码,以及连接地址,默认端口为 tcp://0.0.0.0:61616 ConnectionFactory connectionFactory = new ActiveMQConnectionFactory( ActiveMQConnectionFactory.DEFAULT_USER, ActiveMQConnectionFactory.DEFAULT_PASSWORD, "tcp://localhost:61616"); //第二步 通过connectionFactory工厂创建connection Connection connection = connectionFactory.createConnection(); connection.start(); //第三步 通过connection创建session会话(上下文环境对象)// Session session = connection.createSession(Boolean.FALSE,Session.AUTO_ACKNOWLEDGE);// Session session = connection.createSession(Boolean.TRUE,Session.AUTO_ACKNOWLEDGE);//使用事务的方式进行消息发送 Session session = connection.createSession(Boolean.FALSE,Session.CLIENT_ACKNOWLEDGE);//使用client端签收的方式 //第四步 通过session创建Destination对象,是客户用来指定生产目标和消费来源 Destination destination = session.createQueue("queue1"); //第五步 我们通过session对象创建消息发送或接受对象 MessageProducer messageProducer = session.createProducer(null); //第六步 设置持久化 非持久化特性// messageProducer.setDeliveryMode(DeliveryMode.NON_PERSISTENT); //第七步 最后使用JMS提供的TextMessage for(int i=0;i<5;i++){ TextMessage textMessage = session.createTextMessage(); textMessage.setText("我是消息内容!id为"+i); //第一个参数 目的地 //第二个参数 消息 //第三个参数 是否持久化 //第四个参数 优先级 0-4普通 5-9加急 //第五个参数 消息在mq上的存放有效期 messageProducer.send(destination, textMessage,DeliveryMode.NON_PERSISTENT,i,1000*60*2); System.out.println("生产者生产消息"); } //session.commit();//使用事务提交 if(connection != null){ connection.close(); } }}
public class Receiver { public static void main(String[] args)throws Exception{ //第一步建立connection工厂对象 需要填入用户名 密码,以及连接地址,默认端口为 tcp://0.0.0.0:61616 ConnectionFactory connectionFactory = new ActiveMQConnectionFactory( ActiveMQConnectionFactory.DEFAULT_USER, ActiveMQConnectionFactory.DEFAULT_PASSWORD, "tcp://localhost:61616"); //第二步 通过connectionFactory工厂创建connection Connection connection = connectionFactory.createConnection(); connection.start(); //第三步 通过connection创建session会话(上下文环境对象)// Session session = connection.createSession(Boolean.FALSE,Session.AUTO_ACKNOWLEDGE); Session session = connection.createSession(Boolean.FALSE,Session.CLIENT_ACKNOWLEDGE); //第四步 通过session创建Destination对象,是客户用来指定生产目标和消费来源 Destination destination = session.createQueue("queue1"); //第五步 我们通过session对象创建消息发送或接受对象 MessageConsumer messageConsumer = session.createConsumer(destination); while (true){ TextMessage mapMessage =(TextMessage) messageConsumer.receive(); //手工去签收消息,另起一个线程去通知mq服务缺确认 mapMessage.acknowledge(); if(mapMessage == null) break; System.out.println(mapMessage.getText()); } connection.close(); }}
阅读全文
0 0
- mq小程序二
- mq 小程序
- 小菜鸟 学MQ(二)
- websphere mq 小扯
- Mercurial Queues (MQ) <二>
- 练手小程序(二)
- 小程序二:逻辑层
- 小程序学习(二)
- rabbit mq研究(二)
- 学习MQ(二)基本概念
- JMS与MQ详解(二)
- mq例子程序-php版
- SHELL SCRIPT 无聊小程序(二)
- 小程序(二) 指定字符串删除
- 小程序开发系列(二)九宫格
- 小程序学习笔记(二)
- 小程序前期准备(连载二)
- 实验二:命令行菜单小程序
- POJ总结(3299)
- OpenCV遍历图片像素点
- MySQL多表&JDBC
- 压缩下载文件
- 【学习笔记】面试集锦【3】
- mq小程序二
- pixhawk当中关于NMEA类型的gps数据处理流程
- python机器学习-数据类型统计
- Linux常用命令学习
- HDOJ HDU 1029 Ignatius and the Princess IV
- AJAX与json php进行查询与新建
- Educational Codeforces Round 28 D. Monitor 二维rmq
- 垒骰子(经典递推、矩阵快速幂)
- Library Data Preparation for ICC---1