activemq入门demo
创建maven工程,pom文件如下
- <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <groupId>com.tansun</groupId>
- <artifactId>ActivemqTest</artifactId>
- <version>0.0.1-SNAPSHOT</version>
- <dependencies>
- <!-- https://mvnrepository.com/artifact/org.apache.activemq/activemq-all -->
- <dependency>
- <groupId>org.apache.activemq</groupId>
- <artifactId>activemq-all</artifactId>
- <version>5.15.2</version>
- </dependency>
- </dependencies>
- </project>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.tansun</groupId>
<artifactId>ActivemqTest</artifactId>
<version>0.0.1-SNAPSHOT</version><dependencies>
<!-- https://mvnrepository.com/artifact/org.apache.activemq/activemq-all -->
<dependency>
<groupId>org.apache.activemq</groupId>
<artifactId>activemq-all</artifactId>
<version>5.15.2</version>
</dependency>
</dependencies>
</project>
生产者的类:每运行一次生产者的主方法,就会发送一条消息
- package com.tansun;
- import javax.jms.Connection;
- import javax.jms.ConnectionFactory;
- import javax.jms.JMSException;
- import javax.jms.MessageProducer;
- import javax.jms.Queue;
- import javax.jms.Session;
- import javax.jms.TextMessage;
- import org.apache.activemq.ActiveMQConnectionFactory;
- public class Producer {
- public static void main(String[] args) throws JMSException {
- // 创建连接工厂
- ConnectionFactory connectionFactory = new ActiveMQConnectionFactory("tcp://192.168.229.128:61616");
- // 创建连接
- Connection connection = connectionFactory.createConnection();
- // 开启连接
- connection.start();
- // 创建会话(不使用事物)
- Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
- // 创建一对一的消息队列
- Queue queue = session.createQueue("queue test");
- // 创建生产者
- MessageProducer producer = session.createProducer(queue);
- // 创建消息
- TextMessage message = session.createTextMessage("hello activemq");
- // 发送消息
- producer.send(message);
- // 关闭会话和连接
- session.close();
- connection.close();
- }
- }
package com.tansun; import javax.jms.Connection;
import javax.jms.ConnectionFactory;
import javax.jms.JMSException;
import javax.jms.MessageProducer;
import javax.jms.Queue;
import javax.jms.Session;
import javax.jms.TextMessage; import org.apache.activemq.ActiveMQConnectionFactory; public class Producer {public static void main(String[] args) throws JMSException {
// 创建连接工厂
ConnectionFactory connectionFactory = new ActiveMQConnectionFactory("tcp://192.168.229.128:61616");
// 创建连接
Connection connection = connectionFactory.createConnection();
// 开启连接
connection.start();
// 创建会话(不使用事物)
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
// 创建一对一的消息队列
Queue queue = session.createQueue("queue test");
// 创建生产者
MessageProducer producer = session.createProducer(queue);
// 创建消息
TextMessage message = session.createTextMessage("hello activemq");
// 发送消息
producer.send(message);
// 关闭会话和连接
session.close();
connection.close();
}
}
消费者的类:消费者使用死循环接收消息并打印到控制台上
- package com.tansun;
- import javax.jms.Connection;
- import javax.jms.ConnectionFactory;
- import javax.jms.JMSException;
- import javax.jms.MessageConsumer;
- import javax.jms.Queue;
- import javax.jms.Session;
- import javax.jms.TextMessage;
- import org.apache.activemq.ActiveMQConnectionFactory;
- public class Consumer {
- public static void main(String[] args) throws JMSException {
- // 创建连接工厂
- ConnectionFactory connectionFactory = new ActiveMQConnectionFactory("tcp://192.168.229.128:61616");
- // 创建连接
- Connection connection = connectionFactory.createConnection();
- // 开启连接
- connection.start();
- // 创建回话(不使用事物)
- Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
- // 创建一对一的消息队列
- Queue queue = session.createQueue("queue test");
- // 创建消费者
- MessageConsumer consumer = session.createConsumer(queue);
- // 接收消息
- while(true){
- TextMessage message = (TextMessage)consumer.receive();
- System.out.println(message.getText());
- }
- }
- }
package com.tansun; import javax.jms.Connection;
import javax.jms.ConnectionFactory;
import javax.jms.JMSException;
import javax.jms.MessageConsumer;
import javax.jms.Queue;
import javax.jms.Session;
import javax.jms.TextMessage; import org.apache.activemq.ActiveMQConnectionFactory; public class Consumer {public static void main(String[] args) throws JMSException {
// 创建连接工厂
ConnectionFactory connectionFactory = new ActiveMQConnectionFactory("tcp://192.168.229.128:61616");
// 创建连接
Connection connection = connectionFactory.createConnection();
// 开启连接
connection.start();
// 创建回话(不使用事物)
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
// 创建一对一的消息队列
Queue queue = session.createQueue("queue test");
// 创建消费者
MessageConsumer consumer = session.createConsumer(queue);
// 接收消息
while(true){
TextMessage message = (TextMessage)consumer.receive();
System.out.println(message.getText());
}
}
}
activemq入门demo的更多相关文章
- ActiveMQ之一--ActiveMQ入门
MQ的消费-生产者模型的一个典型的代表,一端往消息队列中不断的写入消息,而另一端则可以读取或者订阅队列中的消息.MQ和JMS类似,但不同的是JMS是SUN JAVA消息中间件服务的一个标准和API定义 ...
- ActiveMQ 入门和与 Spring 整合
ActiveMQ 入门演示 activemq 依赖 <dependency> <groupId>org.apache.activemq</groupId> < ...
- ActiveMQ入门练习
ActiveMQ 是Apache出品,最流行的,能力强劲的开源消息总线.ActiveMQ 是一个完全支持JMS1.1和J2EE 1.4规范的 JMS Provider实现,尽管JMS规范出台已经是很久 ...
- jms - activeMQ入门案例
activeMQ入门案例 叨叨一波,很久没写博客了,最近比较慢,时间抽不出来,这个借口说的很尴尬...我知道作为一名合格的码农就必须养成每天一博客的习惯.希望友友们别像我这样懒,闲话不多时进入今天的主 ...
- 【SSH系列】初识spring+入门demo
学习过了hibernate,也就是冬天,经过一个冬天的冬眠,当春风吹绿大地,万物复苏,我们迎来了spring,在前面的一系列博文中,小编介绍hibernate的相关知识,接下来的博文中,小编将继续介绍 ...
- 基于springboot构建dubbo的入门demo
之前记录了构建dubbo入门demo所需的环境以及基于普通maven项目构建dubbo的入门案例,今天记录在这些的基础上基于springboot来构建dubbo的入门demo:众所周知,springb ...
- apollo入门demo实战(二)
1. apollo入门demo实战(二) 1.1. 下载demo 从下列地址下载官方脚本和官方代码 https://github.com/nobodyiam/apollo-build-scripts ...
- lua入门demo(HelloWorld+redis读取)
1. lua入门demo 1.1. 入门之Hello World!! 由于我习惯用docker安装各种软件,这次的lua脚本也是运行在docker容器上 openresty是nginx+lua的各种模 ...
- netty入门demo(一)
目录 前言 正文 代码部分 服务端 客服端 测试结果一: 解决粘包,拆包的问题 总结 前言 最近做一个项目: 大概需求: 多个温度传感器不断向java服务发送温度数据,该传感器采用socket发送数据 ...
随机推荐
- Django项目:CRM(客户关系管理系统)--31--23PerfectCRM实现King_admin数据删除
登陆密码设置参考 http://www.cnblogs.com/ujq3/p/8553784.html # king_urls.py # ————————02PerfectCRM创建ADMIN页面—— ...
- 移动端 Iphone拍照变横问题的解决
在移动端的页面需要做用户拍照上传的功能时会有用,苹果即使竖着拍照,上传到网页后它也会变成横的,好像IOS得一个BUG,安卓就没有这个问题. 要解决这个问题需要引入exif.js这个库,网上随便搜一下就 ...
- Vue开发警告[Vue warn]: Avoid replacing instance root $data. Use nested data properties instead.
Avoid replacing instance root $data. Use nested data properties instead. 翻译 避免替换实例根$data.请改用嵌套数据属性 错 ...
- Yii 网站上线不需手动配置
参考: http://www.cnblogs.com/x3d/p/php_auto_prepend_file.html
- MySQL用命令行复制表,查看表结构
一.mysql中用命令行复制表结构的方法主要有一下几种: 1.只复制表结构到新表 1 CREATE TABLE 新表 SELECT * FROM 旧表 WHERE 1=2; 或 1 CREATE TA ...
- JS---案例:tab切换效果
案例:tab切换效果 获取所有的li标签 第一件事:把这个a所在的所以兄弟元素的类样式全部移除 (removeAttributes) 第二件事:当前点击的a父级元素li (点击这个a所在的所在元素li ...
- C++/CLI 创建WPF程序
本文简单演示下用C++/CLI创建WPF程序,IDE为VS2015 首先创建CLR项目,选择CLR空项目: 然后,右键源文件,选择新建class,选择CLR->Component Class 接 ...
- 【python自动化学习笔记】
[python自动化第一篇:python介绍与入门] [python自动化第二篇:python入门] [python自动化第三篇:python入门进阶] [Python自动化第三篇(2):文 ...
- Linux下读写UART串口的代码
Linux下读写UART串口的代码,从IBM Developer network上拿来的东西,操作比較的复杂,就直接跳过了,好在代码能用,记录一下- 两个实用的函数- //////////////// ...
- MyBatis连接Neo4j问题记录:mapper参数传递(节点标签作为参数)
MyBatis与Neo4j的连接我在上一篇做了,这是链接:https://blog.csdn.net/qq_34233510/article/details/82496101 上一篇中UserMapp ...