JMS&MQ,从入门到精通(四)
来源:互联网 发布:mysql的sequence 编辑:程序博客网 时间:2024/06/06 03:44
上篇文章我们介绍了广播/收听的消息模式,本篇文章我们来介绍消息的持久化.
持久化
什么是持久化?就是把数据存储到磁盘,关机之后,重启,数据还在.
实现的思路
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
- JMS&MQ,从入门到精通(四)
- JMS&MQ,从入门到精通(一)
- JMS&MQ,从入门到精通(二)
- JMS&MQ,从入门到精通(三)
- JMS&MQ,从入门到精通(五)
- JMS&MQ,从入门到精通(六)
- JMS&MQ,从入门到精通(七)
- JMS&MQ,从入门到精通(八)
- rabbit MQ从入门到精通专栏
- delphi7从入门到精通之四
- RMS从入门到精通之四
- RMS从入门到精通之四
- Java学习从入门到精通(四)
- RMS从入门到精通之四
- RMS从入门到精通之四
- delphi7从入门到精通之四
- mybatis 从入门到精通(四)
- Nginx开发从入门到精通四
- web/移动端控件
- activemq时遇到的问题
- ZOJ3962-Seven Segment Display(数位dp)
- 判断android 是否开启root权限
- Play Store下载应用失败解决
- JMS&MQ,从入门到精通(四)
- sqlServer分页存储过程的调用
- android(自动窗口跳转)-13
- 【C#】读取txt、csv等二维表
- Java继承_隐藏(五)
- jvm 内存结构图
- 两种取url的参数方法
- JavaEE学习笔记--CSS(2)
- 自注册DM(四)CMCC移动DM 实现方法