1、安装
启动以后成功spring
2、建立实例测试ActiveMQapache
<dependency> <groupId>org.apache.activemq</groupId> <artifactId>activemq-all</artifactId> <version>5.9.0</version> </dependency> <dependency> <groupId>org.apache.xbean</groupId> <artifactId>xbean-spring</artifactId> <version>3.16</version> </dependency>
消息发送服务器
public class QueueSender { public static void main(String[] args) throws Exception{ //链接工厂 ConnectionFactory connectionFactory = new ActiveMQConnectionFactory("tcp://localhost:61616"); Connection connection = connectionFactory.createConnection(); connection.start(); //带事务的session Session session = connection.createSession(Boolean.TRUE,Session.AUTO_ACKNOWLEDGE); Destination destination = session.createQueue("my-queue"); MessageProducer producer = session.createProducer(destination); for (int i = 0; i < 3; i++) { TextMessage message = session.createTextMessage("message--"+i); Thread.sleep(1000); //经过消息生产者发出消息 producer.send(message); } session.commit(); session.close(); connection.close(); } }
运行main方法,控制台输出以下:session
那这个消息发送到哪里去了呢?tcp
消息接收ide
public class QueueReceive { public static void main(String[] args) throws Exception{ //链接工厂 ConnectionFactory connectionFactory = new ActiveMQConnectionFactory("tcp://localhost:61616"); Connection connection = connectionFactory.createConnection(); connection.start(); //带事务的session,而且自动签收 final Session session = connection.createSession(Boolean.TRUE,Session.AUTO_ACKNOWLEDGE); Destination destination = session.createQueue("my-queue"); MessageConsumer consumer = session.createConsumer(destination); int i = 0; while (i<3){ i++; TextMessage message = (TextMessage) consumer.receive(); session.commit(); System.out.println("收到的消息是:"+message.getText()); } session.close(); connection.close(); } }
运行main方法测试
此时再看服务器端会发送消息已经被接收处理了。code