• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

1ActiveMQ使用 2ActiveMQC#Client实现 3ActiveMQC++Client实现通

mysql 搞代码 4年前 (2022-01-09) 26次浏览 已收录 0个评论
文章目录[隐藏]

Active MQ使用 http://www.huaishao8.com/tag/activemq Kagula 2011-9-6 介绍 Active MQ是个消息队列管理器,用于通讯的中间件。 Java Active MQ的常见使用方式有两种:[1]点对点方式(Producer/Consumer)[2]发布/订阅者方式(Publisher/Subscriber Model)

Active MQ使用

http://www.huaishao8.com/tag/activemq

Kagula

2011-9-6

介绍

Active MQ是个消息队列管理器,用于通讯的中间件。

Java + Active MQ的常见使用方式有两种:[1]点对点方式(Producer/Consumer)[2]发布/订阅者方式(Publish

本文来源gaodai.ma#com搞#代!码网_

er/Subscriber Model)

测试环境[1]JDK1.6.x [2]Eclipse Indigo [3]Active MQ 5.4.2

建议不要使用Active MQ 5.5.0 因为activemq-all-5.5.0.jar缺少依赖项。

正文

参考资料[1] 保证Active MQ已经正确安装与启动。

点对点(Producer、Consumer)模式

图一 JMS对象模型

Producer端源码示例

import org.apache.activemq.ActiveMQConnection;   import org.apache.activemq.ActiveMQConnectionFactory;     import javax.jms.*;     /**  * 消息的生产者(发送者)  *  */  public class JmsSender {           public static void main(String[] args) throws JMSException {                   // ConnectionFactory :连接工厂,JMS 用它创建连接                   ConnectionFactory connectionFactory = new ActiveMQConnectionFactory(                                   ActiveMQConnection.DEFAULT_USER,                                   ActiveMQConnection.DEFAULT_PASSWORD,                                   "failover://(tcp://127.0.0.1:61616)");                                   //JMS 客户端到JMS Provider 的连接                   Connection connection = connectionFactory.createConnection();                   connection.start();                                   // Session: 一个发送或接收消息的线程                   // createSession的第一个参数Boolean.FALSE指的是当前session不是一个事务                //                即消息是自动提交,你不能调用session.commit函数提交事务。                // createSession的第一个参数Boolean.TRUE指的是新创建的session是一个事务                //                你必须调用session.commit函数来提交事务,才能真正把消息放到队列服务器中                Session session = connection.createSession(Boolean.TRUE, Session.AUTO_ACKNOWLEDGE);                                // Destination :消息的目的地;消息发送给谁.                   // 获取session注意参数值my-queue是Query的名字                   Destination destination = session.createQueue("my-queue");                                // MessageProducer:消息生产者                   MessageProducer producer = session.createProducer(destination);                                //设置不持久化                   producer.setDeliveryMode(DeliveryMode.NON_PERSISTENT);                                //发送一条消息                   sendMsg(session, producer);                  connection.close();           }             /**           * 在指定的会话上,通过指定的消息生产者发出一条消息           *           * @param session    消息会话           * @param producer 消息生产者           */          public static void sendMsg(Session session, MessageProducer producer) throws JMSException {                   //创建一条文本消息                   TextMessage message = session.createTextMessage("Hello ActiveMQ!");                                   //通过消息生产者发出消息                   producer.send(message);                   System.out.println("");           }   }  

搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:1ActiveMQ使用 2ActiveMQC#Client实现 3ActiveMQC++Client实现通

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址