博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【ActiveMQ教程】点对点(Point-to-Point)消息教程
阅读量:5901 次
发布时间:2019-06-19

本文共 3045 字,大约阅读时间需要 10 分钟。

hot3.png

创建消息生产者

/** * 点对点消息生产者 *  * @author Edward *  */public class P2pProducer {	public static void main(String[] args) {		ConnectionFactory connectionFactory = null;		Connection conn = null;		Session session = null;		Queue queue = null;		MessageProducer messageProducer = null;		try {			// 创建工厂			// ActiveMQConnection.DEFAULT_USER 默认null			// ActiveMQConnection.DEFAULT_PASSWORD 默认null			// ActiveMQConnection.DEFAULT_BROKER_URL			// 默认failover://tcp://localhost:61616			connectionFactory = new ActiveMQConnectionFactory(					ActiveMQConnection.DEFAULT_USER,					ActiveMQConnection.DEFAULT_PASSWORD,					ActiveMQConnection.DEFAULT_BROKER_URL);			// 创建连接			conn = connectionFactory.createConnection();			// 启动连接			conn.start();			// 创建会话 createSession(true, Session.AUTO_ACKNOWLEDGE); true 表示开启事务			// Session.AUTO_ACKNOWLEDGE 消息模式			session = conn.createSession(true, Session.AUTO_ACKNOWLEDGE);			// 创建队列			queue = session.createQueue("P2pQueue");			// 创建消息生产者			messageProducer = session.createProducer(queue);			// 创建消息			TextMessage message = session.createTextMessage();			message.setText("我是P2pProducer生产的消息");			// 发送消息			messageProducer.send(message);			// 提交事务			session.commit();			System.out.println("OK");		} catch (JMSException e) {			e.printStackTrace();		} finally {			try {				session.close();				conn.close();			} catch (JMSException e) {				e.printStackTrace();			}		}	}}

运行成功,查看控制台:

000404_jYXk_2558692.png

创建消息消费者

/** * 点对点消息消费者 *  * @author Edward *  */public class P2pConsumer {	public static void main(String[] args) {		ConnectionFactory connectionFactory = null;		Connection conn = null;		Session session = null;		Queue queue = null;		MessageConsumer messageConsumer = null;		try {			// 创建工厂			// ActiveMQConnection.DEFAULT_USER 默认null			// ActiveMQConnection.DEFAULT_PASSWORD 默认null			// ActiveMQConnection.DEFAULT_BROKER_URL			// 默认failover://tcp://localhost:61616			connectionFactory = new ActiveMQConnectionFactory(					ActiveMQConnection.DEFAULT_USER,					ActiveMQConnection.DEFAULT_PASSWORD,					ActiveMQConnection.DEFAULT_BROKER_URL);			// 创建连接			conn = connectionFactory.createConnection();			// 启动连接			conn.start();			// 创建会话 createSession(true, Session.AUTO_ACKNOWLEDGE); false 表示不开启事务			// Session.AUTO_ACKNOWLEDGE 消息模式			session = conn.createSession(false, Session.AUTO_ACKNOWLEDGE);			// 创建队列			queue = session.createQueue("P2pQueue");			// 创建消息消费者			messageConsumer = session.createConsumer(queue);			// 注册消费消息监听			messageConsumer.setMessageListener(new MessageListener() {				@Override				public void onMessage(Message message) {					try {						System.out.println("我收到的消息:"								+ ((TextMessage) message).getText());					} catch (JMSException e) {						e.printStackTrace();					}				}			});		} catch (JMSException e) {			e.printStackTrace();		}	}}

执行结果

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".SLF4J: Defaulting to no-operation (NOP) logger implementationSLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.我收到的消息:我是P2pProducer生产的消息

转载于:https://my.oschina.net/Auhgnahz/blog/551620

你可能感兴趣的文章
vue-validator(vue验证器)
查看>>
jQuery Ajax MVC 下拉框联动
查看>>
每天一个linux命令(21):chgrp,chown,chmod
查看>>
html
查看>>
常见SQL Server导入导出数据的几个工具
查看>>
c#创建文件夹
查看>>
Hibernate事务代码规范写法
查看>>
网络最大流问题算法小结 [转]
查看>>
面试之Java知识整理
查看>>
iOS推送消息报错误“Domain=NSCocoaErrorDomain Code=3000”的可能问题
查看>>
Android开发指南(30) —— Multimedia and Camera
查看>>
kvm-1
查看>>
hdu1045 Fire Net---二进制枚举子集
查看>>
drupal网站邮件发送功能的实现
查看>>
leetcode 64. Minimum Path Sum
查看>>
Linux输入输出管理
查看>>
oracle中时间处理
查看>>
SSH免密码登录的方法
查看>>
textkit
查看>>
Android详细的对话框AlertDialog.Builder使用方法
查看>>