不再废话,一切由代码说话
1.queue
producer:
ConnectionFactory connectionFactory = new ActiveMQConnectionFactory("tcp://192.168.151.128:61616");
Connection connection = null;
Session session = null;
try {
connection = connectionFactory.createConnection();
connection.start();
session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
Destination destination = session.createQueue("my-queue");
MessageProducer producer = session.createProducer(destination);
producer.setTimeToLive(60);
for(int i=0;i<3;i++){
MapMessage messgae = session.createMapMessage();
messgae.setString("message---"+i, "msg"+i);
messgae.setStringProperty("hellow", "world");
producer.send(messgae);
System.out.println(i);
}
session.commit();
} catch (JMSException e) {
e.printStackTrace();
}finally {
try {
if (connection != null) {
connection.close();
}
if (session != null) {
session.close();
}
} catch (JMSException e2) {
}
}
consumer:
ConnectionFactory connectionFactory = new ActiveMQConnectionFactory("tcp://192.168.151.128:61616");
Connection connection = null;
Session session = null;
try {
connection = connectionFactory.createConnection();
connection.start();
Enumeration<String> enumerations = connection.getMetaData().getJMSXPropertyNames();
while (enumerations.hasMoreElements()) {
System.out.println("name:" + enumerations.nextElement());
}
session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
Destination destination = session.createQueue("my-queue");
MessageConsumer consumer = session.createConsumer(destination);
for (int i = 0; i < 30; i++) {
MapMessage msg = (MapMessage) consumer.receive();// 接受一次消息
System.out.println("prototype:" + msg.getStringProperty("hellow"));
System.out.println("msg:" + msg.getString("message---" + i));
}
session.commit();
} catch (JMSException e) {
e.printStackTrace();
} finally {
try {
if (connection != null) {
connection.close();
}
if (session != null) {
session.close();
}
} catch (JMSException e2) {
}
}