一、activemq安裝
官網地址:https://activemq.apache.org/
具體安裝過程不贅述,解壓即安裝,
二、使用
activemq有queue
和topic
兩種模式,
我們以queue模式為例,進行一次java編碼
生產者:
public class JmsProduce {
public static void main(String[] args) {
// 1 創建連接工場
ConnectionFactory connect = new ActiveMQConnectionFactory("tcp://192.168.2.128:61616");
try {
Connection connection = connect.createConnection();
connection.start();
Session session = connection.createSession(true, Session.SESSION_TRANSACTED);
Queue testQueue = session.createQueue("TEST1");
MessageProducer producer = session.createProducer(testQueue);
ActiveMQTextMessage textMessage = new ActiveMQTextMessage();
textMessage.setText("你好!");
producer.setDeliveryMode(DeliveryMode.PERSISTENT);
producer.send(textMessage);
System.out.println("activemq生產者發送消息");
session.commit();
connection.close();
} catch (JMSException e) {
e.printStackTrace();
}
}
}
消費者:
public class JmsConsume {
public static void main(String[] args) {
ConnectionFactory connect = new ActiveMQConnectionFactory(ActiveMQConnectionFactory.DEFAULT_USER, ActiveMQConnectionFactory.DEFAULT_PASSWORD, "tcp://192.168.2.128:61616");
try {
Connection connection = connect.createConnection();
connection.start();
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
Queue testqueue = session.createQueue("TEST1");
MessageConsumer consumer = session.createConsumer(testqueue);
consumer.setMessageListener(new MessageListener() {
@Override
public void onMessage(Message message) {
if (message instanceof TextMessage) {
try {
String text = ((TextMessage) message).getText();
System.out.println(text);
} catch (JMSException e) {
e.printStackTrace();
}
}
}
});
} catch (JMSException e) {
e.printStackTrace();
}
}
}
其他后續再補