Windows安装activeMQ和MQ的简单使用
1、首先下载ActiveMQ(下载地址:http://activemq.apache.org/components/classic/download/)安装包并解压,点击解压文件进入bin目录,根据电脑系统是32位还是64位,进入相应的win32或win64目录中,执行activemq.bat文件就可以。出现下图说明安装成功:

2、开始验证是否能够正常运行:打开浏览器输入http://127.0.0.1:8161/admin/,默认账号密码为admin和admin,输入完后出现下图:说明能够正常运行。

3、那么怎么修改他的账号密码呢?在ActiveMQ根目录下的conf目录里面的admin: admin, admin(对应格式为 账号: 密码,角色)改为自己需求的账号密码,ActiveMQ提供默认的两种角色admin和user。根据自己的需求选择。


4、ActiveMQ还会开启几个端口,端口个数跟版本有关系,想要修改端口号可以在如下图中的文件里面改。

5、改jetty.xml文件里面的端口号,则后台管理地址的端口号也需要相应的作上改动。如将8161改为9999,则后台管理地址则需要变为http://127.0.0.1:8161/admin/

6、改activemq.xml文件里面的端口号这改的是tcp,amqp,stomp,mqtt和ws等协议传输的相应端口。

7、用默认的方式给ActiveMQ写入进站消息。
public static void main(String[] args) throws Exception {
//获取mq连接工程
ActiveMQConnectionFactory activeMQConnectionFactory = new ActiveMQConnectionFactory("admin",
"admin","tcp://127.0.0.1:61616"); //对应账号密码
//创建连接并启动
Connection createConnection = activeMQConnectionFactory.createConnection();
createConnection.start();
//创建默认的会话工厂
Session session = createConnection.createSession(false,Session.AUTO_ACKNOWLEDGE);
//创建队列
Destination destination = session.createQueue("msg");
MessageProducer producer = session.createProducer(destination);
producer.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
senMsg(session, producer, "我是生产者。");
}
public static void senMsg(Session session, MessageProducer producer,String msg) throws JMSException {
TextMessage textMessage = session.createTextMessage("你好!"+msg);
producer.send(textMessage);
}
8、如下图:下面tcp://127.0.0.1:61616中的端口号就是步骤6中提到的如果修改第一个的端口号相应的这边端口号也需要修改。

9、MQ出栈消息的获取:
public static void main(String[] args) throws JMSException {
ActiveMQConnectionFactory activeMQConnectionFactory = new ActiveMQConnectionFactory("admin",
"admin", "tcp://127.0.0.1:61616"); // 这个是MQ真正的后台通讯地址。
Connection createConnection = activeMQConnectionFactory.createConnection();
createConnection.start();
Session session = createConnection.createSession(false, Session.AUTO_ACKNOWLEDGE);
Destination destination = session.createQueue("msg");
MessageConsumer consumer = session.createConsumer(destination);
while (true) {
// 监听消息 知道队列中的消息全部输出完跳出
TextMessage textMessage = (TextMessage) consumer.receive();
if (textMessage != null) {
System.out.println("消费者获取到消息:" + textMessage.getText());
} else {
break;
}
}
}
10、上面就是简单MQ的小技巧,小知识,希望你们能用上。