1、 准备工作
1、在我们的linux虚拟机中安装好我们的ActiveMQ,并启动服务,这里我们不详细介绍。
2、关闭防火墙,使得我们能在我们的windows服务器上访问到我们的linux的ActiveMQ,在浏览器中输入127.0.0.1:8161,默认的初始用户名和密码都是admin,访问成功后看到控制台:
注意:ActiveMQ采用61616端口提供JMS服务,采用8161提供管理控制台服务。
3、创建一个Maven工程,POM.xml导入我们的依赖:
<!-- https://mvnrepository.com/artifact/org.apache.activemq/activemq-all -->
<dependency>
<groupId>org.apache.activemq</groupId>
<artifactId>activemq-all</artifactId>
<version>5.15.11</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.apache.xbean/xbean-spring -->
<dependency>
<groupId>org.apache.xbean</groupId>
<artifactId>xbean-spring</artifactId>
<version>4.15</version>
</dependency>
2、JMS编码的总体架构
这一点和我们之前的JDBC的编码套路十分类似,我们重点需要知道两种模式的操作。
JMS开发的基本步骤
1:创建一个connection factory
2:通过connection factory来创建JMS connection
3:启动JMS connection
4:通过JMS connection创建JMS session
5:创建JMS destination(目的地 队列/主题)
6:创建JMS producer或者创建JMS consume并设置destination
7:创建JMS consumer或者注册一个JMS message listener
8:发送(send)或者接收(receive)JMS message
9:关闭所有JMS资源
2、1 queue队列模式
在点对点的消息传递域中,目的地被称作队列(queue),由图可以知道,我们生产者生产的消息放在队列中,只能被一个消费者消费,并且消费了之后,就不能被其他消费者再次消费。
上手代码:生产消息的生产者
ublic class JmsProduce {
public static final String ACTIVEMQ_URL="tcp://192.168.126.129:61616";
public static final String QUEUE_NAME="queue01";
public static void main(String[] args) throws JMSException {
//1、获取对应的connectionfactory,按照给定的url地址,采用默认的用户名和密码
ActiveMQConnectionFactory activeMQConnectionFactory = new ActiveMQConnectionFactory(ACTIVEMQ_URL);
//2、通过连接工厂,获取连接connection,并启动
Connection connection = activeMQConnectionFactory.createConnection()