关闭

JMS&MQ,从入门到精通(四)

标签: jmsactiveMq持久队列持久化jms持久化持久化队列
673人阅读 评论(2) 收藏 举报
分类:
上篇文章我们介绍了广播/收听的消息模式,本篇文章我们来介绍消息的持久化.

持久化

什么是持久化?就是把数据存储到磁盘,关机之后,重启,数据还在.

实现的思路

1.创建一个连接
2.创建一个队列
3.向这个队列发送一个持久化的消息,一条非持久化的消息
4.关闭进程
5.启动监听程序,看收到的消息是那一条?还是都能收到?拭目以待

一个简单的实例

先写发送消息的代码
ActiveMQConnectionFactory factory = new ActiveMQConnectionFactory("vm://localhost");
Connection connection = factory.createConnection();
connection.start();

Queue queue = new ActiveMQQueue("testQueue");
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);

MessageProducer producer = session.createProducer(queue);
producer.setDeliveryMode(DeliveryMode.PERSISTENT);//消息持久化
producer.send(session.createTextMessage("A persistent Message"));

producer.setDeliveryMode(DeliveryMode.NON_PERSISTENT);//消息不持久化
producer.send(session.createTextMessage("A non persistent Message"));

System.out.println("Send messages sucessfully!");
再来写消息监听的代码
ActiveMQConnectionFactory factory = new ActiveMQConnectionFactory("vm://localhost");
Connection connection = factory.createConnection();
connection.start();

Queue queue = new ActiveMQQueue("testQueue");
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);

MessageConsumer comsumer = session.createConsumer(queue);
comsumer.setMessageListener(new MessageListener() {
    public void onMessage(Message m) {
        try {
            System.out.println("Consumer get " + ((TextMessage) m).getText());
        } catch (JMSException e) {
            e.printStackTrace();
        }
    }
});
我们来运行一下,看结果知道:有一条消息被持久化了,未丢失,有一条消息丢失了.

这里写图片描述

下一篇我们介绍:一个稍微一点儿复杂的应用场景
0
0
查看评论

CUDA从入门到精通(四):加深对设备的认识

前面三节已经对CUDA做了一个简单的介绍,这一节开始真正进入编程环节。 首先,初学者应该对自己使用的设备有较为扎实的理解和掌握,这样对后面学习并行程序优化很有帮助,了解硬件详细参数可以通过上节介绍的几本书和官方资料获得,但如果仍然觉得不够直观,那么我们可以自己动手获得这些内容。   ...
  • wozhengtao
  • wozhengtao
  • 2016-06-07 00:09
  • 700

ORACLE从入门到精通 明日科技编著 清华大学出版社

http://pan.baidu.com/s/1gePoRAV
  • ggkmskj
  • ggkmskj
  • 2017-06-07 17:04
  • 1139

C#从入门到精通学习笔记——(1)

一、概述 1.C#语言特性: 2.C#与.net框架的关系: 3.VS应用
  • Memory_sand
  • Memory_sand
  • 2017-04-04 16:26
  • 325

SQL SERVER-2008从入门到精通pdf

下载地址:网盘下载 内容要点 编辑 SQL Server 2008是Windows Server的最新版本,它推出了许多新的特性和关键性的改进,是至今为止最强大和最全面的SQL Server版本。本书详细介绍SQL Server 2008中的重要新增功能和增强特性。 ...
  • cf406061841
  • cf406061841
  • 2017-06-04 23:24
  • 1088

MyBatis从入门到精通__刘增辉(著)_ 电子工业出版社.pdf 免费下载

下载地址: MyBatis从入门到精通__刘增辉(著)_ 电子工业出版社.pdf
  • jiongyi1
  • jiongyi1
  • 2018-01-25 19:57
  • 111

《Unity4.x从入门到精通》随书光盘下载

http://game.ceeger.com/forum/read.php?tid=14970&fid=7
  • ldghd
  • ldghd
  • 2014-01-25 14:33
  • 4033

SpringBoot从入门到精通

原文链接如下: http://blog.didispace.com/categories/Spring-Boot/page/4/
  • java1993666
  • java1993666
  • 2017-08-28 19:01
  • 969

WF从入门到精通系列

WF从入门到精通系列
  • tigerzx
  • tigerzx
  • 2017-03-11 12:47
  • 152

Java Web从入门到精通 谁买谁后悔

Java Web从入门到精通:8小时多媒体教学视频(视频实战版)作 者: 常倬林 著 丛 书 名: 出 版 社: 机械工业出版社 ISBN:9787111324188 出版时间:2011-01-01 版 次:1 页 数:571 装 帧:平装 开 本:16开  这是书的视频太搞笑,作者,出版...
  • snihcel
  • snihcel
  • 2011-05-18 13:32
  • 2421

javascript从入门到精通

从底层分析JavaScript,了解其运行机制,对你自己会有很大的提升!
  • hzaini89
  • hzaini89
  • 2016-10-29 11:38
  • 757
    个人资料
    • 访问:296376次
    • 积分:4219
    • 等级:
    • 排名:第8603名
    • 原创:148篇
    • 转载:8篇
    • 译文:0篇
    • 评论:56条
    博客专栏