1.在http://activemq.apache.org/download.html下载安装包,进入到如下目录,运行activemq.bat
2.ActiveMQ默认启动到8161端口,启动完了后在浏览器地址栏输入:http://localhost:8161/admin要求输入用户名密码,默认用户名密码为admin、admin,这个用户名密码是在conf/users.properties中配置的。
3.生产者消费者代码
package activemq;
import org.apache.activemq.ActiveMQConnectionFactory;
import javax.jms.*;
public class Producter {
// private static final String url = "tcp://192.168.31.10:61616";
private static final String url = "tcp://127.0.0.1:61616";
private static final String queueName = "queue_test";
public static void main(String[] args) throws JMSException, InterruptedException {
ConnectionFactory connectionFactory = new ActiveMQConnectionFactory(url);
Connection connection = connectionFactory.createConnection();
connection.start();
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
Destination destination = session.createQueue(queueName);
MessageProducer producer = session.createProducer(destination);
for (int i = 0; i < 100; i++) {
TextMessage textMessage = session.createTextMessage("消息:" + i);
producer.send(textMessage);
System.out.println("producter发送了消息:" + i);
}
connection.close();
}
}
package activemq;
import org.apache.activemq.ActiveMQConnectionFactory;
import javax.jms.*;
public class Comsumer {
// private static final String url = "tcp://192.168.31.10:61616";
private static final String url = "tcp://127.0.0.1:61616";
private static final String queueName = "queue_test";
public static void main(String[] args) throws JMSException {
ConnectionFactory connectionFactory = new ActiveMQConnectionFactory(url);
Connection connection = connectionFactory.createConnection();
connection.start();
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
Destination destination = session.createQueue(queueName);
MessageConsumer consumer = session.createConsumer(destination);
consumer.setMessageListener(new MessageListener() {
@Override
public void onMessage(Message message) {
TextMessage textMessage = (TextMessage) message;
try {
System.out.println("收到了:" + textMessage.getText());
} catch (JMSException e) {
e.printStackTrace();
}
}
});
// session.close();
}
}