ActiveMQ Queue示例
一、Queue 发送
public class JmsSend { public static void main(String[] args) throws JMSException { ConnectionFactory connectionFactory=new ActiveMQConnectionFactory("tcp://192.168.174.104:61616"); Connection connection = connectionFactory.createConnection(); connection.start(); Session session=connection.createSession(Boolean.TRUE, Session.AUTO_ACKNOWLEDGE); Destination queue=session.createQueue("my-queue2"); MessageProducer producer=session.createProducer(queue); for(int i=0 ; i<3 ; i++){ TextMessage message=session.createTextMessage("message"+i); //message.setStringProperty("queue", "queue"+i); //message.setJMSType("1"); producer.send(message); } session.commit(); session.close(); connection.close(); } }
二、Queue 接收
public class JmsReceiver { public static void main(String[] args) throws JMSException { ConnectionFactory connectionFactory=new ActiveMQConnectionFactory("tcp://192.168.174.104:61616"); Connection connection = connectionFactory.createConnection(); connection.start(); Session session=connection.createSession(Boolean.FALSE, Session.CLIENT_ACKNOWLEDGE); Destination queue=session.createQueue("my-queue2"); MessageConsumer consumer = session.createConsumer(queue); int i=0; while (i<3){ TextMessage message=(TextMessage) consumer.receive(); //System.out.println(message.getStringProperty("queue")); System.out.println(message.getText()); //session.commit(); if(i==2){ message.acknowledge(); } i++; } session.close(); connection.close(); } }