Java ActiveMQ 队列模式
来源:互联网 发布:阿里云公网带宽费用 编辑:程序博客网 时间:2024/06/05 12:44
本文为在慕课网学习的笔记和个人体会,视频地址:http://www.imooc.com/learn/856
队列模式中,一条消息只能被一个消费者消费。
创建好工程后,在 pom.xml 文件中引用 activemq 的相关包
<dependency> <groupId>org.apache.activemq</groupId> <artifactId>activemq-all</artifactId> <version>5.9.0</version> </dependency>
创建一个生产者,用于向目的地中发送消息:
import org.apache.activemq.ActiveMQConnectionFactory;import javax.jms.*;/** * 消息提供者,向消息中间件发送消息 */public class AppProducer { //activemq服务器地址 61616是activemq默认的端口,记得在服务器中开启该端口 private final static String URL = "tcp://192.168.202.129:61616"; //创建队列名字 private final static String QUEUE_NAME = "queue-test"; public static void main(String[] args) throws JMSException { //1.创建activemq 连接工厂 ConnectionFactory ConnectionFactory connectionFactory = new ActiveMQConnectionFactory(URL); //2.连接实例 Connection connection = connectionFactory.createConnection(); //3.启动连接 connection.start(); //4.创建会话 session //第一个参数意思:是否在事物中进行处理 ,第二个参数是设置应答模式 Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); //5.创建发送消息的目的地 Destination destination = session.createQueue(QUEUE_NAME); //6.创建生产者 MessageProducer producer = session.createProducer(destination); //7.使用生产者向目的地发送消息 for (int i = 0 ;i < 100 ;i++){ //8.创建消息 TextMessage textMessage = session.createTextMessage("我是第 "+i+" 条消息!"); //9.使用生产者将消息发送至目的地 //第一个参数是目的地,第二个参数是 要发送的信息 producer.send(destination, textMessage); System.out.println("成功发送消息: "+textMessage.getText()); } connection.close(); }}
import org.apache.activemq.ActiveMQConnectionFactory;import javax.jms.*;/** * 队列消费者,用于接收队列生产者发送的消息 */public class AppConsumer {//activemq服务器地址 61616是activemq默认的端口,记得在服务器中开启该端口 private final static String URL = "tcp://192.168.202.129:61616";//创建队列名字 private final static String QUEUE_NAME = "queue-test"; public static void main(String[] args) throws JMSException { //1.创建activemq 连接工厂 ConnectionFactory ConnectionFactory connectionFactory = new ActiveMQConnectionFactory(URL); //2.连接实例 Connection connection = connectionFactory.createConnection(); //3.启动连接 connection.start(); //4.创建会话 session //第一个参数意思:是否在事物中进行处理 ,第二个参数是设置应答模式 Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); //5.创建发送消息的目的地 Destination destination = session.createQueue(QUEUE_NAME); //6.创建消费者 MessageConsumer consumer = session.createConsumer(destination); //7.创建一个监听器 consumer.setMessageListener(new MessageListener() { public void onMessage(Message message) { TextMessage textMessage = (TextMessage)message; try { System.out.println("成功接收消息 "+textMessage.getText()); } catch (JMSException e) { e.printStackTrace(); } } }); }}
阅读全文
0 0
- Java ActiveMQ 队列模式
- Java消息队列--ActiveMq
- java消息队列 ActiveMQ实例
- Java消息队列--ActiveMQ 实战
- Java消息队列--ActiveMq 实战
- Java消息队列--ActiveMq 实战
- Java消息队列--ActiveMq 实战
- Java消息中间件学习笔记四 -- ActiveMQ的使用,【队列模式】
- java消息队列ActiveMQ的简单使用
- java消息队列ActiveMQ的简单使用
- Java消息队列-Spring整合ActiveMq
- Java消息队列-Spring整合ActiveMq
- Java消息队列-Spring整合ActiveMq
- 简单实现Java消息队列之activemq
- Java消息队列--ActiveMq简单实例
- Java activemq消息队列入门学习
- java消息队列ActiveMQ之Producter
- java消息队列ActiveMQ之Comsumer
- Javascript中使用a元素解析url
- org.apache.ibatis.binding.BindingException: Parameter 'id' not found.Available parameters are [0, 1,
- linux中几个文本文件查看命令
- WebStorm for mac 破解
- Shader语法高亮代码补全Visual Studio插件
- Java ActiveMQ 队列模式
- 使用Ideal创建javaWeb项目
- linux中系统文件的管理
- swoole中的worker_id,task_id以及多个server是否会有影响
- 小猪的猪栏文章类目导航
- SQL之一 简介
- Algorithm7 —— 二叉树的各种遍历
- 相机标定原理:绝对圆锥曲线
- 最短路径之Dijkstra算法